AmazonApiGatewayV2

2021/08/12 - AmazonApiGatewayV2 - 4 updated api methods

Changes  Adding support for ACM imported or private CA certificates for mTLS enabled domain names

CreateDomainName (updated) Link ¶
Changes (both)
{'DomainNameConfigurations': {'DomainNameStatus': {'PENDING_CERTIFICATE_REIMPORT',
                                                   'PENDING_OWNERSHIP_VERIFICATION'},
                              'OwnershipVerificationCertificateArn': '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'|'PENDING_CERTIFICATE_REIMPORT'|'PENDING_OWNERSHIP_VERIFICATION',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2',
            'OwnershipVerificationCertificateArn': 'string'
        },
    ],
    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, UPDATING, PENDING_CERTIFICATE_REIMPORT, and PENDING_OWNERSHIP_VERIFICATION. 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.

    • OwnershipVerificationCertificateArn (string) --

      The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn

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'|'PENDING_CERTIFICATE_REIMPORT'|'PENDING_OWNERSHIP_VERIFICATION',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2',
            'OwnershipVerificationCertificateArn': 'string'
        },
    ],
    '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, UPDATING, PENDING_CERTIFICATE_REIMPORT, and PENDING_OWNERSHIP_VERIFICATION. 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.

        • OwnershipVerificationCertificateArn (string) --

          The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn

    • 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].

GetDomainName (updated) Link ¶
Changes (response)
{'DomainNameConfigurations': {'DomainNameStatus': {'PENDING_CERTIFICATE_REIMPORT',
                                                   'PENDING_OWNERSHIP_VERIFICATION'},
                              'OwnershipVerificationCertificateArn': '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'|'PENDING_CERTIFICATE_REIMPORT'|'PENDING_OWNERSHIP_VERIFICATION',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2',
            'OwnershipVerificationCertificateArn': 'string'
        },
    ],
    '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, UPDATING, PENDING_CERTIFICATE_REIMPORT, and PENDING_OWNERSHIP_VERIFICATION. 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.

        • OwnershipVerificationCertificateArn (string) --

          The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn

    • 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': {'DomainNameConfigurations': {'DomainNameStatus': {'PENDING_CERTIFICATE_REIMPORT',
                                                             'PENDING_OWNERSHIP_VERIFICATION'},
                                        'OwnershipVerificationCertificateArn': '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'|'PENDING_CERTIFICATE_REIMPORT'|'PENDING_OWNERSHIP_VERIFICATION',
                    'DomainNameStatusMessage': 'string',
                    'EndpointType': 'REGIONAL'|'EDGE',
                    'HostedZoneId': 'string',
                    'SecurityPolicy': 'TLS_1_0'|'TLS_1_2',
                    'OwnershipVerificationCertificateArn': 'string'
                },
            ],
            '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, UPDATING, PENDING_CERTIFICATE_REIMPORT, and PENDING_OWNERSHIP_VERIFICATION. 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.

            • OwnershipVerificationCertificateArn (string) --

              The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn

        • 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.

UpdateDomainName (updated) Link ¶
Changes (both)
{'DomainNameConfigurations': {'DomainNameStatus': {'PENDING_CERTIFICATE_REIMPORT',
                                                   'PENDING_OWNERSHIP_VERIFICATION'},
                              'OwnershipVerificationCertificateArn': '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'|'PENDING_CERTIFICATE_REIMPORT'|'PENDING_OWNERSHIP_VERIFICATION',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2',
            'OwnershipVerificationCertificateArn': 'string'
        },
    ],
    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, UPDATING, PENDING_CERTIFICATE_REIMPORT, and PENDING_OWNERSHIP_VERIFICATION. 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.

    • OwnershipVerificationCertificateArn (string) --

      The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn

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'|'PENDING_CERTIFICATE_REIMPORT'|'PENDING_OWNERSHIP_VERIFICATION',
            'DomainNameStatusMessage': 'string',
            'EndpointType': 'REGIONAL'|'EDGE',
            'HostedZoneId': 'string',
            'SecurityPolicy': 'TLS_1_0'|'TLS_1_2',
            'OwnershipVerificationCertificateArn': 'string'
        },
    ],
    '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, UPDATING, PENDING_CERTIFICATE_REIMPORT, and PENDING_OWNERSHIP_VERIFICATION. 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.

        • OwnershipVerificationCertificateArn (string) --

          The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn

    • 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].