:doc:`AmplifyBackend <../../amplifybackend>` / Client / update_backend_storage

**********************
update_backend_storage
**********************



.. py:method:: AmplifyBackend.Client.update_backend_storage(**kwargs)

  

  Updates an existing backend storage resource.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendStorage>`_  


  **Request Syntax**
  ::

    response = client.update_backend_storage(
        AppId='string',
        BackendEnvironmentName='string',
        ResourceConfig={
            'Permissions': {
                'Authenticated': [
                    'READ'|'CREATE_AND_UPDATE'|'DELETE',
                ],
                'UnAuthenticated': [
                    'READ'|'CREATE_AND_UPDATE'|'DELETE',
                ]
            },
            'ServiceName': 'S3'
        },
        ResourceName='string'
    )
    
  :type AppId: string
  :param AppId: **[REQUIRED]** 

    The app ID.

    

  
  :type BackendEnvironmentName: string
  :param BackendEnvironmentName: **[REQUIRED]** 

    The name of the backend environment.

    

  
  :type ResourceConfig: dict
  :param ResourceConfig: **[REQUIRED]** 

    The resource configuration for updating backend storage.

    

  
    - **Permissions** *(dict) --* **[REQUIRED]** 

      The authorization configuration for the storage S3 bucket.

      

    
      - **Authenticated** *(list) --* **[REQUIRED]** 

        Lists all authenticated user read, write, and delete permissions for your S3 bucket.

        

      
        - *(string) --* 

        
    
      - **UnAuthenticated** *(list) --* 

        Lists all unauthenticated user read, write, and delete permissions for your S3 bucket.

        

      
        - *(string) --* 

        
    
    
    - **ServiceName** *(string) --* **[REQUIRED]** 

      The name of the storage service.

      

    
  
  :type ResourceName: string
  :param ResourceName: **[REQUIRED]** 

    The name of the storage resource.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'AppId': 'string',
          'BackendEnvironmentName': 'string',
          'JobId': 'string',
          'Status': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 

      200 response

      
      

      - **AppId** *(string) --* 

        The app ID.

        
      

      - **BackendEnvironmentName** *(string) --* 

        The name of the backend environment.

        
      

      - **JobId** *(string) --* 

        The ID for the job.

        
      

      - **Status** *(string) --* 

        The current status of the request.

        
  
  **Exceptions**
  
  *   :py:class:`AmplifyBackend.Client.exceptions.NotFoundException`

  
  *   :py:class:`AmplifyBackend.Client.exceptions.GatewayTimeoutException`

  
  *   :py:class:`AmplifyBackend.Client.exceptions.TooManyRequestsException`

  
  *   :py:class:`AmplifyBackend.Client.exceptions.BadRequestException`

  