class Aws::APIGateway::Types::CreateDomainNameRequest

A request to create a new domain name.

@note When making an API call, you may pass CreateDomainNameRequest

data as a hash:

    {
      domain_name: "String", # required
      certificate_name: "String",
      certificate_body: "String",
      certificate_private_key: "String",
      certificate_chain: "String",
      certificate_arn: "String",
      regional_certificate_name: "String",
      regional_certificate_arn: "String",
      endpoint_configuration: {
        types: ["REGIONAL"], # accepts REGIONAL, EDGE, PRIVATE
        vpc_endpoint_ids: ["String"],
      },
      tags: {
        "String" => "String",
      },
      security_policy: "TLS_1_0", # accepts TLS_1_0, TLS_1_2
      mutual_tls_authentication: {
        truststore_uri: "String",
        truststore_version: "String",
      },
      ownership_verification_certificate_arn: "String",
    }

@!attribute [rw] domain_name

\[Required\] The name of the DomainName resource.
@return [String]

@!attribute [rw] certificate_name

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

@!attribute [rw] certificate_body

\[Deprecated\] The body of the server certificate that will be used
by edge-optimized endpoint for this domain name provided by your
certificate authority.
@return [String]

@!attribute [rw] certificate_private_key

\[Deprecated\] Your edge-optimized endpoint's domain name
certificate's private key.
@return [String]

@!attribute [rw] certificate_chain

\[Deprecated\] The intermediate certificates and optionally the root
certificate, one after the other without any blank lines, used by an
edge-optimized endpoint for this domain name. If you include the
root certificate, your certificate chain must start with
intermediate certificates and end with the root certificate. Use the
intermediate certificates that were provided by your certificate
authority. Do not include any intermediaries that are not in the
chain of trust path.
@return [String]

@!attribute [rw] certificate_arn

The reference to an AWS-managed certificate that will be used by
edge-optimized endpoint for this domain name. AWS Certificate
Manager is the only supported source.
@return [String]

@!attribute [rw] regional_certificate_name

The user-friendly name of the certificate that will be used by
regional endpoint for this domain name.
@return [String]

@!attribute [rw] regional_certificate_arn

The reference to an AWS-managed certificate that will be used by
regional endpoint for this domain name. AWS Certificate Manager is
the only supported source.
@return [String]

@!attribute [rw] endpoint_configuration

The endpoint configuration of this DomainName showing the endpoint
types of the domain name.
@return [Types::EndpointConfiguration]

@!attribute [rw] tags

The key-value map of strings. The valid character set is
\[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must
not start with `aws:`. The tag value can be up to 256 characters.
@return [Hash<String,String>]

@!attribute [rw] security_policy

The Transport Layer Security (TLS) version + cipher suite for this
DomainName. The valid values are `TLS_1_0` and `TLS_1_2`.
@return [String]

@!attribute [rw] mutual_tls_authentication

If specified, API Gateway performs two-way authentication between
the client and the server. Clients must present a trusted
certificate to access your custom domain name.
@return [Types::MutualTlsAuthenticationInput]

@!attribute [rw] ownership_verification_certificate_arn

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.
@return [String]

Constants

SENSITIVE