# Custom domains These templates show different ways to create custom domains for HTTP API and REST API. If a ZoneID is passed in then the recordset is created in the existing zone. If not, then a new Zone is created with the record set in it. If the CERT ARN is passed in then that certificate will be used. If not, then a new cert is created. ## Deployment use `sam deploy -g` in each folder to get started. ## Cert verification If a cert arn is NOT passed in, then during the creation of the **GeneratedCert** you will be asked to create a CNAME record in the route 53 zone. Watch for *Content of DNS Record is* It will then continue on with the deploy after the DNS has been verified. ## Types ### HTTP Builds a custom domain and points it to the root of an HTTP API ### REST Builds a custom domain and points it to the root of an REST API ### both-declared Builds a custom domain and the custom domain mappings for an HTTP API and a REST API declaratively. ### both-implied Creates a custom domain for an HTTP API via the domain property on the HTTP API. It then creates an API mapping for a REST API for the same custom domain.