| « PreviousNext » | |
![]() ![]() | Did this page help you? Yes | No | Tell us about it... |
Use this action to create or change your authoritative DNS information. To use this action, send a POST
request to the 2012-12-12/hostedzone/ resource. The request body
must include an XML document with a Route 53 hosted zone ID/rrsetChangeResourceRecordSetsRequest element.
Changes are a list of change items and are considered transactional. For more information on transactional changes, also known as change batches, see Creating, Changing, and Deleting Resource Record Sets Using the Route 53 API in the Amazon Route 53 Developer Guide.
Important
Due to the nature of transactional changes, you cannot delete the same resource record set
more than once in a single change batch. In addition, if you submit the same change batch request more than once,
Route 53 returns an InvalidChangeBatch error.
In response to a ChangeResourceRecordSets request, your DNS data is changed on all Route 53 DNS servers. Initially, the
status of a change is PENDING. This means the change has not yet propagated to all the
authoritative Route 53 DNS servers. When the change is propagated to all hosts, the change returns a status of
INSYNC.
Note the following limitations on a ChangeResourceRecordSets request:
A request cannot contain more than 100 Change elements.
A request cannot contain more than 1000 ResourceRecord elements.
The sum of the number of characters (including spaces) in all Value elements in a
request cannot exceed 32,000 characters.
For more information about changing resource record sets using the Route 53 API, see Creating, Changing, and Deleting Resource Record Sets Using the Route 53 API in the Amazon Route 53 Developer Guide.
The syntax for each <Change> element in a change batch request depends on the
type of resource record set that you want to create or delete. See the applicable syntax:
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <TTL>time to live in seconds</TTL> <ResourceRecords> <ResourceRecord> <Value>applicable value for the record type</Value> </ResourceRecord> ... </ResourceRecords> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
For more information about weighted resource record sets, see Creating Weighted Resource Record Sets in the Amazon Route 53 Developer Guide.
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <SetIdentifier>unique description for this resource record set</SetIdentifier> <Weight>value between 0 and 255</Weight> <TTL>time to live in seconds</TTL> <ResourceRecords> <ResourceRecord> <Value>applicable value for the record type</Value> </ResourceRecord> ... </ResourceRecords> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
For more information about alias resource record sets, see Creating Alias Resource Record Sets in the Amazon Route 53 Developer Guide.
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <AliasTarget> <HostedZoneId>hosted zone ID for your Elastic Load Balancing load balancer, Amazon S3 bucket, or Route 53 hosted zone</HostedZoneId> <DNSName>DNS domain name for your load balancer, Amazon S3 bucket, or another resource record set in this hosted zone</DNSName> <EvaluateTargetHealth>true | false</EvaluateTargetHealth> </AliasTarget> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
For more information about how to create weighted alias resource record sets using the Route 53 console, see Creating Weighted Alias Resource Record Sets Using the Route 53 Console in the Amazon Route 53 Developer Guide.
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <SetIdentifier>unique description for this resource record set</SetIdentifier> <Weight>value between 0 and 255</Weight> <AliasTarget> <HostedZoneId>hosted zone ID for your Elastic Load Balancing load balancer, Amazon S3 bucket, or Route 53 hosted zone</HostedZoneId> <DNSName>DNS domain name for your load balancer, Amazon S3 bucket, or another resource record set in this hosted zone</DNSName> <EvaluateTargetHealth>true | false</EvaluateTargetHealth> </AliasTarget> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
For more information about latency resource record sets, see Creating Latency Resource Record Sets in the Amazon Route 53 Developer Guide.
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <SetIdentifier>unique description for this resource record set</SetIdentifier> <Region>Amazon EC2 region name</Region> <TTL>time to live in seconds</TTL> <ResourceRecords> <ResourceRecord> <Value>applicable value for the record type</Value> </ResourceRecord> ... </ResourceRecords> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
For more information about latency alias resource record sets, see Creating Latency Alias Resource Record Sets for Elastic Load Balancing Load Balancers Using the Route 53 Console in the Amazon Route 53 Developer Guide.
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <SetIdentifier>unique description for this resource record set</SetIdentifier> <Region>Amazon EC2 region name</Region> <AliasTarget> <HostedZoneId>hosted zone ID for your Elastic Load Balancing load balancer, Amazon S3 bucket, or Route 53 hosted zone</HostedZoneId> <DNSName>DNS domain name for your load balancer, Amazon S3 bucket, or another resource record set in this hosted zone</DNSName> <EvaluateTargetHealth>true | false</EvaluateTargetHealth> </AliasTarget> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
For more information about configuring failover for Route 53, see Managing Resource Availability with Route 53 DNS Failover in the Amazon Route 53 Developer Guide.
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <SetIdentifier>unique description for this resource record set</SetIdentifier> <Failover>PRIMARY | SECONDARY</Failover> <TTL>time to live in seconds</TTL> <ResourceRecords> <ResourceRecord> <Value>applicable value for the record type</Value> </ResourceRecord> ... </ResourceRecords> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
For more information about configuring failover for Route 53, see Managing Resource Availability with Route 53 DNS Failover in the Amazon Route 53 Developer Guide.
POST /2012-12-12/hostedzone/Route 53 hosted zone ID/rrset HTTP/1.1 <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeBatch> <Comment>optional comment about the changes in this change batch request</Comment> <Changes> <Change> <Action>CREATE | DELETE</Action> <ResourceRecordSet> <Name>DNS domain name</Name> <Type>DNS record type</Type> <SetIdentifier>unique description for this resource record set</SetIdentifier> <Failover>PRIMARY | SECONDARY</Failover> <AliasTarget> <HostedZoneId>hosted zone ID for your Amazon S3 bucket or Route 53 hosted zone</HostedZoneId> <DNSName>DNS domain name for your Amazon S3 bucket or another resource record set in this hosted zone</DNSName> <EvaluateTargetHealth>true | false</EvaluateTargetHealth> </AliasTarget> <HealthCheckId>optional ID of a Route 53 health check</HealthCheckId> </ResourceRecordSet> </Change> ... </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>
The request must include the headers that are required in all Route 53 requests. For more information, see Common Headers.
The request must contain the hosted zone ID. Route 53 returns the hosted zone ID in the HostedZone element as part of the
CreateHostedZoneResponse or ListHostedZonesResponse. For more information, see POST CreateHostedZone or GET ListHostedZones.
A complex type that contains change information for the resource record set.
Type: Complex
Default: None
Children: ChangeBatch
The information for a change request.
Type: Complex
Default: None
Children: Comment, Changes
Any comments you want to include about the changes in this change batch.
Type: String
Default: None
Constraints: Maximum 256 characters
Parent: ChangeBatch
Information about the changes to make to the record sets.
Type: Complex
Default: None
Parent: ChangeBatch
Children: Change
The information for each resource record set that you want to change.
Type: Complex
Default: None
Parent: Changes
Children: Action, ResourceRecordSet
The action to perform.
Type: String
Default: None
Valid values: CREATE | DELETE
Parent: member
Information about the resource record set to create or delete.
Type: Complex
Default: None
Parent: member
Children: Name, Type, SetIdentifier,
Weight, Region, Failover, TTL,
AliasTarget, ResourceRecords
The name of the domain you want to perform the action on.
Enter a fully qualified domain name, for example, www.example.com. You can optionally include a trailing dot. If you omit the trailing dot, Route 53 still assumes that the domain name that you specify is fully qualified. This means that Route 53 treats www.example.com (without a trailing dot) and www.example.com. (with a trailing dot) as identical.
Type: String
Default: None
Parent: ResourceRecordSet
The DNS record type. For information about different record types and how data is encoded for them, see Supported DNS Resource Record Types in the Amazon Route 53 Developer Guide.
Type: String
Default: None
Valid values: A | AAAA | CNAME | MX | NS | PTR | SOA | SPF | SRV | TXT
Values for weighted resource record sets: A | AAAA | CNAME | MX | PTR | SPF | SRV | TXT
Values for alias resource record sets: A | AAAA | CNAME | MX | PTR | SPF | SRV | TXT
Values for latency resource record sets: A | AAAA | CNAME | MX | PTR | SPF | SRV | TXT
Values for failover resource record sets: A | AAAA | CNAME | MX | PTR | SPF | SRV | TXT
Parent: ResourceRecordSet
Weighted, latency, and failover resource record sets only: An identifier that
differentiates among multiple resource record sets that have the same combination of DNS name and type.
The value of SetIdentifier must be unique for each resource record set that has
the same combination of DNS name and type.
Type: String
Default: None
Valid values: 1-128 characters, including upper- and lower-case letters, numbers, spaces, and punctuation.
Parent: ResourceRecordSet
For more information and an example, see Creating Weighted Resource Record Sets, Creating Latency Resource Record Sets, or Managing Resource Availability with Route 53 DNS Failover in the Amazon Route 53 Developer Guide.
Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Route 53 responds to using the current resource record set. Route 53 calculates the sum of the weights for the resource record sets that have the same combination of DNS name and type. Route 53 then responds to queries based on the ratio of a resource's weight to the total. Note the following:
You must specify a value for the Weight element for every weighted resource record set.
You can only specify one ResourceRecord per weighted resource record set.
You cannot create latency or failover resource record sets that have the same values for the
Name and Type elements as weighted resource record sets.
You can create a maximum of 100 weighted resource record sets that have the same values for the
Name and Type elements
For weighted (but not weighted alias) resource record sets, if you set Weight
to 0 for a resource record set, Route 53 never responds to queries with the applicable value for that
resource record set. However, if you set Weight to 0 for all resource record sets that have the same
combination of DNS name and type, traffic is routed to all resources with equal probability.
The effect of setting Weight to 0 is different when you associate health checks with
weighted resource record sets. For more information, go to
Configuring Active-Active or Active-Passive Failover
Using Route 53 Weighted and Weighted Alias Resource Record Sets
in the Amazon Route 53 Developer Guide.
Type: Integer
Default: None
Valid values: 0-255
Parent: ResourceRecordSet
For more information and an example, see Creating Weighted Resource Record Sets in the Amazon Route 53 Developer Guide.
Latency resource record sets only: The Amazon EC2 region where the resource that is specified in this resource record set resides. The resource typically is an AWS resource, for example, an Amazon EC2 instance or an Elastic Load Balancing load balancer, and is referred to by an IP address or a DNS domain name, depending on the record type.
When Route 53 receives a DNS query for a domain name and type for which you have created latency resource record sets, Route 53 selects the latency resource record set that has the lowest latency between the end user and the associated Amazon EC2 region. Route 53 then returns the value that is associated with the selected resource record set.
Note the following:
You can only specify one ResourceRecord per
latency resource record set.
You can only create one latency resource record set for each Amazon EC2 region.
You are not required to create latency resource record sets for all Amazon EC2 regions. Route 53 will choose the region with the best latency from among the regions for which you create latency resource record sets.
You cannot create weighted or failover resource record sets that have the same values for the
Name and Type elements as latency resource record sets.
Valid values include:
Asia Pacific (Tokyo) Region: ap-northeast-1
Asia Pacific (Singapore) Region: ap-southeast-1
Asia Pacific (Sydney) Region: ap-southeast-2
EU (Ireland) Region: eu-west-1
South America (Sao Paulo) Region: sa-east-1
US East (Northern Virginia) Region: us-east-1
US West (Northern California) Region: us-west-1
US West (Oregon) Region: us-west-2
Type: String
Parent: ResourceRecordSet
To configure failover, you add the Failover element to two resource record sets.
For one resource record set, you specify PRIMARY as the value for Failover;
for the other resource record set, you specify SECONDARY. In addition, you include
the HealthCheckId element and specify the health check that you want Route 53 to perform
for each resource record set.
Except where noted, the following failover behaviors assume that you have included the HealthCheckId
element in both resource record sets:
When the primary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the secondary resource record set.
When the primary resource record set is unhealthy and the secondary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the secondary resource record set.
When the secondary resource record set is unhealthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the primary resource record set.
If you omit the HealthCheckId element for the secondary resource record set, and if the
primary resource record set is unhealthy, Route 53 always responds to DNS queries with the applicable value from the
secondary resource record set. This is true regardless of the health of the associated endpoint.
You cannot create weighted or latency resource record sets that have the same values for the
Name and Type elements as failover resource record sets.
For failover alias resource record sets, you must also include the
EvaluateTargetHealth element
and set the value to true.
For more information about configuring failover for Route 53, see Managing Resource Availability with Route 53 DNS Failover in the Amazon Route 53 Developer Guide.
Type: String
Default: None
Valid Values: PRIMARY | SECONDARY
Parent: ResourceRecordSet
The resource record cache time to live (TTL), in seconds. Note the following:
If you're creating an alias resource record set for an Elastic Load Balancing load balancer, omit TTL.
Route 53 uses the Elastic Load Balancing TTL. For the current TTL value for Elastic Load Balancing, see the introduction to
Using Domain Names With Elastic Load Balancing.
If you're associating this resource record set with a health check (if you're adding a HealthCheckId element), we recommend that you specify a TTL of 60 seconds or less so clients respond quickly to changes in health status.
Type: Integer
Default: None
Parent: ResourceRecordSet
Information about the resource records to act upon.
Note
If you are creating an alias resource record set, omit ResourceRecords.
Type: Complex
Default: None
Parent: ResourceRecordSet
Children: ResourceRecord
Information specific to the resource record.
Note
If you are creating an alias resource record set, omit ResourceRecord.
Type: Complex
Default: None
Parent: ResourceRecords
Children: Value
The current or new DNS record value, not to exceed 4,000 characters. In the case of a DELETE action,
if the current value does not match the actual value, an error is returned. For descriptions about how to format
Value for different record types, see
Supported DNS Resource Record Types in the
Amazon Route 53 Developer Guide.
You can specify more than one value for all record types except CNAME and SOA.
Use the following syntax:
<ResourceRecords>
<ResourceRecord>
<Value>applicable value for the record type</Value>
</ResourceRecord>
<ResourceRecord>
<Value>applicable value for the record type</Value>
</ResourceRecord>
...
</ResourceRecords>Note
If you are creating an alias resource record set, omit Value.
Type: String
Default: None
Parent: ResourceRecord
Alias resource record sets only: Information about the Elastic Load Balancing load balancer or the Route 53 resource record set to which you are redirecting queries.
Type: Complex
Default: None
Parent: ResourceRecordSet
Children: HostedZoneId, DNSName
For more information and an example, see the following topics in the Amazon Route 53 Developer Guide:
Alias resource record sets only. If you are routing queries to:
An Elastic Load Balancing load balancer: Specify the value of the hosted zone ID
for the load balancer (CanonicalHostedZoneNameId).
An Amazon S3 bucket that is configured as a static website: Specify the hosted zone ID for the Amazon S3 website endpoint in which you created the bucket. For more information about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the Amazon Web Services General Reference.
Another Route 53 resource record set in your hosted zone: Specify the hosted zone ID of your hosted zone. (An alias resource record set cannot reference a resource record set in a different hosted zone.)
Type: String
Default: None
Parent: AliasTarget
For more information, an example, and several ways to get the hosted zone ID for the load balancer, see the applicable topic in the Amazon Route 53 Developer Guide:
Alias resource record sets only: If you are routing queries to:
An Elastic Load Balancing load balancer: Specify the external DNS name associated with the load balancer.
An Amazon S3 bucket that is configured as a static website:
Specify the domain name of the Amazon S3 website endpoint in which you created the bucket; for example,
s3-website-us-east-1.amazonaws.com. For more information about valid values, see the table
Amazon Simple Storage Service (S3) Website Endpoints in the
Amazon Web Services General Reference.
For more information about using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple Storage Service Developer Guide.
Another Route 53 resource record set: Specify the value of the
Name element for a resource record set in the current hosted zone.
Type: String
Default: None
Parent: AliasTarget
For more information, an example, and several ways to get the DNS name for the load balancer, see the applicable topic in the Amazon Route 53 Developer Guide:
Applies only to alias, weighted alias, latency alias, and failover alias resource record sets:
If you set the value of EvaluateTargetHealth to true for the resource record set or sets in
an alias, weighted alias, latency alias, or failover alias resource record set, and if you specify a value for
HealthCheckId for every resource record set
that is referenced by these alias resource record sets, the alias resource record sets inherit the health of the
referenced resource record sets.
In this configuration, when Route 53 receives a DNS query for an alias resource record set:
Route 53 looks at the resource record sets that are referenced by the alias resource record sets to determine which health checks they're using.
Route 53 checks the current status of each health check. (Route 53 periodically checks the health of the endpoint that is specified in a health check; it doesn't perform the health check when the DNS query arrives.)
Based on the status of the health checks, Route 53 determines which resource record sets are healthy. Unhealthy resource record sets are immediately removed from consideration. In addition, if all of the resource record sets that are referenced by an alias resource record set are unhealthy, that alias resource record set also is immediately removed from consideration.
Based on the configuration of the alias resource record sets (weighted alias or latency alias, for example) and the configuration of the resource record sets that they reference, Route 53 chooses a resource record set from the healthy resource record sets, and responds to the query.
Note the following:
You cannot set EvaluateTargetHealth to true and also assign a
value to HealthCheckId.
You cannot set EvaluateTargetHealth to true when the alias target is an Elastic Load Balancing
load balancer.
You must configure a health check for the resource record set that you specify in EvaluateTargetHealth.
We recommend that you set EvaluateTargetHealth to true only when you have enough
idle capacity to handle the failure of one or more endpoints.
For more information and examples, see Managing Resource Availability with Route 53 DNS Failover in the Amazon Route 53 Developer Guide.
For information about configuring health checks on a resource record set, see HealthCheckId.
Type: Boolean
Default: None
Parent: AliasTarget
If you want Route 53 to return this resource record set in response to a DNS query only when a health check
is passing, include the HealthCheckId element and specify the ID of the applicable health check.
Route 53 determines whether a resource record set is healthy by periodically sending a request to the endpoint that is specified in the health check. If that endpoint returns an HTTP status code of 2xx or 3xx, the endpoint is healthy. If the endpoint returns an HTTP status code of 400 or greater, or if the endpoint doesn't respond for a certain amount of time, Route 53 considers the endpoint unhealthy and also considers the resource record set unhealthy.
The HealthCheckId element is only useful when Route 53 is choosing between two or more resource record sets
to respond to a DNS query, and you want Route 53 to base the choice in part on the status of a health check. Configuring
health checks only makes sense in the following configurations:
You're checking the health of the resource record sets in a weighted, latency, or failover resource record set, and you specify health check IDs for all of the resource record sets. If the health check for one resource record set specifies an endpoint that is not healthy, Route 53 stops responding to queries using the value for that resource record set.
You set EvaluateTargetHealth to true for the resource record sets
in an alias, weighted alias, latency alias, or failover alias resource record set, and you specify health check IDs for
all of the resource record sets that are referenced by the alias resource record sets. For more information
about this configuration, see EvaluateTargetHealth.
Important
Route 53 doesn't check the health of the endpoint specified in the resource record set, for example,
the endpoint specified by the IP address in the Value element. When you add a HealthCheckId
element to a resource record set, Route 53 checks the health of the endpoint that you specified in the health check.
For more information about checking the health of endpoints, see Managing Resource Availability with Route 53 DNS Failover in the Amazon Route 53 Developer Guide.
For information about the actions that you can perform on health checks using the Route 53 API, see Actions on HealthChecks.
Type: String
Default: None
Parent: ResourceRecordSet
HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <ChangeResourceRecordSetsResponse xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> <ChangeInfo> <Id>/change/unique identifier for the change batch request</Id> <Status>PENDING | INSYNC</Status> <SubmittedAt>date and time in Coordinated Universal Time format</SubmittedAt> </ChangeInfo> </ChangeResourceRecordSetsResponse>
The response will include the headers in all Route 53 responses. For more information, see Common Headers.
A complex type containing the response information for the request.
Type: Complex
Children: ChangeInfo
A complex type that describes change information about changes made to your hosted zone.
Type: Complex
Children: Id, Status, SubmittedAt
The ID of the request. Specify this ID in a GetChange request to determine when the change has
propagated to all Route 53 DNS servers.
Type: String
Parent: ChangeInfo
The current state of the request. PENDING indicates that this request has not yet been applied to
all Route 53 DNS servers.
Type: String
Valid Values: PENDING | INSYNC
Parent: ChangeInfo
The date and time the change request was submitted, in the format
YYYY-MM-DDThh:mm:ssZ, as specified in the ISO 8601 standard
(for example, 2012-03-19T19:37:58Z). The Z after the time indicates that the time is listed in
Coordinated Universal Time (UTC), which is synonymous with Greenwich Mean Time in this context.
Type: Timestamp
Parent: ChangeInfo
The input is not valid.
A hosted zone with the specified hosted zone ID does not exist.
This exception contains a list of messages that might contain one or more error messages. Each error message indicates one error in the change batch. For more information, see Example InvalidChangeBatch Errors.
If Route 53 can't process a request before the next request arrives, it will reject subsequent requests for the same
hosted zone and return an HTTP 400 error (Bad request). If Route 53 returns this error repeatedly for the
same request, we recommend that you wait, in intervals of increasing duration, before you try the request again.
For additional examples, see the applicable topics in the Amazon Route 53 Developer Guide:
This example creates an A record for www.example.com and changes the A record for foo.example.com
from 192.0.2.3 to 192.0.2.1.
POST /2012-12-12/hostedzone/Z1PA6795UKMFR9/rrset HTTP/1.1
<?xml version="1.0" encoding="UTF-8"?>
<ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/">
<ChangeBatch>
<Comment>
This change batch creates a TXT record for www.example.com.,
and changes the A record for foo.example.com. from 192.0.2.3 to 192.0.2.1.
</Comment>
<Changes>
<Change>
<Action>CREATE</Action>
<ResourceRecordSet>
<Name>www.example.com.</Name>
<Type>TXT</Type>
<TTL>600</TTL>
<ResourceRecords>
<ResourceRecord>
<Value>"item 1" "item 2" "item 3"</Value>
</ResourceRecord>
</ResourceRecords>
</ResourceRecordSet>
</Change>
<Change>
<Action>DELETE</Action>
<ResourceRecordSet>
<Name>foo.example.com.</Name>
<Type>A</Type>
<TTL>600</TTL>
<ResourceRecords>
<ResourceRecord>
<Value>192.0.2.3</Value>
</ResourceRecord>
</ResourceRecords>
</ResourceRecordSet>
</Change>
<Change>
<Action>CREATE</Action>
<ResourceRecordSet>
<Name>foo.example.com.</Name>
<Type>A</Type>
<TTL>600</TTL>
<ResourceRecords>
<ResourceRecord>
<Value>192.0.2.1</Value>
</ResourceRecord>
</ResourceRecords>
</ResourceRecordSet>
</Change>
</Changes>
</ChangeBatch>
</ChangeResourceRecordSetsRequest>
This is an example response to the request in the previous example.
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8"?>
<ChangeResourceRecordSetsResponse xmlns="https://route53.amazonaws.com/doc/2012-12-12/">
<ChangeInfo>
<Id>/change/C2682N5HXP0BZ4</Id>
<Status>PENDING</Status>
<SubmittedAt>2010-09-10T01:36:41.958Z</SubmittedAt>
</ChangeInfo>
</ChangeResourceRecordSetsResponse>
The InvalidChangeBatch error contains a list of messages that contain zero, one or more error messages. This section describes
InvalidChangeBatch and some of the errors it might return.
Note
Route 53 locates as many errors as possible, but some errors can only be detected after other errors are fixed. As a result, you might need to repeat your request to locate all the errors.
Example 1
If you already have a resource record set called duplicate.example.com. with type A records, and you try to create the same
resource record set again, you receive the following InvalidChangeBatch exception.
HTTP/1.1 400 Bad Request
<?xml version="1.0"?>
<InvalidChangeBatch xmlns="https://route53.amazonaws.com/doc/2012-12-12/">
<Messages>
<Message>
Tried to create resource record set duplicate.example.com. type A,
but it already exists
</Message>
</Messages>
</InvalidChangeBatch>
Example 2
If you don't have the resource record set noexist.example.com. with type A records, but you try to delete it, you will get
the following InvalidChangeBatch error.
HTTP/1.1 400 Bad Request
<?xml version="1.0"?>
<InvalidChangeBatch xmlns="https://route53.amazonaws.com/doc/2012-12-12/">
<Messages>
<Message>
Tried to delete resource record set noexist.example.com. type A,
but it was not found
</Message>
</Messages>
</InvalidChangeBatch>
Example 3
If you put the above two changes into a single change batch and you call ChangeResourceRecordSets, you receive
this error.
HTTP/1.1 400 Bad Request
<?xml version="1.0"?>
<InvalidChangeBatch xmlns="https://route53.amazonaws.com/doc/2012-12-12/">
<Messages>
<Message>
Tried to create resource record set duplicate.example.com. type A,
but it already exists
</Message>
<Message>
Tried to delete resource record set noexist.example.com. type A,
but it was not found
</Message>
</Messages>
</InvalidChangeBatch>