node package manager

dnsimple

DNSimple v2 API wrapper

Node JS DNSimple API Wrapper

A node client for the DNSimple API v2.

DNSimple provides DNS hosting and domain registration that is simple and friendly. We provide a full API and an easy-to-use web interface so you can get your domain registered and set up with a minimal amount of effort.

The dnsimple-node package requires node 6.0.0 or higher.

You must also have an activated DNSimple account to access the DNSimple API.

You can install this package directly from the github repo with npm install dnsimple/dnsimple-node.

Alternatively, install the latest stable version from NPM with npm install dnsimple.

This library is a nodejs client you can use to interact with the DNSimple API v2.

The DNSimple nodejs library uses promises exclusively, thus all client calls that call out to the DNSimple API will return a Promise. The examples below demonstrate basic usage.

var client = require('dnsimple')({
  accessToken: process.env.TOKEN,
});
 
// Fetch your details 
client.identity.whoami().then(function(response) {
  console.log(response.data);
}, function(error) {
  console.log(error);
});
 
// List your domains 
var accountId = '1010';
client.domains.listDomains(accountId).then(function(response) {
  console.log(response.data);
}, function(error) {
  console.log(error);
});
 
client.domains.listDomains(accountId, {page: 3}).then(function(response) {
  console.log(response.data);
}, function(error) {
  console.log(error);
});
 
// Create a domain 
client.domains.createDomain(accountId, "example.com").then(function(response) {
  console.log(response.data);
}, function(error) {
  console.log(error);
});
 
// Get a domain 
client.domains.getDomain(accountId, "example.com").then(function(response) {
  console.log(response.data);
}, function(error) {
  console.log(error);
});

Take a look at https://github.com/dnsimple/hello-domains-node for an example app that authorizes via OAuth and displays your domain list.

If you would like to test in the DNSimple sandbox environment then pass the 'baseUrl' option when creating the client:

var client = require('dnsimple')({
  baseUrl: 'https://api.sandbox.dnsimple.com',
  accessToken: process.env.TOKEN,
});

You will need to ensure you are using an access token created in the sandbox environment. Production tokens will not work in the sandbox environment.