aws-cdk-lib.aws_route53.RecordSetProps

interface RecordSetProps

LanguageType name
.NETAmazon.CDK.AWS.Route53.RecordSetProps
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsroute53#RecordSetProps
Javasoftware.amazon.awscdk.services.route53.RecordSetProps
Pythonaws_cdk.aws_route53.RecordSetProps
TypeScript (source)aws-cdk-lib » aws_route53 » RecordSetProps

Construction properties for a RecordSet.

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cdk from 'aws-cdk-lib';
import { aws_route53 as route53 } from 'aws-cdk-lib';

declare const hostedZone: route53.HostedZone;
declare const recordTarget: route53.RecordTarget;
const recordSetProps: route53.RecordSetProps = {
  recordType: route53.RecordType.A,
  target: recordTarget,
  zone: hostedZone,

  // the properties below are optional
  comment: 'comment',
  deleteExisting: false,
  recordName: 'recordName',
  ttl: cdk.Duration.minutes(30),
};

Properties

NameTypeDescription
recordTypeRecordTypeThe record type.
targetRecordTargetThe target for this record, either RecordTarget.fromValues() or RecordTarget.fromAlias().
zoneIHostedZoneThe hosted zone in which to define the new record.
comment?stringA comment to add on the record.
deleteExisting?booleanWhether to delete the same record set in the hosted zone if it already exists (dangerous!).
recordName?stringThe subdomain name for this record. This should be relative to the zone root name.
ttl?DurationThe resource record cache time to live (TTL).

recordType

Type: RecordType

The record type.


target

Type: RecordTarget

The target for this record, either RecordTarget.fromValues() or RecordTarget.fromAlias().


zone

Type: IHostedZone

The hosted zone in which to define the new record.


comment?

Type: string (optional, default: no comment)

A comment to add on the record.


deleteExisting?

Type: boolean (optional, default: false)

Whether to delete the same record set in the hosted zone if it already exists (dangerous!).

This allows to deploy a new record set while minimizing the downtime because the new record set will be created immediately after the existing one is deleted. It also avoids "manual" actions to delete existing record sets.

N.B.: this feature is dangerous, use with caution! It can only be used safely when deleteExisting is set to true as soon as the resource is added to the stack. Changing an existing Record Set's deleteExisting property from false -> true after deployment will delete the record!


recordName?

Type: string (optional, default: zone root)

The subdomain name for this record. This should be relative to the zone root name.

For example, if you want to create a record for acme.example.com, specify "acme".

You can also specify the fully qualified domain name which terminates with a ".". For example, "acme.example.com.".


ttl?

Type: Duration (optional, default: Duration.minutes(30))

The resource record cache time to live (TTL).