Amazon API Gateway

2015/11/10 - Amazon API Gateway - 6 updated api methods

CreateDeployment (updated) Link ¶
Changes (request)
{'variables': {'string': 'string'}}

Creates a Deployment resource, which makes a specified RestApi callable over the internet.

Request Syntax

client.create_deployment(
    restApiId='string',
    stageName='string',
    stageDescription='string',
    description='string',
    cacheClusterEnabled=True|False,
    cacheClusterSize='0.5'|'1.6'|'6.1'|'13.5'|'28.4'|'58.2'|'118'|'237',
    variables={
        'string': 'string'
    }
)
type restApiId:

string

param restApiId:

[REQUIRED]

The RestApi resource identifier for the Deployment resource to create.

type stageName:

string

param stageName:

[REQUIRED]

The name of the Stage resource for the Deployment resource to create.

type stageDescription:

string

param stageDescription:

The description of the Stage resource for the Deployment resource to create.

type description:

string

param description:

The description for the Deployment resource to create.

type cacheClusterEnabled:

boolean

param cacheClusterEnabled:

Enables a cache cluster for the Stage resource specified in the input.

type cacheClusterSize:

string

param cacheClusterSize:

Specifies the cache cluster size for the Stage resource specified in the input, if a cache cluster is enabled.

type variables:

dict

param variables:

A map that defines the stage variables for the Stage resource that is associated with the new deployment. Variable names can have alphabetic characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+

  • (string) --

    • (string) --

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) --

      Gets 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) --

                Specifies the type of authorization used for the method.

              • apiKeyRequired (boolean) --

                Specifies whether the method requires a valid ApiKey.

CreateStage (updated) Link ¶
Changes (both)
{'variables': {'string': 'string'}}

Creates a Stage resource.

Request Syntax

client.create_stage(
    restApiId='string',
    stageName='string',
    deploymentId='string',
    description='string',
    cacheClusterEnabled=True|False,
    cacheClusterSize='0.5'|'1.6'|'6.1'|'13.5'|'28.4'|'58.2'|'118'|'237',
    variables={
        'string': 'string'
    }
)
type restApiId:

string

param restApiId:

[REQUIRED]

The identifier of the RestApi resource for the Stage resource to create.

type stageName:

string

param stageName:

[REQUIRED]

The name for the Stage resource.

type deploymentId:

string

param deploymentId:

[REQUIRED]

The identifier of the Deployment resource for the Stage resource.

type description:

string

param description:

The description of the Stage resource.

type cacheClusterEnabled:

boolean

param cacheClusterEnabled:

Whether cache clustering is enabled for the stage.

type cacheClusterSize:

string

param cacheClusterSize:

The stage's cache cluster size.

type variables:

dict

param variables:

A map that defines the stage variables for the new Stage resource. Variable names can have alphabetic characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'deploymentId': 'string',
    'clientCertificateId': 'string',
    'stageName': 'string',
    'description': 'string',
    'cacheClusterEnabled': True|False,
    'cacheClusterSize': '0.5'|'1.6'|'6.1'|'13.5'|'28.4'|'58.2'|'118'|'237',
    'cacheClusterStatus': 'CREATE_IN_PROGRESS'|'AVAILABLE'|'DELETE_IN_PROGRESS'|'NOT_AVAILABLE'|'FLUSH_IN_PROGRESS',
    'methodSettings': {
        'string': {
            'metricsEnabled': True|False,
            'loggingLevel': 'string',
            'dataTraceEnabled': True|False,
            'throttlingBurstLimit': 123,
            'throttlingRateLimit': 123.0,
            'cachingEnabled': True|False,
            'cacheTtlInSeconds': 123,
            'cacheDataEncrypted': True|False
        }
    },
    'variables': {
        'string': 'string'
    },
    'createdDate': datetime(2015, 1, 1),
    'lastUpdatedDate': datetime(2015, 1, 1)
}

Response Structure

  • (dict) --

    Represents a unique identifier for a version of a deployed RestApi that is callable by users.

    • deploymentId (string) --

      The identifier of the Deployment that the stage points to.

    • clientCertificateId (string) --

    • stageName (string) --

      The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to Amazon API Gateway.

    • description (string) --

      The stage's description.

    • cacheClusterEnabled (boolean) --

      Specifies whether a cache cluster is enabled for the stage.

    • cacheClusterSize (string) --

      The size of the cache cluster for the stage, if enabled.

    • cacheClusterStatus (string) --

      The status of the cache cluster for the stage, if enabled.

    • methodSettings (dict) --

      A map that defines the method settings for a Stage resource. Keys are defined as {resource_path}/{http_method} for an individual method override, or \*/\* for the settings applied to all methods in the stage.

      • (string) --

        • (dict) --

          Specifies the method setting properties.

          • metricsEnabled (boolean) --

            Specifies whether Amazon CloudWatch metrics are enabled for this method. The PATCH path for this setting is /{method_setting_key}/metrics/enabled, and the value is a Boolean.

          • loggingLevel (string) --

            Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/loglevel, and the available levels are OFF, ERROR, and INFO.

          • dataTraceEnabled (boolean) --

            Specifies the whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/dataTrace, and the value is a Boolean.

          • throttlingBurstLimit (integer) --

            Specifies the throttling burst limit. The PATCH path for this setting is /{method_setting_key}/throttling/burstLimit, and the value is an integer.

          • throttlingRateLimit (float) --

            Specifies the throttling rate limit. The PATCH path for this setting is /{method_setting_key}/throttling/rateLimit, and the value is a double.

          • cachingEnabled (boolean) --

            Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. The PATCH path for this setting is /{method_setting_key}/caching/enabled, and the value is a Boolean.

          • cacheTtlInSeconds (integer) --

            Specifies the time to live (TTL) in seconds, for cached responses. The higher a the TTL, the longer the response will be cached. The PATCH path for this setting is /{method_setting_key}/caching/ttlInSeconds, and the value is an integer.

          • cacheDataEncrypted (boolean) --

            Specifies whether the cached responses are encrypted. The PATCH path for this setting is /{method_setting_key}/caching/dataEncrypted, and the value is a Boolean.

    • variables (dict) --

      A map that defines the stage variables for a Stage resource. Variable names can have alphabetic characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+

      • (string) --

        • (string) --

    • createdDate (datetime) --

      The date and time that the stage was created, in ISO 8601 format.

    • lastUpdatedDate (datetime) --

      The date and time that information about the stage was last updated, in ISO 8601 format.

GetStage (updated) Link ¶
Changes (response)
{'variables': {'string': 'string'}}

Gets information about a Stage resource.

Request Syntax

client.get_stage(
    restApiId='string',
    stageName='string'
)
type restApiId:

string

param restApiId:

[REQUIRED]

The identifier of the RestApi resource for the Stage resource to get information about.

type stageName:

string

param stageName:

[REQUIRED]

The name of the Stage resource to get information about.

rtype:

dict

returns:

Response Syntax

{
    'deploymentId': 'string',
    'clientCertificateId': 'string',
    'stageName': 'string',
    'description': 'string',
    'cacheClusterEnabled': True|False,
    'cacheClusterSize': '0.5'|'1.6'|'6.1'|'13.5'|'28.4'|'58.2'|'118'|'237',
    'cacheClusterStatus': 'CREATE_IN_PROGRESS'|'AVAILABLE'|'DELETE_IN_PROGRESS'|'NOT_AVAILABLE'|'FLUSH_IN_PROGRESS',
    'methodSettings': {
        'string': {
            'metricsEnabled': True|False,
            'loggingLevel': 'string',
            'dataTraceEnabled': True|False,
            'throttlingBurstLimit': 123,
            'throttlingRateLimit': 123.0,
            'cachingEnabled': True|False,
            'cacheTtlInSeconds': 123,
            'cacheDataEncrypted': True|False
        }
    },
    'variables': {
        'string': 'string'
    },
    'createdDate': datetime(2015, 1, 1),
    'lastUpdatedDate': datetime(2015, 1, 1)
}

Response Structure

  • (dict) --

    Represents a unique identifier for a version of a deployed RestApi that is callable by users.

    • deploymentId (string) --

      The identifier of the Deployment that the stage points to.

    • clientCertificateId (string) --

    • stageName (string) --

      The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to Amazon API Gateway.

    • description (string) --

      The stage's description.

    • cacheClusterEnabled (boolean) --

      Specifies whether a cache cluster is enabled for the stage.

    • cacheClusterSize (string) --

      The size of the cache cluster for the stage, if enabled.

    • cacheClusterStatus (string) --

      The status of the cache cluster for the stage, if enabled.

    • methodSettings (dict) --

      A map that defines the method settings for a Stage resource. Keys are defined as {resource_path}/{http_method} for an individual method override, or \*/\* for the settings applied to all methods in the stage.

      • (string) --

        • (dict) --

          Specifies the method setting properties.

          • metricsEnabled (boolean) --

            Specifies whether Amazon CloudWatch metrics are enabled for this method. The PATCH path for this setting is /{method_setting_key}/metrics/enabled, and the value is a Boolean.

          • loggingLevel (string) --

            Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/loglevel, and the available levels are OFF, ERROR, and INFO.

          • dataTraceEnabled (boolean) --

            Specifies the whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/dataTrace, and the value is a Boolean.

          • throttlingBurstLimit (integer) --

            Specifies the throttling burst limit. The PATCH path for this setting is /{method_setting_key}/throttling/burstLimit, and the value is an integer.

          • throttlingRateLimit (float) --

            Specifies the throttling rate limit. The PATCH path for this setting is /{method_setting_key}/throttling/rateLimit, and the value is a double.

          • cachingEnabled (boolean) --

            Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. The PATCH path for this setting is /{method_setting_key}/caching/enabled, and the value is a Boolean.

          • cacheTtlInSeconds (integer) --

            Specifies the time to live (TTL) in seconds, for cached responses. The higher a the TTL, the longer the response will be cached. The PATCH path for this setting is /{method_setting_key}/caching/ttlInSeconds, and the value is an integer.

          • cacheDataEncrypted (boolean) --

            Specifies whether the cached responses are encrypted. The PATCH path for this setting is /{method_setting_key}/caching/dataEncrypted, and the value is a Boolean.

    • variables (dict) --

      A map that defines the stage variables for a Stage resource. Variable names can have alphabetic characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+

      • (string) --

        • (string) --

    • createdDate (datetime) --

      The date and time that the stage was created, in ISO 8601 format.

    • lastUpdatedDate (datetime) --

      The date and time that information about the stage was last updated, in ISO 8601 format.

GetStages (updated) Link ¶
Changes (response)
{'item': {'variables': {'string': 'string'}}}

Gets information about one or more Stage resources.

Request Syntax

client.get_stages(
    restApiId='string',
    deploymentId='string'
)
type restApiId:

string

param restApiId:

[REQUIRED]

The stages' API identifiers.

type deploymentId:

string

param deploymentId:

The stages' deployment identifiers.

rtype:

dict

returns:

Response Syntax

{
    'item': [
        {
            'deploymentId': 'string',
            'clientCertificateId': 'string',
            'stageName': 'string',
            'description': 'string',
            'cacheClusterEnabled': True|False,
            'cacheClusterSize': '0.5'|'1.6'|'6.1'|'13.5'|'28.4'|'58.2'|'118'|'237',
            'cacheClusterStatus': 'CREATE_IN_PROGRESS'|'AVAILABLE'|'DELETE_IN_PROGRESS'|'NOT_AVAILABLE'|'FLUSH_IN_PROGRESS',
            'methodSettings': {
                'string': {
                    'metricsEnabled': True|False,
                    'loggingLevel': 'string',
                    'dataTraceEnabled': True|False,
                    'throttlingBurstLimit': 123,
                    'throttlingRateLimit': 123.0,
                    'cachingEnabled': True|False,
                    'cacheTtlInSeconds': 123,
                    'cacheDataEncrypted': True|False
                }
            },
            'variables': {
                'string': 'string'
            },
            'createdDate': datetime(2015, 1, 1),
            'lastUpdatedDate': datetime(2015, 1, 1)
        },
    ]
}

Response Structure

  • (dict) --

    A list of Stage resource that are associated with the ApiKey resource.

    • item (list) --

      An individual Stage resource.

      • (dict) --

        Represents a unique identifier for a version of a deployed RestApi that is callable by users.

        • deploymentId (string) --

          The identifier of the Deployment that the stage points to.

        • clientCertificateId (string) --

        • stageName (string) --

          The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to Amazon API Gateway.

        • description (string) --

          The stage's description.

        • cacheClusterEnabled (boolean) --

          Specifies whether a cache cluster is enabled for the stage.

        • cacheClusterSize (string) --

          The size of the cache cluster for the stage, if enabled.

        • cacheClusterStatus (string) --

          The status of the cache cluster for the stage, if enabled.

        • methodSettings (dict) --

          A map that defines the method settings for a Stage resource. Keys are defined as {resource_path}/{http_method} for an individual method override, or \*/\* for the settings applied to all methods in the stage.

          • (string) --

            • (dict) --

              Specifies the method setting properties.

              • metricsEnabled (boolean) --

                Specifies whether Amazon CloudWatch metrics are enabled for this method. The PATCH path for this setting is /{method_setting_key}/metrics/enabled, and the value is a Boolean.

              • loggingLevel (string) --

                Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/loglevel, and the available levels are OFF, ERROR, and INFO.

              • dataTraceEnabled (boolean) --

                Specifies the whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/dataTrace, and the value is a Boolean.

              • throttlingBurstLimit (integer) --

                Specifies the throttling burst limit. The PATCH path for this setting is /{method_setting_key}/throttling/burstLimit, and the value is an integer.

              • throttlingRateLimit (float) --

                Specifies the throttling rate limit. The PATCH path for this setting is /{method_setting_key}/throttling/rateLimit, and the value is a double.

              • cachingEnabled (boolean) --

                Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. The PATCH path for this setting is /{method_setting_key}/caching/enabled, and the value is a Boolean.

              • cacheTtlInSeconds (integer) --

                Specifies the time to live (TTL) in seconds, for cached responses. The higher a the TTL, the longer the response will be cached. The PATCH path for this setting is /{method_setting_key}/caching/ttlInSeconds, and the value is an integer.

              • cacheDataEncrypted (boolean) --

                Specifies whether the cached responses are encrypted. The PATCH path for this setting is /{method_setting_key}/caching/dataEncrypted, and the value is a Boolean.

        • variables (dict) --

          A map that defines the stage variables for a Stage resource. Variable names can have alphabetic characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+

          • (string) --

            • (string) --

        • createdDate (datetime) --

          The date and time that the stage was created, in ISO 8601 format.

        • lastUpdatedDate (datetime) --

          The date and time that information about the stage was last updated, in ISO 8601 format.

TestInvokeMethod (updated) Link ¶
Changes (request)
{'stageVariables': {'string': 'string'}}

Request Syntax

client.test_invoke_method(
    restApiId='string',
    resourceId='string',
    httpMethod='string',
    pathWithQueryString='string',
    body='string',
    headers={
        'string': 'string'
    },
    clientCertificateId='string',
    stageVariables={
        'string': 'string'
    }
)
type restApiId:

string

param restApiId:

[REQUIRED]

type resourceId:

string

param resourceId:

[REQUIRED]

type httpMethod:

string

param httpMethod:

[REQUIRED]

type pathWithQueryString:

string

param pathWithQueryString:

type body:

string

param body:

type headers:

dict

param headers:
  • (string) --

    • (string) --

type clientCertificateId:

string

param clientCertificateId:

type stageVariables:

dict

param stageVariables:
  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'status': 123,
    'body': 'string',
    'headers': {
        'string': 'string'
    },
    'log': 'string',
    'latency': 123
}

Response Structure

  • (dict) --

    Represents the response of the test invoke request in HTTP method.

    • status (integer) --

      The HTTP status code.

    • body (string) --

      The body of HTTP response.

    • headers (dict) --

      The headers of HTTP response.

      • (string) --

        • (string) --

    • log (string) --

      The Amazon API Gateway execution log for the test invoke request.

    • latency (integer) --

      The execution latency of the test invoke request.

UpdateStage (updated) Link ¶
Changes (response)
{'variables': {'string': 'string'}}

Changes information about a Stage resource.

Request Syntax

client.update_stage(
    restApiId='string',
    stageName='string',
    patchOperations=[
        {
            'op': 'add'|'remove'|'replace'|'move'|'copy'|'test',
            'path': 'string',
            'value': 'string',
            'from': 'string'
        },
    ]
)
type restApiId:

string

param restApiId:

[REQUIRED]

The identifier of the RestApi resource for the Stage resource to change information about.

type stageName:

string

param stageName:

[REQUIRED]

The name of the Stage resource to change information about.

type patchOperations:

list

param patchOperations:

A list of operations describing the updates to apply to the specified resource. The patches are applied in the order specified in the 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) --

      A patch operation whose value indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or "test"; other values are errors.

    • path (string) --

      Operation objects MUST have exactly one "path" member. That member's value is a string containing a JSON-Pointer value that references a location within the target document (the "target location") where the operation is performed.

    • value (string) --

      The actual value content.

    • from (string) --

      The "move" and "copy" operation object MUST contain a "from" member, which is a string containing a JSON Pointer value that references the location in the target document to move the value from.

rtype:

dict

returns:

Response Syntax

{
    'deploymentId': 'string',
    'clientCertificateId': 'string',
    'stageName': 'string',
    'description': 'string',
    'cacheClusterEnabled': True|False,
    'cacheClusterSize': '0.5'|'1.6'|'6.1'|'13.5'|'28.4'|'58.2'|'118'|'237',
    'cacheClusterStatus': 'CREATE_IN_PROGRESS'|'AVAILABLE'|'DELETE_IN_PROGRESS'|'NOT_AVAILABLE'|'FLUSH_IN_PROGRESS',
    'methodSettings': {
        'string': {
            'metricsEnabled': True|False,
            'loggingLevel': 'string',
            'dataTraceEnabled': True|False,
            'throttlingBurstLimit': 123,
            'throttlingRateLimit': 123.0,
            'cachingEnabled': True|False,
            'cacheTtlInSeconds': 123,
            'cacheDataEncrypted': True|False
        }
    },
    'variables': {
        'string': 'string'
    },
    'createdDate': datetime(2015, 1, 1),
    'lastUpdatedDate': datetime(2015, 1, 1)
}

Response Structure

  • (dict) --

    Represents a unique identifier for a version of a deployed RestApi that is callable by users.

    • deploymentId (string) --

      The identifier of the Deployment that the stage points to.

    • clientCertificateId (string) --

    • stageName (string) --

      The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to Amazon API Gateway.

    • description (string) --

      The stage's description.

    • cacheClusterEnabled (boolean) --

      Specifies whether a cache cluster is enabled for the stage.

    • cacheClusterSize (string) --

      The size of the cache cluster for the stage, if enabled.

    • cacheClusterStatus (string) --

      The status of the cache cluster for the stage, if enabled.

    • methodSettings (dict) --

      A map that defines the method settings for a Stage resource. Keys are defined as {resource_path}/{http_method} for an individual method override, or \*/\* for the settings applied to all methods in the stage.

      • (string) --

        • (dict) --

          Specifies the method setting properties.

          • metricsEnabled (boolean) --

            Specifies whether Amazon CloudWatch metrics are enabled for this method. The PATCH path for this setting is /{method_setting_key}/metrics/enabled, and the value is a Boolean.

          • loggingLevel (string) --

            Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/loglevel, and the available levels are OFF, ERROR, and INFO.

          • dataTraceEnabled (boolean) --

            Specifies the whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/dataTrace, and the value is a Boolean.

          • throttlingBurstLimit (integer) --

            Specifies the throttling burst limit. The PATCH path for this setting is /{method_setting_key}/throttling/burstLimit, and the value is an integer.

          • throttlingRateLimit (float) --

            Specifies the throttling rate limit. The PATCH path for this setting is /{method_setting_key}/throttling/rateLimit, and the value is a double.

          • cachingEnabled (boolean) --

            Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. The PATCH path for this setting is /{method_setting_key}/caching/enabled, and the value is a Boolean.

          • cacheTtlInSeconds (integer) --

            Specifies the time to live (TTL) in seconds, for cached responses. The higher a the TTL, the longer the response will be cached. The PATCH path for this setting is /{method_setting_key}/caching/ttlInSeconds, and the value is an integer.

          • cacheDataEncrypted (boolean) --

            Specifies whether the cached responses are encrypted. The PATCH path for this setting is /{method_setting_key}/caching/dataEncrypted, and the value is a Boolean.

    • variables (dict) --

      A map that defines the stage variables for a Stage resource. Variable names can have alphabetic characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+

      • (string) --

        • (string) --

    • createdDate (datetime) --

      The date and time that the stage was created, in ISO 8601 format.

    • lastUpdatedDate (datetime) --

      The date and time that information about the stage was last updated, in ISO 8601 format.