AmazonApiGatewayV2

2020/09/17 - AmazonApiGatewayV2 - 10 updated api methods

Changes  Adds support for mutual TLS authentication and disableAPIExecuteEndpoint for public regional HTTP Apis

CreateApi (updated) Link ¶
Changes (both)
{'DisableExecuteApiEndpoint': 'boolean'}

Creates an Api resource.

See also: AWS API Documentation

Request Syntax

client.create_api(
    ApiKeySelectionExpression='string',
    CorsConfiguration={
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    CredentialsArn='string',
    Description='string',
    DisableSchemaValidation=True|False,
    DisableExecuteApiEndpoint=True|False,
    Name='string',
    ProtocolType='WEBSOCKET'|'HTTP',
    RouteKey='string',
    RouteSelectionExpression='string',
    Tags={
        'string': 'string'
    },
    Target='string',
    Version='string'
)
type ApiKeySelectionExpression

string

param ApiKeySelectionExpression

An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

type CorsConfiguration

dict

param CorsConfiguration

A CORS configuration. Supported only for HTTP APIs. See Configuring CORS for more information.

  • AllowCredentials (boolean) --

    Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

  • AllowHeaders (list) --

    Represents a collection of allowed headers. Supported only for HTTP APIs.

    • (string) --

  • AllowMethods (list) --

    Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

    • (string) --

      A string with a length between [1-64].

  • AllowOrigins (list) --

    Represents a collection of allowed origins. Supported only for HTTP APIs.

    • (string) --

  • ExposeHeaders (list) --

    Represents a collection of exposed headers. Supported only for HTTP APIs.

    • (string) --

  • MaxAge (integer) --

    The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

type CredentialsArn

string

param CredentialsArn

This property is part of quick create. It specifies the credentials required for the integration, if any. For a Lambda integration, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify arn:aws:iam:::user/. To use resource-based permissions on supported AWS services, specify null. Currently, this property is not used for HTTP integrations. Supported only for HTTP APIs.

type Description

string

param Description

The description of the API.

type DisableSchemaValidation

boolean

param DisableSchemaValidation

Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

type DisableExecuteApiEndpoint

boolean

param DisableExecuteApiEndpoint

Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

type Name

string

param Name

[REQUIRED]

The name of the API.

type ProtocolType

string

param ProtocolType

[REQUIRED]

The API protocol.

type RouteKey

string

param RouteKey

This property is part of quick create. If you don't specify a routeKey, a default route of $default is created. The $default route acts as a catch-all for any request made to your API, for a particular stage. The $default route key can't be modified. You can add routes after creating the API, and you can update the route keys of additional routes. Supported only for HTTP APIs.

type RouteSelectionExpression

string

param RouteSelectionExpression

The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

type Tags

dict

param Tags

The collection of tags. Each tag element is associated with a given resource.

  • (string) --

    • (string) --

      A string with a length between [0-1600].

type Target

string

param Target

This property is part of quick create. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. Supported only for HTTP APIs.

type Version

string

param Version

A version identifier for the API.

rtype

dict

returns

Response Syntax

{
    'ApiEndpoint': 'string',
    'ApiGatewayManaged': True|False,
    'ApiId': 'string',
    'ApiKeySelectionExpression': 'string',
    'CorsConfiguration': {
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    'CreatedDate': datetime(2015, 1, 1),
    'Description': 'string',
    'DisableSchemaValidation': True|False,
    'DisableExecuteApiEndpoint': True|False,
    'ImportInfo': [
        'string',
    ],
    'Name': 'string',
    'ProtocolType': 'WEBSOCKET'|'HTTP',
    'RouteSelectionExpression': 'string',
    'Tags': {
        'string': 'string'
    },
    'Version': 'string',
    'Warnings': [
        'string',
    ]
}

Response Structure

  • (dict) --

    The request has succeeded and has resulted in the creation of a resource.

    • ApiEndpoint (string) --

      The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.

    • ApiGatewayManaged (boolean) --

      Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.

    • ApiId (string) --

      The API ID.

    • ApiKeySelectionExpression (string) --

      An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

    • CorsConfiguration (dict) --

      A CORS configuration. Supported only for HTTP APIs.

      • AllowCredentials (boolean) --

        Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

      • AllowHeaders (list) --

        Represents a collection of allowed headers. Supported only for HTTP APIs.

        • (string) --

      • AllowMethods (list) --

        Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

        • (string) --

          A string with a length between [1-64].

      • AllowOrigins (list) --

        Represents a collection of allowed origins. Supported only for HTTP APIs.

        • (string) --

      • ExposeHeaders (list) --

        Represents a collection of exposed headers. Supported only for HTTP APIs.

        • (string) --

      • MaxAge (integer) --

        The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

    • CreatedDate (datetime) --

      The timestamp when the API was created.

    • Description (string) --

      The description of the API.

    • DisableSchemaValidation (boolean) --

      Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

    • DisableExecuteApiEndpoint (boolean) --

      Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

    • ImportInfo (list) --

      The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.

      • (string) --

    • Name (string) --

      The name of the API.

    • ProtocolType (string) --

      The API protocol.

    • RouteSelectionExpression (string) --

      The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

    • Tags (dict) --

      A collection of tags associated with the API.

      • (string) --

        • (string) --

          A string with a length between [0-1600].

    • Version (string) --

      A version identifier for the API.

    • Warnings (list) --

      The warning messages reported when failonwarnings is turned on during API import.

      • (string) --

CreateDomainName (updated) Link ¶
Changes (request, response)
Request
{'MutualTlsAuthentication': {'TruststoreUri': 'string',
                             'TruststoreVersion': 'string'}}
Response
{'MutualTlsAuthentication': {'TruststoreUri': 'string',
                             'TruststoreVersion': 'string',
                             'TruststoreWarnings': ['string']}}

Creates a domain name.

See also: AWS API Documentation

Request Syntax

client.create_domain_name(
    DomainName='string',
    DomainNameConfigurations=[
        {
            'ApiGatewayDomainName': 'string',
            'CertificateArn': 'string',
            'CertificateName': 'string',
            'CertificateUploadDate': datetime(2015, 1, 1),
            'DomainNameStatus': 'AVAILABLE'|'UPDATING',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2'
        },
    ],
    MutualTlsAuthentication={
        'TruststoreUri': 'string',
        'TruststoreVersion': 'string'
    },
    Tags={
        'string': 'string'
    }
)
type DomainName

string

param DomainName

[REQUIRED]

The domain name.

type DomainNameConfigurations

list

param DomainNameConfigurations

The domain name configurations.

  • (dict) --

    The domain name configuration.

    • ApiGatewayDomainName (string) --

      A domain name for the API.

    • CertificateArn (string) --

      An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.

    • CertificateName (string) --

      The user-friendly name of the certificate that will be used by the edge-optimized endpoint for this domain name.

    • CertificateUploadDate (datetime) --

      The timestamp when the certificate that was used by edge-optimized endpoint for this domain name was uploaded.

    • DomainNameStatus (string) --

      The status of the domain name migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

    • DomainNameStatusMessage (string) --

      An optional text message containing detailed information about status of the domain name migration.

    • EndpointType (string) --

      The endpoint type.

    • HostedZoneId (string) --

      The Amazon Route 53 Hosted Zone ID of the endpoint.

    • SecurityPolicy (string) --

      The Transport Layer Security (TLS) version of the security policy for this domain name. The valid values are TLS_1_0 and TLS_1_2.

type MutualTlsAuthentication

dict

param MutualTlsAuthentication

The mutual TLS authentication configuration for a custom domain name.

  • TruststoreUri (string) --

    An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://bucket-name/key-name. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.

  • TruststoreVersion (string) --

    The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.

type Tags

dict

param Tags

The collection of tags associated with a domain name.

  • (string) --

    • (string) --

      A string with a length between [0-1600].

rtype

dict

returns

Response Syntax

{
    'ApiMappingSelectionExpression': 'string',
    'DomainName': 'string',
    'DomainNameConfigurations': [
        {
            'ApiGatewayDomainName': 'string',
            'CertificateArn': 'string',
            'CertificateName': 'string',
            'CertificateUploadDate': datetime(2015, 1, 1),
            'DomainNameStatus': 'AVAILABLE'|'UPDATING',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2'
        },
    ],
    'MutualTlsAuthentication': {
        'TruststoreUri': 'string',
        'TruststoreVersion': 'string',
        'TruststoreWarnings': [
            'string',
        ]
    },
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    The request has succeeded and has resulted in the creation of a resource.

    • ApiMappingSelectionExpression (string) --

      The API mapping selection expression.

    • DomainName (string) --

      The name of the DomainName resource.

    • DomainNameConfigurations (list) --

      The domain name configurations.

      • (dict) --

        The domain name configuration.

        • ApiGatewayDomainName (string) --

          A domain name for the API.

        • CertificateArn (string) --

          An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.

        • CertificateName (string) --

          The user-friendly name of the certificate that will be used by the edge-optimized endpoint for this domain name.

        • CertificateUploadDate (datetime) --

          The timestamp when the certificate that was used by edge-optimized endpoint for this domain name was uploaded.

        • DomainNameStatus (string) --

          The status of the domain name migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

        • DomainNameStatusMessage (string) --

          An optional text message containing detailed information about status of the domain name migration.

        • EndpointType (string) --

          The endpoint type.

        • HostedZoneId (string) --

          The Amazon Route 53 Hosted Zone ID of the endpoint.

        • SecurityPolicy (string) --

          The Transport Layer Security (TLS) version of the security policy for this domain name. The valid values are TLS_1_0 and TLS_1_2.

    • MutualTlsAuthentication (dict) --

      The mutual TLS authentication configuration for a custom domain name.

      • TruststoreUri (string) --

        An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://bucket-name/key-name. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.

      • TruststoreVersion (string) --

        The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.

      • TruststoreWarnings (list) --

        A list of warnings that API Gateway returns while processing your truststore. Invalid certificates produce warnings. Mutual TLS is still enabled, but some clients might not be able to access your API. To resolve warnings, upload a new truststore to S3, and then update you domain name to use the new version.

        • (string) --

    • Tags (dict) --

      The collection of tags associated with a domain name.

      • (string) --

        • (string) --

          A string with a length between [0-1600].

GetApi (updated) Link ¶
Changes (response)
{'DisableExecuteApiEndpoint': 'boolean'}

Gets an Api resource.

See also: AWS API Documentation

Request Syntax

client.get_api(
    ApiId='string'
)
type ApiId

string

param ApiId

[REQUIRED]

The API identifier.

rtype

dict

returns

Response Syntax

{
    'ApiEndpoint': 'string',
    'ApiGatewayManaged': True|False,
    'ApiId': 'string',
    'ApiKeySelectionExpression': 'string',
    'CorsConfiguration': {
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    'CreatedDate': datetime(2015, 1, 1),
    'Description': 'string',
    'DisableSchemaValidation': True|False,
    'DisableExecuteApiEndpoint': True|False,
    'ImportInfo': [
        'string',
    ],
    'Name': 'string',
    'ProtocolType': 'WEBSOCKET'|'HTTP',
    'RouteSelectionExpression': 'string',
    'Tags': {
        'string': 'string'
    },
    'Version': 'string',
    'Warnings': [
        'string',
    ]
}

Response Structure

  • (dict) --

    Success

    • ApiEndpoint (string) --

      The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.

    • ApiGatewayManaged (boolean) --

      Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.

    • ApiId (string) --

      The API ID.

    • ApiKeySelectionExpression (string) --

      An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

    • CorsConfiguration (dict) --

      A CORS configuration. Supported only for HTTP APIs.

      • AllowCredentials (boolean) --

        Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

      • AllowHeaders (list) --

        Represents a collection of allowed headers. Supported only for HTTP APIs.

        • (string) --

      • AllowMethods (list) --

        Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

        • (string) --

          A string with a length between [1-64].

      • AllowOrigins (list) --

        Represents a collection of allowed origins. Supported only for HTTP APIs.

        • (string) --

      • ExposeHeaders (list) --

        Represents a collection of exposed headers. Supported only for HTTP APIs.

        • (string) --

      • MaxAge (integer) --

        The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

    • CreatedDate (datetime) --

      The timestamp when the API was created.

    • Description (string) --

      The description of the API.

    • DisableSchemaValidation (boolean) --

      Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

    • DisableExecuteApiEndpoint (boolean) --

      Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

    • ImportInfo (list) --

      The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.

      • (string) --

    • Name (string) --

      The name of the API.

    • ProtocolType (string) --

      The API protocol.

    • RouteSelectionExpression (string) --

      The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

    • Tags (dict) --

      A collection of tags associated with the API.

      • (string) --

        • (string) --

          A string with a length between [0-1600].

    • Version (string) --

      A version identifier for the API.

    • Warnings (list) --

      The warning messages reported when failonwarnings is turned on during API import.

      • (string) --

GetApis (updated) Link ¶
Changes (response)
{'Items': {'DisableExecuteApiEndpoint': 'boolean'}}

Gets a collection of Api resources.

See also: AWS API Documentation

Request Syntax

client.get_apis(
    MaxResults='string',
    NextToken='string'
)
type MaxResults

string

param MaxResults

The maximum number of elements to be returned for this resource.

type NextToken

string

param NextToken

The next page of elements from this collection. Not valid for the last element of the collection.

rtype

dict

returns

Response Syntax

{
    'Items': [
        {
            'ApiEndpoint': 'string',
            'ApiGatewayManaged': True|False,
            'ApiId': 'string',
            'ApiKeySelectionExpression': 'string',
            'CorsConfiguration': {
                'AllowCredentials': True|False,
                'AllowHeaders': [
                    'string',
                ],
                'AllowMethods': [
                    'string',
                ],
                'AllowOrigins': [
                    'string',
                ],
                'ExposeHeaders': [
                    'string',
                ],
                'MaxAge': 123
            },
            'CreatedDate': datetime(2015, 1, 1),
            'Description': 'string',
            'DisableSchemaValidation': True|False,
            'DisableExecuteApiEndpoint': True|False,
            'ImportInfo': [
                'string',
            ],
            'Name': 'string',
            'ProtocolType': 'WEBSOCKET'|'HTTP',
            'RouteSelectionExpression': 'string',
            'Tags': {
                'string': 'string'
            },
            'Version': 'string',
            'Warnings': [
                'string',
            ]
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    Success

    • Items (list) --

      The elements from this collection.

      • (dict) --

        Represents an API.

        • ApiEndpoint (string) --

          The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.

        • ApiGatewayManaged (boolean) --

          Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.

        • ApiId (string) --

          The API ID.

        • ApiKeySelectionExpression (string) --

          An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

        • CorsConfiguration (dict) --

          A CORS configuration. Supported only for HTTP APIs.

          • AllowCredentials (boolean) --

            Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

          • AllowHeaders (list) --

            Represents a collection of allowed headers. Supported only for HTTP APIs.

            • (string) --

          • AllowMethods (list) --

            Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

            • (string) --

              A string with a length between [1-64].

          • AllowOrigins (list) --

            Represents a collection of allowed origins. Supported only for HTTP APIs.

            • (string) --

          • ExposeHeaders (list) --

            Represents a collection of exposed headers. Supported only for HTTP APIs.

            • (string) --

          • MaxAge (integer) --

            The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

        • CreatedDate (datetime) --

          The timestamp when the API was created.

        • Description (string) --

          The description of the API.

        • DisableSchemaValidation (boolean) --

          Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

        • DisableExecuteApiEndpoint (boolean) --

          Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

        • ImportInfo (list) --

          The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.

          • (string) --

        • Name (string) --

          The name of the API.

        • ProtocolType (string) --

          The API protocol.

        • RouteSelectionExpression (string) --

          The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

        • Tags (dict) --

          A collection of tags associated with the API.

          • (string) --

            • (string) --

              A string with a length between [0-1600].

        • Version (string) --

          A version identifier for the API.

        • Warnings (list) --

          The warning messages reported when failonwarnings is turned on during API import.

          • (string) --

    • NextToken (string) --

      The next page of elements from this collection. Not valid for the last element of the collection.

GetDomainName (updated) Link ¶
Changes (response)
{'MutualTlsAuthentication': {'TruststoreUri': 'string',
                             'TruststoreVersion': 'string',
                             'TruststoreWarnings': ['string']}}

Gets a domain name.

See also: AWS API Documentation

Request Syntax

client.get_domain_name(
    DomainName='string'
)
type DomainName

string

param DomainName

[REQUIRED]

The domain name.

rtype

dict

returns

Response Syntax

{
    'ApiMappingSelectionExpression': 'string',
    'DomainName': 'string',
    'DomainNameConfigurations': [
        {
            'ApiGatewayDomainName': 'string',
            'CertificateArn': 'string',
            'CertificateName': 'string',
            'CertificateUploadDate': datetime(2015, 1, 1),
            'DomainNameStatus': 'AVAILABLE'|'UPDATING',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2'
        },
    ],
    'MutualTlsAuthentication': {
        'TruststoreUri': 'string',
        'TruststoreVersion': 'string',
        'TruststoreWarnings': [
            'string',
        ]
    },
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    Success

    • ApiMappingSelectionExpression (string) --

      The API mapping selection expression.

    • DomainName (string) --

      The name of the DomainName resource.

    • DomainNameConfigurations (list) --

      The domain name configurations.

      • (dict) --

        The domain name configuration.

        • ApiGatewayDomainName (string) --

          A domain name for the API.

        • CertificateArn (string) --

          An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.

        • CertificateName (string) --

          The user-friendly name of the certificate that will be used by the edge-optimized endpoint for this domain name.

        • CertificateUploadDate (datetime) --

          The timestamp when the certificate that was used by edge-optimized endpoint for this domain name was uploaded.

        • DomainNameStatus (string) --

          The status of the domain name migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

        • DomainNameStatusMessage (string) --

          An optional text message containing detailed information about status of the domain name migration.

        • EndpointType (string) --

          The endpoint type.

        • HostedZoneId (string) --

          The Amazon Route 53 Hosted Zone ID of the endpoint.

        • SecurityPolicy (string) --

          The Transport Layer Security (TLS) version of the security policy for this domain name. The valid values are TLS_1_0 and TLS_1_2.

    • MutualTlsAuthentication (dict) --

      The mutual TLS authentication configuration for a custom domain name.

      • TruststoreUri (string) --

        An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://bucket-name/key-name. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.

      • TruststoreVersion (string) --

        The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.

      • TruststoreWarnings (list) --

        A list of warnings that API Gateway returns while processing your truststore. Invalid certificates produce warnings. Mutual TLS is still enabled, but some clients might not be able to access your API. To resolve warnings, upload a new truststore to S3, and then update you domain name to use the new version.

        • (string) --

    • Tags (dict) --

      The collection of tags associated with a domain name.

      • (string) --

        • (string) --

          A string with a length between [0-1600].

GetDomainNames (updated) Link ¶
Changes (response)
{'Items': {'MutualTlsAuthentication': {'TruststoreUri': 'string',
                                       'TruststoreVersion': 'string',
                                       'TruststoreWarnings': ['string']}}}

Gets the domain names for an AWS account.

See also: AWS API Documentation

Request Syntax

client.get_domain_names(
    MaxResults='string',
    NextToken='string'
)
type MaxResults

string

param MaxResults

The maximum number of elements to be returned for this resource.

type NextToken

string

param NextToken

The next page of elements from this collection. Not valid for the last element of the collection.

rtype

dict

returns

Response Syntax

{
    'Items': [
        {
            'ApiMappingSelectionExpression': 'string',
            'DomainName': 'string',
            'DomainNameConfigurations': [
                {
                    'ApiGatewayDomainName': 'string',
                    'CertificateArn': 'string',
                    'CertificateName': 'string',
                    'CertificateUploadDate': datetime(2015, 1, 1),
                    'DomainNameStatus': 'AVAILABLE'|'UPDATING',
                    'DomainNameStatusMessage': 'string',
                    'EndpointType': 'REGIONAL'|'EDGE',
                    'HostedZoneId': 'string',
                    'SecurityPolicy': 'TLS_1_0'|'TLS_1_2'
                },
            ],
            'MutualTlsAuthentication': {
                'TruststoreUri': 'string',
                'TruststoreVersion': 'string',
                'TruststoreWarnings': [
                    'string',
                ]
            },
            'Tags': {
                'string': 'string'
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    Success

    • Items (list) --

      The elements from this collection.

      • (dict) --

        Represents a domain name.

        • ApiMappingSelectionExpression (string) --

          The API mapping selection expression.

        • DomainName (string) --

          The name of the DomainName resource.

        • DomainNameConfigurations (list) --

          The domain name configurations.

          • (dict) --

            The domain name configuration.

            • ApiGatewayDomainName (string) --

              A domain name for the API.

            • CertificateArn (string) --

              An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.

            • CertificateName (string) --

              The user-friendly name of the certificate that will be used by the edge-optimized endpoint for this domain name.

            • CertificateUploadDate (datetime) --

              The timestamp when the certificate that was used by edge-optimized endpoint for this domain name was uploaded.

            • DomainNameStatus (string) --

              The status of the domain name migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

            • DomainNameStatusMessage (string) --

              An optional text message containing detailed information about status of the domain name migration.

            • EndpointType (string) --

              The endpoint type.

            • HostedZoneId (string) --

              The Amazon Route 53 Hosted Zone ID of the endpoint.

            • SecurityPolicy (string) --

              The Transport Layer Security (TLS) version of the security policy for this domain name. The valid values are TLS_1_0 and TLS_1_2.

        • MutualTlsAuthentication (dict) --

          The mutual TLS authentication configuration for a custom domain name.

          • TruststoreUri (string) --

            An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://bucket-name/key-name. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.

          • TruststoreVersion (string) --

            The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.

          • TruststoreWarnings (list) --

            A list of warnings that API Gateway returns while processing your truststore. Invalid certificates produce warnings. Mutual TLS is still enabled, but some clients might not be able to access your API. To resolve warnings, upload a new truststore to S3, and then update you domain name to use the new version.

            • (string) --

        • Tags (dict) --

          The collection of tags associated with a domain name.

          • (string) --

            • (string) --

              A string with a length between [0-1600].

    • NextToken (string) --

      The next page of elements from this collection. Not valid for the last element of the collection.

ImportApi (updated) Link ¶
Changes (response)
{'DisableExecuteApiEndpoint': 'boolean'}

Imports an API.

See also: AWS API Documentation

Request Syntax

client.import_api(
    Basepath='string',
    Body='string',
    FailOnWarnings=True|False
)
type Basepath

string

param Basepath

Specifies how to interpret the base path of the API during import. Valid values are ignore, prepend, and split. The default value is ignore. To learn more, see Set the OpenAPI basePath Property. Supported only for HTTP APIs.

type Body

string

param Body

[REQUIRED]

The OpenAPI definition. Supported only for HTTP APIs.

type FailOnWarnings

boolean

param FailOnWarnings

Specifies whether to rollback the API creation when a warning is encountered. By default, API creation continues if a warning is encountered.

rtype

dict

returns

Response Syntax

{
    'ApiEndpoint': 'string',
    'ApiGatewayManaged': True|False,
    'ApiId': 'string',
    'ApiKeySelectionExpression': 'string',
    'CorsConfiguration': {
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    'CreatedDate': datetime(2015, 1, 1),
    'Description': 'string',
    'DisableSchemaValidation': True|False,
    'DisableExecuteApiEndpoint': True|False,
    'ImportInfo': [
        'string',
    ],
    'Name': 'string',
    'ProtocolType': 'WEBSOCKET'|'HTTP',
    'RouteSelectionExpression': 'string',
    'Tags': {
        'string': 'string'
    },
    'Version': 'string',
    'Warnings': [
        'string',
    ]
}

Response Structure

  • (dict) --

    The request has succeeded and has resulted in the creation of a resource.

    • ApiEndpoint (string) --

      The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.

    • ApiGatewayManaged (boolean) --

      Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.

    • ApiId (string) --

      The API ID.

    • ApiKeySelectionExpression (string) --

      An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

    • CorsConfiguration (dict) --

      A CORS configuration. Supported only for HTTP APIs.

      • AllowCredentials (boolean) --

        Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

      • AllowHeaders (list) --

        Represents a collection of allowed headers. Supported only for HTTP APIs.

        • (string) --

      • AllowMethods (list) --

        Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

        • (string) --

          A string with a length between [1-64].

      • AllowOrigins (list) --

        Represents a collection of allowed origins. Supported only for HTTP APIs.

        • (string) --

      • ExposeHeaders (list) --

        Represents a collection of exposed headers. Supported only for HTTP APIs.

        • (string) --

      • MaxAge (integer) --

        The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

    • CreatedDate (datetime) --

      The timestamp when the API was created.

    • Description (string) --

      The description of the API.

    • DisableSchemaValidation (boolean) --

      Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

    • DisableExecuteApiEndpoint (boolean) --

      Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

    • ImportInfo (list) --

      The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.

      • (string) --

    • Name (string) --

      The name of the API.

    • ProtocolType (string) --

      The API protocol.

    • RouteSelectionExpression (string) --

      The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

    • Tags (dict) --

      A collection of tags associated with the API.

      • (string) --

        • (string) --

          A string with a length between [0-1600].

    • Version (string) --

      A version identifier for the API.

    • Warnings (list) --

      The warning messages reported when failonwarnings is turned on during API import.

      • (string) --

ReimportApi (updated) Link ¶
Changes (response)
{'DisableExecuteApiEndpoint': 'boolean'}

Puts an Api resource.

See also: AWS API Documentation

Request Syntax

client.reimport_api(
    ApiId='string',
    Basepath='string',
    Body='string',
    FailOnWarnings=True|False
)
type ApiId

string

param ApiId

[REQUIRED]

The API identifier.

type Basepath

string

param Basepath

Specifies how to interpret the base path of the API during import. Valid values are ignore, prepend, and split. The default value is ignore. To learn more, see Set the OpenAPI basePath Property. Supported only for HTTP APIs.

type Body

string

param Body

[REQUIRED]

The OpenAPI definition. Supported only for HTTP APIs.

type FailOnWarnings

boolean

param FailOnWarnings

Specifies whether to rollback the API creation when a warning is encountered. By default, API creation continues if a warning is encountered.

rtype

dict

returns

Response Syntax

{
    'ApiEndpoint': 'string',
    'ApiGatewayManaged': True|False,
    'ApiId': 'string',
    'ApiKeySelectionExpression': 'string',
    'CorsConfiguration': {
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    'CreatedDate': datetime(2015, 1, 1),
    'Description': 'string',
    'DisableSchemaValidation': True|False,
    'DisableExecuteApiEndpoint': True|False,
    'ImportInfo': [
        'string',
    ],
    'Name': 'string',
    'ProtocolType': 'WEBSOCKET'|'HTTP',
    'RouteSelectionExpression': 'string',
    'Tags': {
        'string': 'string'
    },
    'Version': 'string',
    'Warnings': [
        'string',
    ]
}

Response Structure

  • (dict) --

    The request has succeeded and has resulted in the creation of a resource.

    • ApiEndpoint (string) --

      The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.

    • ApiGatewayManaged (boolean) --

      Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.

    • ApiId (string) --

      The API ID.

    • ApiKeySelectionExpression (string) --

      An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

    • CorsConfiguration (dict) --

      A CORS configuration. Supported only for HTTP APIs.

      • AllowCredentials (boolean) --

        Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

      • AllowHeaders (list) --

        Represents a collection of allowed headers. Supported only for HTTP APIs.

        • (string) --

      • AllowMethods (list) --

        Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

        • (string) --

          A string with a length between [1-64].

      • AllowOrigins (list) --

        Represents a collection of allowed origins. Supported only for HTTP APIs.

        • (string) --

      • ExposeHeaders (list) --

        Represents a collection of exposed headers. Supported only for HTTP APIs.

        • (string) --

      • MaxAge (integer) --

        The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

    • CreatedDate (datetime) --

      The timestamp when the API was created.

    • Description (string) --

      The description of the API.

    • DisableSchemaValidation (boolean) --

      Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

    • DisableExecuteApiEndpoint (boolean) --

      Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

    • ImportInfo (list) --

      The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.

      • (string) --

    • Name (string) --

      The name of the API.

    • ProtocolType (string) --

      The API protocol.

    • RouteSelectionExpression (string) --

      The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

    • Tags (dict) --

      A collection of tags associated with the API.

      • (string) --

        • (string) --

          A string with a length between [0-1600].

    • Version (string) --

      A version identifier for the API.

    • Warnings (list) --

      The warning messages reported when failonwarnings is turned on during API import.

      • (string) --

UpdateApi (updated) Link ¶
Changes (both)
{'DisableExecuteApiEndpoint': 'boolean'}

Updates an Api resource.

See also: AWS API Documentation

Request Syntax

client.update_api(
    ApiId='string',
    ApiKeySelectionExpression='string',
    CorsConfiguration={
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    CredentialsArn='string',
    Description='string',
    DisableSchemaValidation=True|False,
    DisableExecuteApiEndpoint=True|False,
    Name='string',
    RouteKey='string',
    RouteSelectionExpression='string',
    Target='string',
    Version='string'
)
type ApiId

string

param ApiId

[REQUIRED]

The API identifier.

type ApiKeySelectionExpression

string

param ApiKeySelectionExpression

An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

type CorsConfiguration

dict

param CorsConfiguration

A CORS configuration. Supported only for HTTP APIs.

  • AllowCredentials (boolean) --

    Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

  • AllowHeaders (list) --

    Represents a collection of allowed headers. Supported only for HTTP APIs.

    • (string) --

  • AllowMethods (list) --

    Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

    • (string) --

      A string with a length between [1-64].

  • AllowOrigins (list) --

    Represents a collection of allowed origins. Supported only for HTTP APIs.

    • (string) --

  • ExposeHeaders (list) --

    Represents a collection of exposed headers. Supported only for HTTP APIs.

    • (string) --

  • MaxAge (integer) --

    The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

type CredentialsArn

string

param CredentialsArn

This property is part of quick create. It specifies the credentials required for the integration, if any. For a Lambda integration, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify arn:aws:iam:::user/. To use resource-based permissions on supported AWS services, specify null. Currently, this property is not used for HTTP integrations. If provided, this value replaces the credentials associated with the quick create integration. Supported only for HTTP APIs.

type Description

string

param Description

The description of the API.

type DisableSchemaValidation

boolean

param DisableSchemaValidation

Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

type DisableExecuteApiEndpoint

boolean

param DisableExecuteApiEndpoint

Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

type Name

string

param Name

The name of the API.

type RouteKey

string

param RouteKey

This property is part of quick create. If not specified, the route created using quick create is kept. Otherwise, this value replaces the route key of the quick create route. Additional routes may still be added after the API is updated. Supported only for HTTP APIs.

type RouteSelectionExpression

string

param RouteSelectionExpression

The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

type Target

string

param Target

This property is part of quick create. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. The value provided updates the integration URI and integration type. You can update a quick-created target, but you can't remove it from an API. Supported only for HTTP APIs.

type Version

string

param Version

A version identifier for the API.

rtype

dict

returns

Response Syntax

{
    'ApiEndpoint': 'string',
    'ApiGatewayManaged': True|False,
    'ApiId': 'string',
    'ApiKeySelectionExpression': 'string',
    'CorsConfiguration': {
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    'CreatedDate': datetime(2015, 1, 1),
    'Description': 'string',
    'DisableSchemaValidation': True|False,
    'DisableExecuteApiEndpoint': True|False,
    'ImportInfo': [
        'string',
    ],
    'Name': 'string',
    'ProtocolType': 'WEBSOCKET'|'HTTP',
    'RouteSelectionExpression': 'string',
    'Tags': {
        'string': 'string'
    },
    'Version': 'string',
    'Warnings': [
        'string',
    ]
}

Response Structure

  • (dict) --

    Success

    • ApiEndpoint (string) --

      The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.

    • ApiGatewayManaged (boolean) --

      Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.

    • ApiId (string) --

      The API ID.

    • ApiKeySelectionExpression (string) --

      An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.

    • CorsConfiguration (dict) --

      A CORS configuration. Supported only for HTTP APIs.

      • AllowCredentials (boolean) --

        Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

      • AllowHeaders (list) --

        Represents a collection of allowed headers. Supported only for HTTP APIs.

        • (string) --

      • AllowMethods (list) --

        Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

        • (string) --

          A string with a length between [1-64].

      • AllowOrigins (list) --

        Represents a collection of allowed origins. Supported only for HTTP APIs.

        • (string) --

      • ExposeHeaders (list) --

        Represents a collection of exposed headers. Supported only for HTTP APIs.

        • (string) --

      • MaxAge (integer) --

        The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

    • CreatedDate (datetime) --

      The timestamp when the API was created.

    • Description (string) --

      The description of the API.

    • DisableSchemaValidation (boolean) --

      Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

    • DisableExecuteApiEndpoint (boolean) --

      Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

    • ImportInfo (list) --

      The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.

      • (string) --

    • Name (string) --

      The name of the API.

    • ProtocolType (string) --

      The API protocol.

    • RouteSelectionExpression (string) --

      The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

    • Tags (dict) --

      A collection of tags associated with the API.

      • (string) --

        • (string) --

          A string with a length between [0-1600].

    • Version (string) --

      A version identifier for the API.

    • Warnings (list) --

      The warning messages reported when failonwarnings is turned on during API import.

      • (string) --

UpdateDomainName (updated) Link ¶
Changes (request, response)
Request
{'MutualTlsAuthentication': {'TruststoreUri': 'string',
                             'TruststoreVersion': 'string'}}
Response
{'MutualTlsAuthentication': {'TruststoreUri': 'string',
                             'TruststoreVersion': 'string',
                             'TruststoreWarnings': ['string']}}

Updates a domain name.

See also: AWS API Documentation

Request Syntax

client.update_domain_name(
    DomainName='string',
    DomainNameConfigurations=[
        {
            'ApiGatewayDomainName': 'string',
            'CertificateArn': 'string',
            'CertificateName': 'string',
            'CertificateUploadDate': datetime(2015, 1, 1),
            'DomainNameStatus': 'AVAILABLE'|'UPDATING',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2'
        },
    ],
    MutualTlsAuthentication={
        'TruststoreUri': 'string',
        'TruststoreVersion': 'string'
    }
)
type DomainName

string

param DomainName

[REQUIRED]

The domain name.

type DomainNameConfigurations

list

param DomainNameConfigurations

The domain name configurations.

  • (dict) --

    The domain name configuration.

    • ApiGatewayDomainName (string) --

      A domain name for the API.

    • CertificateArn (string) --

      An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.

    • CertificateName (string) --

      The user-friendly name of the certificate that will be used by the edge-optimized endpoint for this domain name.

    • CertificateUploadDate (datetime) --

      The timestamp when the certificate that was used by edge-optimized endpoint for this domain name was uploaded.

    • DomainNameStatus (string) --

      The status of the domain name migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

    • DomainNameStatusMessage (string) --

      An optional text message containing detailed information about status of the domain name migration.

    • EndpointType (string) --

      The endpoint type.

    • HostedZoneId (string) --

      The Amazon Route 53 Hosted Zone ID of the endpoint.

    • SecurityPolicy (string) --

      The Transport Layer Security (TLS) version of the security policy for this domain name. The valid values are TLS_1_0 and TLS_1_2.

type MutualTlsAuthentication

dict

param MutualTlsAuthentication

The mutual TLS authentication configuration for a custom domain name.

  • TruststoreUri (string) --

    An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://bucket-name/key-name. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.

  • TruststoreVersion (string) --

    The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.

rtype

dict

returns

Response Syntax

{
    'ApiMappingSelectionExpression': 'string',
    'DomainName': 'string',
    'DomainNameConfigurations': [
        {
            'ApiGatewayDomainName': 'string',
            'CertificateArn': 'string',
            'CertificateName': 'string',
            'CertificateUploadDate': datetime(2015, 1, 1),
            'DomainNameStatus': 'AVAILABLE'|'UPDATING',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2'
        },
    ],
    'MutualTlsAuthentication': {
        'TruststoreUri': 'string',
        'TruststoreVersion': 'string',
        'TruststoreWarnings': [
            'string',
        ]
    },
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    Success

    • ApiMappingSelectionExpression (string) --

      The API mapping selection expression.

    • DomainName (string) --

      The name of the DomainName resource.

    • DomainNameConfigurations (list) --

      The domain name configurations.

      • (dict) --

        The domain name configuration.

        • ApiGatewayDomainName (string) --

          A domain name for the API.

        • CertificateArn (string) --

          An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.

        • CertificateName (string) --

          The user-friendly name of the certificate that will be used by the edge-optimized endpoint for this domain name.

        • CertificateUploadDate (datetime) --

          The timestamp when the certificate that was used by edge-optimized endpoint for this domain name was uploaded.

        • DomainNameStatus (string) --

          The status of the domain name migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

        • DomainNameStatusMessage (string) --

          An optional text message containing detailed information about status of the domain name migration.

        • EndpointType (string) --

          The endpoint type.

        • HostedZoneId (string) --

          The Amazon Route 53 Hosted Zone ID of the endpoint.

        • SecurityPolicy (string) --

          The Transport Layer Security (TLS) version of the security policy for this domain name. The valid values are TLS_1_0 and TLS_1_2.

    • MutualTlsAuthentication (dict) --

      The mutual TLS authentication configuration for a custom domain name.

      • TruststoreUri (string) --

        An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://bucket-name/key-name. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.

      • TruststoreVersion (string) --

        The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.

      • TruststoreWarnings (list) --

        A list of warnings that API Gateway returns while processing your truststore. Invalid certificates produce warnings. Mutual TLS is still enabled, but some clients might not be able to access your API. To resolve warnings, upload a new truststore to S3, and then update you domain name to use the new version.

        • (string) --

    • Tags (dict) --

      The collection of tags associated with a domain name.

      • (string) --

        • (string) --

          A string with a length between [0-1600].