Skip to content

DomainName

The DomainName resource lets you manage AWS AppSync DomainNames for your applications. This resource allows you to define a custom domain for your AppSync API, enabling better branding and easier access for clients.

Minimal Example

Create a basic AppSync DomainName with required properties and a common optional description.

ts
import AWS from "alchemy/aws/control";

const domainName = await AWS.AppSync.DomainName("myDomainName", {
  DomainName: "api.myapp.com",
  CertificateArn: "arn:aws:acm:us-west-2:123456789012:certificate/abcd1234-5678-90ef-ghij-klmnopqrstuv",
  Description: "My AppSync API custom domain"
});

Advanced Configuration

Configure an AppSync DomainName with tags for better resource management and organization.

ts
const taggedDomainName = await AWS.AppSync.DomainName("taggedDomainName", {
  DomainName: "api.myapp.com",
  CertificateArn: "arn:aws:acm:us-west-2:123456789012:certificate/abcd1234-5678-90ef-ghij-klmnopqrstuv",
  Tags: [
    { Key: "Environment", Value: "Production" },
    { Key: "Project", Value: "MyApp" }
  ]
});

Adopt Existing Resource

If you want to adopt an existing AppSync DomainName instead of failing when the resource already exists, you can set the adopt property to true.

ts
const adoptExistingDomainName = await AWS.AppSync.DomainName("existingDomain", {
  DomainName: "api.myapp.com",
  CertificateArn: "arn:aws:acm:us-west-2:123456789012:certificate/abcd1234-5678-90ef-ghij-klmnopqrstuv",
  adopt: true
});