:doc:`APIGateway <../../apigateway>` / Client / update_deployment

*****************
update_deployment
*****************



.. py:method:: APIGateway.Client.update_deployment(**kwargs)

  

  Changes information about a Deployment resource.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/apigateway-2015-07-09/UpdateDeployment>`_  


  **Request Syntax**
  ::

    response = client.update_deployment(
        restApiId='string',
        deploymentId='string',
        patchOperations=[
            {
                'op': 'add'|'remove'|'replace'|'move'|'copy'|'test',
                'path': 'string',
                'value': 'string',
                'from': 'string'
            },
        ]
    )
    
  :type restApiId: string
  :param restApiId: **[REQUIRED]** 

    The string identifier of the associated RestApi.

    

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

    The replacement identifier for the Deployment resource to change information about.

    

  
  :type patchOperations: list
  :param patchOperations: 

    For more information about supported patch operations, see `Patch Operations <https://docs.aws.amazon.com/apigateway/latest/api/patch-operations.html>`__.

    

  
    - *(dict) --* 

      For more information about supported patch operations, see `Patch Operations <https://docs.aws.amazon.com/apigateway/latest/api/patch-operations.html>`__.

      

    
      - **op** *(string) --* 

        An update operation to be performed with this PATCH request. The valid value can be add, remove, replace or copy. Not all valid operations are supported for a given resource. Support of the operations depends on specific operational contexts. Attempts to apply an unsupported operation on a resource will return an error message..

        

      
      - **path** *(string) --* 

        The op operation's target, as identified by a JSON Pointer value that references a location within the targeted resource. For example, if the target resource has an updateable property of {"name":"value"}, the path for this property is /name. If the name property value is a JSON object (e.g., {"name": {"child/name": "child-value"}}), the path for the child/name property will be /name/child~1name. Any slash ("/") character appearing in path names must be escaped with "~1", as shown in the example above. Each op operation can have only one path associated with it.

        

      
      - **value** *(string) --* 

        The new target value of the update operation. It is applicable for the add or replace operation. When using AWS CLI to update a property of a JSON value, enclose the JSON object with a pair of single quotes in a Linux shell, e.g., '{"a": ...}'.

        

      
      - **from** *(string) --* 

        The copy update operation's source as identified by a JSON-Pointer value referencing the location within the targeted resource to copy the value from. For example, to promote a canary deployment, you copy the canary deployment ID to the affiliated deployment ID by calling a PATCH request on a Stage resource with "op":"copy", "from":"/canarySettings/deploymentId" and "path":"/deploymentId".

        

      
    

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

    
    ::

      {
          'id': 'string',
          'description': 'string',
          'createdDate': datetime(2015, 1, 1),
          'apiSummary': {
              'string': {
                  'string': {
                      'authorizationType': 'string',
                      'apiKeyRequired': True|False
                  }
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 

      An immutable representation of a RestApi resource that can be called by users using Stages. A deployment must be associated with a Stage for it to be callable over the Internet.

      
      

      - **id** *(string) --* 

        The identifier for the deployment resource.

        
      

      - **description** *(string) --* 

        The description for the deployment resource.

        
      

      - **createdDate** *(datetime) --* 

        The date and time that the deployment resource was created.

        
      

      - **apiSummary** *(dict) --* 

        A summary of the RestApi at the date and time that the deployment resource was created.

        
        

        - *(string) --* 
          

          - *(dict) --* 
            

            - *(string) --* 
              

              - *(dict) --* 

                Represents a summary of a Method resource, given a particular date and time.

                
                

                - **authorizationType** *(string) --* 

                  The method's authorization type. Valid values are ``NONE`` for open access, ``AWS_IAM`` for using AWS IAM permissions, ``CUSTOM`` for using a custom authorizer, or ``COGNITO_USER_POOLS`` for using a Cognito user pool.

                  
                

                - **apiKeyRequired** *(boolean) --* 

                  Specifies whether the method requires a valid ApiKey.

                  
            
        
      
    
  
  
  **Exceptions**
  
  *   :py:class:`APIGateway.Client.exceptions.BadRequestException`

  
  *   :py:class:`APIGateway.Client.exceptions.ConflictException`

  
  *   :py:class:`APIGateway.Client.exceptions.LimitExceededException`

  
  *   :py:class:`APIGateway.Client.exceptions.NotFoundException`

  
  *   :py:class:`APIGateway.Client.exceptions.UnauthorizedException`

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

  
  *   :py:class:`APIGateway.Client.exceptions.ServiceUnavailableException`

  