All Projects → mikemaccana → whois-json

mikemaccana / whois-json

Licence: other
Whois with results in actual, structured, camelCased JavaScript!

Programming Languages

javascript
184084 projects - #8 most used programming language

A wrapper for the excellent whois module, that returns results in actual, structured, camelCased JavaScript!

Build Status

Changes in version 2

Callbacks are no longer supported by this module - the module returns Promises and should be used with await.

Demo

(async function(){
	const whois = require('whois-json');

	var results = await whois('google.com');
	console.log(JSON.stringify(results, null, 2));
})()

Or to specify some options to the underlying whois module, use:

(async function(){
	const whois = require('whois-json');

	var results = await whois('google.com', {follow: 3, verbose: true});
	console.log(JSON.stringify(results, null, 2));
})()

Returns the following results. Note duplicate keys in whois results (like nameServer) are combined into a single result, seperated by space:

{
	"domainName": "google.com",
	"registryDomainId": "2138514_DOMAIN_COM-VRSN",
	"registrarWhoisServer": "whois.markmonitor.com",
	"registrarUrl": "http://www.markmonitor.com",
	"updatedDate": "2015-06-12T10:38:52-0700",
	"creationDate": "1997-09-15T00:00:00-0700",
	"registrarRegistrationExpirationDate": "2020-09-13T21:00:00-0700",
	"registrar": "MarkMonitor, Inc.",
	"registrarIanaId": "292",
	"registrarAbuseContactEmail": "[email protected]",
	"registrarAbuseContactPhone": "+1.2083895740",
	"domainStatus": "clientUpdateProhibited (https://www.icann.org/epp#clientUpdateProhibited) clientTransferProhibited (https://www.icann.org/epp#clientTransferProhibited) clientDeleteProhibited (https://www.icann.org/epp#clientDeleteProhibited) serverUpdateProhibited (https://www.icann.org/epp#serverUpdateProhibited) serverTransferProhibited (https://www.icann.org/epp#serverTransferProhibited) serverDeleteProhibited (https://www.icann.org/epp#serverDeleteProhibited)",
	"registrantName": "Dns Admin",
	"registrantOrganization": "Google Inc.",
	"registrantStreet": "Please contact [email protected], 1600 Amphitheatre Parkway",
	"registrantCity": "Mountain View",
	"registrantStateProvince": "CA",
	"registrantPostalCode": "94043",
	"registrantCountry": "US",
	"registrantPhone": "+1.6502530000",
	"registrantFax": "+1.6506188571",
	"registrantEmail": "[email protected]",
	"adminName": "DNS Admin",
	"adminOrganization": "Google Inc.",
	"adminStreet": "1600 Amphitheatre Parkway",
	"adminCity": "Mountain View",
	"adminStateProvince": "CA",
	"adminPostalCode": "94043",
	"adminCountry": "US",
	"adminPhone": "+1.6506234000",
	"adminFax": "+1.6506188571",
	"adminEmail": "[email protected]",
	"techName": "DNS Admin",
	"techOrganization": "Google Inc.",
	"techStreet": "2400 E. Bayshore Pkwy",
	"techCity": "Mountain View",
	"techStateProvince": "CA",
	"techPostalCode": "94043",
	"techCountry": "US",
	"techPhone": "+1.6503300100",
	"techFax": "+1.6506181499",
	"techEmail": "[email protected]",
	"nameServer": "ns4.google.com ns2.google.com ns1.google.com ns3.google.com",
	"dnssec": "unsigned",
	"urlOfTheIcannWhoisDataProblemReportingSystem": "http://wdprs.internic.net/",
	"lastUpdateOfWhoisDatabase": "2017-02-22T03:53:14-0800 <<<"
};

Send pull requests

Issues are cool, but PRs are better.

If you add features, add tests. Don't break the tests.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].