Skip to content

Domain ​

The Domain resource lets you manage AWS VoiceID Domains for voice authentication and verification. This resource allows you to create and configure domains that can help in managing voice recognition tasks.

Minimal Example ​

Create a basic VoiceID Domain with required properties and an optional description.

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

const voiceIdDomain = await AWS.VoiceID.Domain("voiceIdDomain", {
  Name: "myVoiceIdDomain",
  ServerSideEncryptionConfiguration: {
    KmsKeyId: "arn:aws:kms:us-west-2:123456789012:key/abcd1234-a123-456a-a12b-a123b4cd56ef",
    EncryptionMode: "KMS"
  },
  Description: "This domain handles voice authentication for customer support."
});

Advanced Configuration ​

Configure a VoiceID Domain with additional tags for resource management.

ts
const advancedVoiceIdDomain = await AWS.VoiceID.Domain("advancedVoiceIdDomain", {
  Name: "advancedVoiceIdDomain",
  ServerSideEncryptionConfiguration: {
    KmsKeyId: "arn:aws:kms:us-west-2:123456789012:key/abcd1234-a123-456a-a12b-a123b4cd56ef",
    EncryptionMode: "KMS"
  },
  Tags: [
    { Key: "Environment", Value: "Production" },
    { Key: "Department", Value: "CustomerSupport" }
  ],
  Description: "Advanced domain configuration with tags for resource tracking."
});

Resource Adoption ​

Create a VoiceID Domain with the option to adopt an existing resource if it already exists.

ts
const adoptVoiceIdDomain = await AWS.VoiceID.Domain("adoptVoiceIdDomain", {
  Name: "existingVoiceIdDomain",
  ServerSideEncryptionConfiguration: {
    KmsKeyId: "arn:aws:kms:us-west-2:123456789012:key/abcd1234-a123-456a-a12b-a123b4cd56ef",
    EncryptionMode: "KMS"
  },
  adopt: true // This will prevent failure if the resource already exists
});