2017/07/13 - Amazon API Gateway - 5 new api methods
Changes Update apigateway client to latest version
Creates a customization of a GatewayResponse of a specified response type and status code on the given RestApi.
See also: AWS API Documentation
Request Syntax
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', statusCode='string', responseParameters={ 'string': 'string' }, responseTemplates={ 'string': 'string' } )
string
[REQUIRED]
The string identifier of the associated RestApi.
string
[REQUIRED]
The response type of the associated GatewayResponse. Valid values are
ACCESS_DENIED
API_CONFIGURATION_ERROR
AUTHORIZER_FAILURE
AUTHORIZER_CONFIGURATION_ERROR
BAD_REQUEST_PARAMETERS
BAD_REQUEST_BODY
DEFAULT_4XX
DEFAULT_5XX
EXPIRED_TOKEN
INVALID_SIGNATURE
INTEGRATION_FAILURE
INTEGRATION_TIMEOUT
INVALID_API_KEY
MISSING_AUTHENTICATION_TOKEN
QUOTA_EXCEEDED
REQUEST_TOO_LARGE
RESOURCE_NOT_FOUND
THROTTLED
UNAUTHORIZED
UNSUPPORTED_MEDIA_TYPES
string
The HTTP status code of the GatewayResponse.
dict
Response parameters (paths, query strings and headers) of the GatewayResponse as a string-to-string map of key-value pairs.
(string) --
(string) --
dict
Response templates of the GatewayResponse as a string-to-string map of key-value pairs.
(string) --
(string) --
dict
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', '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.
For more information about valid gateway response types, see Gateway Response Types Supported by Amazon API Gateway Example: Get a Gateway Response of a given response type Request
This example shows how to get a gateway response of the MISSING_AUTHNETICATION_TOKEN type.
``GET /restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN HTTP/1.1 Host: beta-apigateway.us-east-1.amazonaws.com Content-Type: application/json X-Amz-Date: 20170503T202516Z Authorization: AWS4-HMAC-SHA256 Credential={access-key-id}/20170503/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=1b52460e3159c1a26cff29093855d50ea141c1c5b937528fecaf60f51129697a Cache-Control: no-cache Postman-Token: 3b2a1ce9-c848-2e26-2e2f-9c2caefbed45 ``
The response type is specified as a URL path.
Response
The successful operation returns the 200 OK status code and a payload similar to the following:
{ "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-gatewayresponse-{rel}.html", "name": "gatewayresponse", "templated": true }, "self": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:delete": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" } }, "defaultResponse": false, "responseParameters": { "gatewayresponse.header.x-request-path": "method.request.path.petId", "gatewayresponse.header.Access-Control-Allow-Origin": "'a.b.c'", "gatewayresponse.header.x-request-query": "method.request.querystring.q", "gatewayresponse.header.x-request-header": "method.request.header.Accept" }, "responseTemplates": { "application/json": "{\n \"message\": $context.error.messageString,\n \"type\": \"$context.error.responseType\",\n \"stage\": \"$context.stage\",\n \"resourcePath\": \"$context.resourcePath\",\n \"stageVariables.a\": \"$stageVariables.a\",\n \"statusCode\": \"'404'\"\n}" }, "responseType": "MISSING_AUTHENTICATION_TOKEN", "statusCode": "404" }
responseType (string) --
The response type of the associated GatewayResponse. Valid values are
ACCESS_DENIED
API_CONFIGURATION_ERROR
AUTHORIZER_FAILURE
AUTHORIZER_CONFIGURATION_ERROR
BAD_REQUEST_PARAMETERS
BAD_REQUEST_BODY
DEFAULT_4XX
DEFAULT_5XX
EXPIRED_TOKEN
INVALID_SIGNATURE
INTEGRATION_FAILURE
INTEGRATION_TIMEOUT
INVALID_API_KEY
MISSING_AUTHENTICATION_TOKEN
QUOTA_EXCEEDED
REQUEST_TOO_LARGE
RESOURCE_NOT_FOUND
THROTTLED
UNAUTHORIZED
UNSUPPORTED_MEDIA_TYPES
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 Amazon API Gateway without any customization by an API developer.
Updates a GatewayResponse of a specified response type on the given RestApi.
See also: AWS API Documentation
Request Syntax
client.update_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', patchOperations=[ { 'op': 'add'|'remove'|'replace'|'move'|'copy'|'test', 'path': 'string', 'value': 'string', 'from': 'string' }, ] )
string
[REQUIRED]
The string identifier of the associated RestApi.
string
[REQUIRED]
The response type of the associated GatewayResponse. Valid values are
ACCESS_DENIED
API_CONFIGURATION_ERROR
AUTHORIZER_FAILURE
AUTHORIZER_CONFIGURATION_ERROR
BAD_REQUEST_PARAMETERS
BAD_REQUEST_BODY
DEFAULT_4XX
DEFAULT_5XX
EXPIRED_TOKEN
INVALID_SIGNATURE
INTEGRATION_FAILURE
INTEGRATION_TIMEOUT
INVALID_API_KEY
MISSING_AUTHENTICATION_TOKEN
QUOTA_EXCEEDED
REQUEST_TOO_LARGE
RESOURCE_NOT_FOUND
THROTTLED
UNAUTHORIZED
UNSUPPORTED_MEDIA_TYPES
list
A list of update operations to be applied to the specified resource and in the order specified in this list.
(dict) -- A single patch operation to apply to the specified resource. Please refer to http://tools.ietf.org/html/rfc6902#section-4 for an explanation of how each operation is used.
op (string) --
An update operation to be performed with this PATCH request. The valid value can be "add", "remove", or "replace". 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. 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": ...}'. In a Windows shell, see Using JSON for Parameters.
from (string) --
Not supported.
dict
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', '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.
For more information about valid gateway response types, see Gateway Response Types Supported by Amazon API Gateway Example: Get a Gateway Response of a given response type Request
This example shows how to get a gateway response of the MISSING_AUTHNETICATION_TOKEN type.
``GET /restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN HTTP/1.1 Host: beta-apigateway.us-east-1.amazonaws.com Content-Type: application/json X-Amz-Date: 20170503T202516Z Authorization: AWS4-HMAC-SHA256 Credential={access-key-id}/20170503/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=1b52460e3159c1a26cff29093855d50ea141c1c5b937528fecaf60f51129697a Cache-Control: no-cache Postman-Token: 3b2a1ce9-c848-2e26-2e2f-9c2caefbed45 ``
The response type is specified as a URL path.
Response
The successful operation returns the 200 OK status code and a payload similar to the following:
{ "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-gatewayresponse-{rel}.html", "name": "gatewayresponse", "templated": true }, "self": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:delete": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" } }, "defaultResponse": false, "responseParameters": { "gatewayresponse.header.x-request-path": "method.request.path.petId", "gatewayresponse.header.Access-Control-Allow-Origin": "'a.b.c'", "gatewayresponse.header.x-request-query": "method.request.querystring.q", "gatewayresponse.header.x-request-header": "method.request.header.Accept" }, "responseTemplates": { "application/json": "{\n \"message\": $context.error.messageString,\n \"type\": \"$context.error.responseType\",\n \"stage\": \"$context.stage\",\n \"resourcePath\": \"$context.resourcePath\",\n \"stageVariables.a\": \"$stageVariables.a\",\n \"statusCode\": \"'404'\"\n}" }, "responseType": "MISSING_AUTHENTICATION_TOKEN", "statusCode": "404" }
responseType (string) --
The response type of the associated GatewayResponse. Valid values are
ACCESS_DENIED
API_CONFIGURATION_ERROR
AUTHORIZER_FAILURE
AUTHORIZER_CONFIGURATION_ERROR
BAD_REQUEST_PARAMETERS
BAD_REQUEST_BODY
DEFAULT_4XX
DEFAULT_5XX
EXPIRED_TOKEN
INVALID_SIGNATURE
INTEGRATION_FAILURE
INTEGRATION_TIMEOUT
INVALID_API_KEY
MISSING_AUTHENTICATION_TOKEN
QUOTA_EXCEEDED
REQUEST_TOO_LARGE
RESOURCE_NOT_FOUND
THROTTLED
UNAUTHORIZED
UNSUPPORTED_MEDIA_TYPES
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 Amazon API Gateway without any customization by an API developer.
Gets a GatewayResponse of a specified response type on the given RestApi.
See also: AWS API Documentation
Request Syntax
client.get_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' )
string
[REQUIRED]
The string identifier of the associated RestApi.
string
[REQUIRED]
The response type of the associated GatewayResponse. Valid values are
ACCESS_DENIED
API_CONFIGURATION_ERROR
AUTHORIZER_FAILURE
AUTHORIZER_CONFIGURATION_ERROR
BAD_REQUEST_PARAMETERS
BAD_REQUEST_BODY
DEFAULT_4XX
DEFAULT_5XX
EXPIRED_TOKEN
INVALID_SIGNATURE
INTEGRATION_FAILURE
INTEGRATION_TIMEOUT
INVALID_API_KEY
MISSING_AUTHENTICATION_TOKEN
QUOTA_EXCEEDED
REQUEST_TOO_LARGE
RESOURCE_NOT_FOUND
THROTTLED
UNAUTHORIZED
UNSUPPORTED_MEDIA_TYPES
dict
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', '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.
For more information about valid gateway response types, see Gateway Response Types Supported by Amazon API Gateway Example: Get a Gateway Response of a given response type Request
This example shows how to get a gateway response of the MISSING_AUTHNETICATION_TOKEN type.
``GET /restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN HTTP/1.1 Host: beta-apigateway.us-east-1.amazonaws.com Content-Type: application/json X-Amz-Date: 20170503T202516Z Authorization: AWS4-HMAC-SHA256 Credential={access-key-id}/20170503/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=1b52460e3159c1a26cff29093855d50ea141c1c5b937528fecaf60f51129697a Cache-Control: no-cache Postman-Token: 3b2a1ce9-c848-2e26-2e2f-9c2caefbed45 ``
The response type is specified as a URL path.
Response
The successful operation returns the 200 OK status code and a payload similar to the following:
{ "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-gatewayresponse-{rel}.html", "name": "gatewayresponse", "templated": true }, "self": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:delete": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" } }, "defaultResponse": false, "responseParameters": { "gatewayresponse.header.x-request-path": "method.request.path.petId", "gatewayresponse.header.Access-Control-Allow-Origin": "'a.b.c'", "gatewayresponse.header.x-request-query": "method.request.querystring.q", "gatewayresponse.header.x-request-header": "method.request.header.Accept" }, "responseTemplates": { "application/json": "{\n \"message\": $context.error.messageString,\n \"type\": \"$context.error.responseType\",\n \"stage\": \"$context.stage\",\n \"resourcePath\": \"$context.resourcePath\",\n \"stageVariables.a\": \"$stageVariables.a\",\n \"statusCode\": \"'404'\"\n}" }, "responseType": "MISSING_AUTHENTICATION_TOKEN", "statusCode": "404" }
responseType (string) --
The response type of the associated GatewayResponse. Valid values are
ACCESS_DENIED
API_CONFIGURATION_ERROR
AUTHORIZER_FAILURE
AUTHORIZER_CONFIGURATION_ERROR
BAD_REQUEST_PARAMETERS
BAD_REQUEST_BODY
DEFAULT_4XX
DEFAULT_5XX
EXPIRED_TOKEN
INVALID_SIGNATURE
INTEGRATION_FAILURE
INTEGRATION_TIMEOUT
INVALID_API_KEY
MISSING_AUTHENTICATION_TOKEN
QUOTA_EXCEEDED
REQUEST_TOO_LARGE
RESOURCE_NOT_FOUND
THROTTLED
UNAUTHORIZED
UNSUPPORTED_MEDIA_TYPES
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 Amazon API Gateway without any customization by an API developer.
Clears any customization of a GatewayResponse of a specified response type on the given RestApi and resets it with the default settings.
See also: AWS API Documentation
Request Syntax
client.delete_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' )
string
[REQUIRED]
The string identifier of the associated RestApi.
string
[REQUIRED]
The response type of the associated GatewayResponse. Valid values are
ACCESS_DENIED
API_CONFIGURATION_ERROR
AUTHORIZER_FAILURE
AUTHORIZER_CONFIGURATION_ERROR
BAD_REQUEST_PARAMETERS
BAD_REQUEST_BODY
DEFAULT_4XX
DEFAULT_5XX
EXPIRED_TOKEN
INVALID_SIGNATURE
INTEGRATION_FAILURE
INTEGRATION_TIMEOUT
INVALID_API_KEY
MISSING_AUTHENTICATION_TOKEN
QUOTA_EXCEEDED
REQUEST_TOO_LARGE
RESOURCE_NOT_FOUND
THROTTLED
UNAUTHORIZED
UNSUPPORTED_MEDIA_TYPES
None