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

********************
put_gateway_response
********************



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

  

  Creates a customization of a GatewayResponse of a specified response type and status code on the given RestApi.

  

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


  **Request Syntax**
  ::

    response = client.put_gateway_response(
        restApiId='string',
        responseType='DEFAULT_4XX'|'DEFAULT_5XX'|'RESOURCE_NOT_FOUND'|'UNAUTHORIZED'|'INVALID_API_KEY'|'ACCESS_DENIED'|'AUTHORIZER_FAILURE'|'AUTHORIZER_CONFIGURATION_ERROR'|'INVALID_SIGNATURE'|'EXPIRED_TOKEN'|'MISSING_AUTHENTICATION_TOKEN'|'INTEGRATION_FAILURE'|'INTEGRATION_TIMEOUT'|'API_CONFIGURATION_ERROR'|'UNSUPPORTED_MEDIA_TYPE'|'BAD_REQUEST_PARAMETERS'|'BAD_REQUEST_BODY'|'REQUEST_TOO_LARGE'|'THROTTLED'|'QUOTA_EXCEEDED'|'WAF_FILTERED',
        statusCode='string',
        responseParameters={
            'string': 'string'
        },
        responseTemplates={
            'string': 'string'
        }
    )
    
  :type restApiId: string
  :param restApiId: **[REQUIRED]** 

    The string identifier of the associated RestApi.

    

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

    The response type of the associated GatewayResponse

    

  
  :type statusCode: string
  :param statusCode: 

    The HTTP status code of the GatewayResponse.

    

  
  :type responseParameters: dict
  :param responseParameters: 

    Response parameters (paths, query strings and headers) of the GatewayResponse as a string-to-string map of key-value pairs.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


  :type responseTemplates: dict
  :param responseTemplates: 

    Response templates of the GatewayResponse as a string-to-string map of key-value pairs.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    
    ::

      {
          'responseType': 'DEFAULT_4XX'|'DEFAULT_5XX'|'RESOURCE_NOT_FOUND'|'UNAUTHORIZED'|'INVALID_API_KEY'|'ACCESS_DENIED'|'AUTHORIZER_FAILURE'|'AUTHORIZER_CONFIGURATION_ERROR'|'INVALID_SIGNATURE'|'EXPIRED_TOKEN'|'MISSING_AUTHENTICATION_TOKEN'|'INTEGRATION_FAILURE'|'INTEGRATION_TIMEOUT'|'API_CONFIGURATION_ERROR'|'UNSUPPORTED_MEDIA_TYPE'|'BAD_REQUEST_PARAMETERS'|'BAD_REQUEST_BODY'|'REQUEST_TOO_LARGE'|'THROTTLED'|'QUOTA_EXCEEDED'|'WAF_FILTERED',
          'statusCode': 'string',
          'responseParameters': {
              'string': 'string'
          },
          'responseTemplates': {
              'string': 'string'
          },
          'defaultResponse': True|False
      }
      
    **Response Structure**

    

    - *(dict) --* 

      A gateway response of a given response type and status code, with optional response parameters and mapping templates.

      
      

      - **responseType** *(string) --* 

        The response type of the associated GatewayResponse.

        
      

      - **statusCode** *(string) --* 

        The HTTP status code for this GatewayResponse.

        
      

      - **responseParameters** *(dict) --* 

        Response parameters (paths, query strings and headers) of the GatewayResponse as a string-to-string map of key-value pairs.

        
        

        - *(string) --* 
          

          - *(string) --* 
    
  
      

      - **responseTemplates** *(dict) --* 

        Response templates of the GatewayResponse as a string-to-string map of key-value pairs.

        
        

        - *(string) --* 
          

          - *(string) --* 
    
  
      

      - **defaultResponse** *(boolean) --* 

        A Boolean flag to indicate whether this GatewayResponse is the default gateway response ( ``true``) or not ( ``false``). A default gateway response is one generated by API Gateway without any customization by an API developer.

        
  
  **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`

  