DomainNameProps

class aws_cdk.aws_apigateway.DomainNameProps(*, certificate, domain_name, base_path=None, endpoint_access_mode=None, endpoint_type=None, mtls=None, security_policy=None, mapping=None)

Bases: DomainNameOptions

Parameters:
  • certificate (ICertificateRef) – The reference to an AWS-managed certificate for use by the edge-optimized endpoint for the domain name. For “EDGE” domain names, the certificate needs to be in the US East (N. Virginia) region.

  • domain_name (str) – The custom domain name for your API. Uppercase letters are not supported.

  • base_path (Optional[str]) – The base path name that callers of the API must provide in the URL after the domain name (e.g. example.com/base-path). If you specify this property, it can’t be an empty string. Default: - map requests from the domain root (e.g. example.com).

  • endpoint_access_mode (Optional[EndpointAccessMode]) – The endpoint access mode for this domain name. When using enhanced security policies (those starting with SecurityPolicy_), you must specify this property. STRICT is recommended for production workloads, but BASIC may be needed during migration or for certain application architectures. Default: - No endpoint access mode is configured. Required for enhanced security policies.

  • endpoint_type (Optional[EndpointType]) – The type of endpoint for this DomainName. Default: REGIONAL

  • mtls (Union[MTLSConfig, Dict[str, Any], None]) – The mutual TLS authentication configuration for a custom domain name. Default: - mTLS is not configured.

  • security_policy (Optional[SecurityPolicy]) – The Transport Layer Security (TLS) version + cipher suite for this domain name. Default: SecurityPolicy.TLS_1_2

  • mapping (Optional[IRestApi]) – If specified, all requests to this domain will be mapped to the production deployment of this API. If you wish to map this domain to multiple APIs with different base paths, use addBasePathMapping or addApiMapping. Default: - you will have to call addBasePathMapping to map this domain to API endpoints.

ExampleMetadata:

infused

Example:

# acm_certificate_for_example_com: Any


apigateway.DomainName(self, "custom-domain",
    domain_name="example.com",
    certificate=acm_certificate_for_example_com,
    endpoint_type=apigateway.EndpointType.EDGE,  # default is REGIONAL
    security_policy=apigateway.SecurityPolicy.TLS_1_2
)

Attributes

base_path

The base path name that callers of the API must provide in the URL after the domain name (e.g. example.com/base-path). If you specify this property, it can’t be an empty string.

Default:
  • map requests from the domain root (e.g. example.com).

certificate

The reference to an AWS-managed certificate for use by the edge-optimized endpoint for the domain name.

For “EDGE” domain names, the certificate needs to be in the US East (N. Virginia) region.

domain_name

The custom domain name for your API.

Uppercase letters are not supported.

endpoint_access_mode

The endpoint access mode for this domain name.

When using enhanced security policies (those starting with SecurityPolicy_), you must specify this property. STRICT is recommended for production workloads, but BASIC may be needed during migration or for certain application architectures.

Default:
  • No endpoint access mode is configured. Required for enhanced security policies.

See:

https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-security-policies.html#apigateway-security-policies-endpoint-access-mode

endpoint_type

The type of endpoint for this DomainName.

Default:

REGIONAL

mapping

If specified, all requests to this domain will be mapped to the production deployment of this API.

If you wish to map this domain to multiple APIs with different base paths, use addBasePathMapping or addApiMapping.

Default:

  • you will have to call addBasePathMapping to map this domain to

API endpoints.

mtls

The mutual TLS authentication configuration for a custom domain name.

Default:
  • mTLS is not configured.

security_policy

The Transport Layer Security (TLS) version + cipher suite for this domain name.

Default:

SecurityPolicy.TLS_1_2

See:

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html