awsdomainchecker

Query Domain Name availability with node.js via Amazon Web Services SDK for various tld sites. Compatible with any Node.js app, just integrate this into your application. Make requests for domain availiability on the fly

Usage no npm install needed!

<script type="module">
  import awsdomainchecker from 'https://cdn.skypack.dev/awsdomainchecker';
</script>

README

awsdomainchecker - v1.0.4

Query Domain Name availability with node.js via Amazon Web Services SDK.
Compatible with any Node.js app, just integrate this into your application. This is great for use with dns management, domain reservation services, or more advanced logic.

Basic Overview

Awsdomainapi License awsdomainchecker SudirlayCoders Matt Trotter Code Gaurantee

    Required IAM setup
  • Need to configure IAM credentials with access to route53

Using awsdomainchecker is easy, simply export IAM environment variables for route53 access,
require my module (awsdomainchecker) in your app and your all done!

Setup IAM Access for runtme environment security

See here for instaling pip - https://pip.pypa.io/en/stable/installing/
See here for configuring IAM policy for route53 - http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/access-control-managing-permissions.html

pip install awscli
aws configure
Installing awsdomainchecker: standard npm installation
npm install awsdomainchecker
Application integration: In your main app.js file, require this module
const awsdomainchecker = require('awsdomainchecker');

Running awsdomainchecker: After you require the module simply start your app

Running it is easy, anytime your main app starts awsdomainchecker will auto-start You should get the returned output:

awsdomainchecker listening on http://localhost:8135

Making changes to listening port

Locate the node_modules folder where you have my module 'awsdomainchecker', edit the index.js and change listening port

port = 8135;
app.listen(port);

See the neatly coded brains of my index.js

app.use(bodyparser.urlencoded({extended: true}));
app.use(bodyparser.json());



app.get('/', function(req, res){
    console.log('GET /')

  const html = fs.readFileSync('index.html');
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.end(html);
});

app.post('/', function(req, res){
    console.log('POST /');
    console.dir(req.body);
const route53domains = new AWS.Route53Domains();
res.writeHead(200, {'Content-Type': 'text/html'});

How to test Domain availability?

During testing, simply use curl to generate post request only specifying the domain name with top level domain. "domainname.tld".
You can add sanitization around this from your application UI side once running. Contributors to this project should also be looking forward to oauth integration coming soon, in the mean-time security is on you to sanitize for the time being.

curl -d "DomainName=domain.com" localhost:8135

You should get the returned output:

This Domain is: status <UNAVAILABLE> | <AVAILABLE>

More to come soon....
Invented By: Sulayman Touray {C.E.O SudirlayCoders}