HttpApiDomainConfiguration - AWS Serverless Application Model

HttpApiDomainConfiguration

Configures a custom domain for an API.

Syntax

To declare this entity in your AWS Serverless Application Model (AWS SAM) template, use the following syntax.

Properties

BasePath

A list of the basepaths to configure with the Amazon API Gateway domain name.

Type: List

Required: No

Default: /

AWS CloudFormation compatibility: This property is similar to the ApiMappingKey property of an AWS::ApiGatewayV2::ApiMapping resource. AWS SAM creates multiple AWS::ApiGatewayV2::ApiMapping resources, one per value specified in this property.

CertificateArn

The Amazon Resource Name (ARN) of an AWS managed certificate for this domain name's endpoint. AWS Certificate Manager is the only supported source.

Type: String

Required: Yes

AWS CloudFormation compatibility: This property is passed directly to the CertificateArn property of an AWS::ApiGateway2::DomainName DomainNameConfiguration resource.

DomainName

The custom domain name for your API Gateway API. Uppercase letters are not supported.

AWS SAM generates an AWS::ApiGatewayV2::DomainName resource when this property is set. For information about this scenario, see DomainName property is specified. For information about generated AWS CloudFormation resources, see Generated AWS CloudFormation resources.

Type: String

Required: Yes

AWS CloudFormation compatibility: This property is passed directly to the DomainName property of an AWS::ApiGateway2::DomainName resource.

EndpointConfiguration

Defines the type of API Gateway endpoint to map to the custom domain. The value of this property determines how the CertificateArn property is mapped in AWS CloudFormation.

The only valid value for HTTP APIs is REGIONAL.

Type: String

Required: No

Default: REGIONAL

AWS CloudFormation compatibility: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent.

MutualTlsAuthentication

The mutual transport layer security (TLS) authentication configuration for a custom domain name.

Type: MutualTlsAuthentication

Required: No

AWS CloudFormation compatibility: This property is passed directly to the MutualTlsAuthentication property of an AWS::ApiGatewayV2::DomainName resource.

OwnershipVerificationCertificateArn

The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Required only when you configure mutual TLS and you specify an ACM imported or private CA certificate ARN for the CertificateArn.

Type: String

Required: No

AWS CloudFormation compatibility: This property is passed directly to the OwnershipVerificationCertificateArn property of the AWS::ApiGatewayV2::DomainName DomainNameConfiguration data type.

Route53

Defines an Amazon Route 53 configuration.

Type: Route53Configuration

Required: No

AWS CloudFormation compatibility: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent.

SecurityPolicy

The TLS version of the security policy for this domain name.

The only valid value for HTTP APIs is TLS_1_2.

Type: String

Required: No

AWS CloudFormation compatibility: This property is passed directly to the SecurityPolicy property of the AWS::ApiGatewayV2::DomainName DomainNameConfiguration data type.

Examples

DomainName

DomainName example

YAML

Domain: DomainName: www.example.com CertificateArn: arn-example EndpointConfiguration: REGIONAL Route53: HostedZoneId: Z1PA6795UKMFR9 BasePath: - foo - bar