Configure a DNS record set change-resource-record-sets — AWS CLI 1.15.35 Command Reference

Views: 5631

To list your resources

aws route53 list-hosted-zones

aws route53 list-resource-record-sets –hosted-zone-id BLABLALA –query “ResourceRecordSets[?Name == ‘example.domain.’]”

Use this output as the base for rebuilding the input Json file.

You can write a Jason File to input into this

aws route53 change-resource-record-sets --cli-input-json

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values.

  "Comment": "string",
  "Changes": [
      "Action": "CREATE"|"DELETE"|"UPSERT",
      "ResourceRecordSet": {
        "Name": "string",
        "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"NAPTR"|"PTR"|"SRV"|"SPF"|"AAAA"|"CAA",
        "SetIdentifier": "string",
        "Weight": long,
        "Region": "us-east-1"|"us-east-2"|"us-west-1"|"us-west-2"|"ca-central-1"|"eu-west-1"|"eu-west-2"|"eu-west-3"|"eu-central-1"|"ap-southeast-1"|"ap-southeast-2"|"ap-northeast-1"|"ap-northeast-2"|"ap-northeast-3"|"sa-east-1"|"cn-north-1"|"cn-northwest-1"|"ap-south-1",
        "GeoLocation": {
          "ContinentCode": "string",
          "CountryCode": "string",
          "SubdivisionCode": "string"
        "Failover": "PRIMARY"|"SECONDARY",
        "MultiValueAnswer": true|false,
        "TTL": long,
        "ResourceRecords": [
            "Value": "string"
        "AliasTarget": {
          "HostedZoneId": "string",
          "DNSName": "string",
          "EvaluateTargetHealth": true|false
        "HealthCheckId": "string",
        "TrafficPolicyInstanceId": "string"


For a good guide Also see:


Source: change-resource-record-sets — AWS CLI 1.15.35 Command Reference Lots more samples with Jsons are there too….

With Node.js you can automate updating route53, see:


Leave a Reply