New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

@torus-tools/domains

Package Overview
Dependencies
Maintainers
2
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@torus-tools/domains

A standrad promise-based SDK for managing nameserver and DNS operations accorss multiple domain name registrars

latest
Source
npmnpm
Version
0.0.14
Version published
Weekly downloads
1
-88.89%
Maintainers
2
Weekly downloads
 
Created
Source

Torus Tools - Domains

A promise-based javascript SDK that standarizes interactions with various different domain registrars providers.

Currently Supporting

  • AWS
  • Godaddy

If you are interested in adding new providers create the feature request and we will add it to our pipeline; or feel free to submit your own PR :sunglasses:

Records Format

the records parameter has the following format

{
  name:"example.com",  //traffic coming into (root domain or sub-domain)
  data: "192.0.2.44",  //route traffic to somewhere (an ip or resource ARN)
  type: "CNAME",  //type of record.
  ttl: 3600   //ttl for the record if required
  alias: true|false   //depending on this value the record will either have a resourceRecords attribute or an aliasTarget attribute in AWS
}

Record Types

  • A
  • AAAA
  • CAA
  • CNAME
  • MX
  • NAPTR
  • NS
  • PTR
  • SOA
  • SPF
  • SRV
  • TXT

API

The API standardizes operations accross different providers. As shown in the example below, all of the methods must be used in the format [PROVIDER].method

const {godaddy} = require('@torus-tools/domains')

godaddy.getNameservers('mydomain.com')
.then(data=> console.log(data))
.catch(err=>console.log(err))

getNameservers(domain)

  • description: gets the nameservers for a particular domain
  • params: (domain)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
  • returns: promise(resolve, reject)
    • resolve: (nameservers)
      • nameservers: an array of nameserver addresses
    • reject: (error)

updateNameservers(domain, nameservers)

  • description: updates the nameservers for a particular domain
  • params: (domain, nameservers)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
    • nameservers: ARRAY: REQUIRED: an array of nameserver strings
  • returns: promise(resolve, reject)
    • resolve: ('All Done')
      • nameservers: an array of nameserver addresses
    • reject: (error)

listRecords(domain)

  • description: Lists the records of a particular domain
  • params: (domain)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
  • returns: promise(resolve, reject)
    • resolve: ('All Done')
      • recordSet: an object with the record set of the given domain
    • reject: (error)

upsertRecords(domain, records)

  • description: It will create or update the specified records for a given domain. If one of the records exists it will updated, otherwise it will be created.
  • params: (domain, records)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
    • records: OBJECT: REQUIRED: the record set that includes:
      • Record name
      • Record type
      • Record data
      • Record ttl
  • returns: promise(resolve, reject)
    • resolve: ('All Done')
      • record: an array with the new record data that has been created or updated
    • reject: (error)

deleteRecords(domain, records)

  • description: deletes the specified records for a given domain.
  • params: (domain, records)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
    • records: OBJECT: REQUIRED: the record sets that will be deleted
  • returns: promise(resolve, reject)
    • resolve: ('recordSet deleted')
      • recordSet: an object with the record set hat has been deleted
    • reject: (error)

deleteAllRecords(doamin, records)

  • description: Deletes all DNS records for a given domain.
  • params: (domain)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
  • returns: promise(resolve, reject)
    • resolve: ('All recordSets deleted')
    • reject: (error)

createRedirect(domain, url)

  • description: creates a 301 redirect for the given domian to a specified url.
  • params: (domain, url)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
    • url: STRING: REQUIRED: the url address you want to redirect
  • returns: promise(resolve, reject)
    • resolve: ('All Done')
      • type: a string with the value "REDIRECT_PERMANENT"
      • url: a string for the redirect url address
    • reject: (error)

addRecord(domain, records)

  • description: It will add the specified records to the given domain.
  • params: (domain, records)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
    • records: OBJECT: REQUIRED: the record set that includes:
      • Record name
      • Record type
      • Record data
      • Record ttl
  • returns: promise(resolve, reject)
    • resolve: ('All Done')
      • record: an object with the record that has been added
    • reject: (error)

getZone(domain)

  • description: gets the DNS zone Id for a given domain.
  • params: (domain)
    • domain: STRING: REQUIRED: the root domain of your site i.e. yoursite.com
  • returns: promise(resolve, reject)
    • resolve: ('All Done')
      • HostedZones: An array with the hosted zone ID of given domain.
    • reject: ('no hosted zones exist for the given domain')

Keywords

torus

FAQs

Package last updated on 12 Sep 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts