Jacob Budin's Memoji

How to Quickly Update AWS Route 53 Domains’ Contacts

If you move as frequently as I do, updating your address is a chore. And since ICANN requires all domain registrants to keep their contact info up to date, that work includes domain names’ contact info.

While the AWS Console does not provide a way to update all of your domains’ contact information in bulk, you can using the command line.

Before you begin, you’ll need to install and configure AWS CLI. (To configure it, run $ aws configure.)

In a nutshell:

  1. Set your contact information using AWS’s “shorthand syntax”. (This syntax is documented in $ aws route53domains update-domain-contact help.)
  2. List your registered domain names from AWS Route 53 Domains.
  3. Convert the tab-separated output to pipe to xargs.
  4. Run the update-domain-contact subcommand on each domain name.
$ export CONTACT='FirstName=Johnny,LastName=Appleseed,ContactType=PERSON,OrganizationName=,AddressLine1=123 Maple St,AddressLine2=,City=Los Angeles,State=CA,CountryCode=US,ZipCode=90210,PhoneNumber=+1.5551231234,Email=nobody@example.com'
$ aws route53domains list-domains --query 'Domains[*].DomainName' --output text | \
	tr '\t' '\n' | \
        xargs -I % aws route53domains update-domain-contact --domain-name % --admin-contact "$CONTACT" --registrant-contact "$CONTACT" --tech-contact "$CONTACT"