Making Amazon's DNS API simple
by Dave Winer Monday, August 8, 2016

I use Amazon Route 53 because I love the idea of a DNS server with a modern API. I wrote my own glue for Frontier, and used it for years, but now that I'm working in JavaScript, I needed to convert to use Amazon's JavaScript API. Unfortunately, while I love AWS services, their APIs are often incomprehensible. They do a lot, and it seems you have to understand it all before you can write a simple Hello World app. 

Then last week I came across a Node.js package called nice-route53, which claims to be "the API you really wanted to Amazon's Route53 service." 

It's true. The simple stuff is right up front. 

Within a few minutes I could see all the zones and all the names I had defined over the years, and which zones were clogged with old obsolete names, and which zones had none. Both extremes are problematic, the latter is wastefully expensive. 

Route 53 is surprisingly expensive. Of all the services I use, DNS  is the single most expensive. I never could understand why. It seems like it's just a database application, but at least now I have an idea how to simplify it. Which has been on my todo list for quite a while. 

I got a lot of value out of nice-route53, right from the beginning, so I decided to give something back. I created a small-but-useful utility called myRoute53 that creates a map of your names and zones, and saves them as JSON files on your local computer. From there, armed with the source, you may be able to write your own utilities that go deeper. 

https://github.com/scripting/myRoute53

Hope it helps!