Advanced API docs | Documentation | Reverse WHOIS API | WhoisXML API

Making requests

API endpoint

POST https://reverse-whois.whoisxmlapi.com/api/v2
It takes up to a minute to activate your account after the registration.

Note that the search results are limited to 10,000 records. If you'd like to get more relevant results, try optimizing your search query or using advanced search.

Postman collection

Postman is a desktop and web application that allows you to make requests to an API from a graphical user interface. We recommend using Postman with WhoisXML APIs endpoints when exploring the APIs functionality, as well as when you are troubleshooting issues with your application.

The WhoisXML API Postman collection is available at the following links:

The collection includes a preconfigured environment. You will need to set up the api_key variable to fire each request. Get your personal API KEY on the My products page. If you have questions related to the API, contact us.

POST request body sample

{
    "apiKey": "API_KEY",
    "searchType": "current",
    "mode": "purchase",
    "advancedSearchTerms": [{
        "field": "RegistrantContact.Organization",
        "term": "Airbnb, Inc.",
        "exactMatch": true
    },
    {
        "field": "RegistrantContact.Country",
        "term": "UNITED STATES",
        "exclude": true
    }]
}

Basic search requires less configuration and produces broader results. Advanced search allows searching through specific WHOIS fields.

You can provide up to four search terms within one request. With several search terms, the output includes domains matching all of them.

The search term includes an exact field of the domain's WHOIS record, one of the following:

Common fields

DomainName,
NameServers,
WhoisServer,
Status,
RegistrarName,
Email

The Email field allows to search against RegistrantContact.Email, AdminContact.Email, BillingContact.Email, TechContact.Email in one query.

Registrant contact fields

RegistrantContact.City,
RegistrantContact.Country,
RegistrantContact.Email,
RegistrantContact.Fax,
RegistrantContact.FaxExtension,
RegistrantContact.Name,
RegistrantContact.Organization,
RegistrantContact.PostalCode,
RegistrantContact.State,
RegistrantContact.StreetAddress,
RegistrantContact.Telephone,
RegistrantContact.TelephoneExtension

Admin contact fields

AdminContact.City,
AdminContact.Country,
AdminContact.Email,
AdminContact.Fax,
AdminContact.FaxExtension,
AdminContact.Name,
AdminContact.Organization,
AdminContact.PostalCode,
AdminContact.State,
AdminContact.StreetAddress,
AdminContact.Telephone,
AdminContact.TelephoneExtension

Billing contact fields

BillingContact.City,
BillingContact.Country,
BillingContact.Email,
BillingContact.Fax,
BillingContact.FaxExtension,
BillingContact.Name,
BillingContact.Organization,
BillingContact.PostalCode,
BillingContact.State,
BillingContact.StreetAddress,
BillingContact.Telephone,
BillingContact.TelephoneExtension

Technical contact fields

TechContact.City,
TechContact.Country,
TechContact.Email,
TechContact.Fax,
TechContact.FaxExtension,
TechContact.Name,
TechContact.Organization,
TechContact.PostalCode,
TechContact.State,
TechContact.StreetAddress,
TechContact.Telephone,
TechContact.TelephoneExtension

Headers

X-Authentication-Token

You can use this header or apiKey parameter for API calls.

Get your personal API KEY on My products page.

Input parameters for advanced search

For advanced search, instead of the basicSearchTerms block, use the advancedSearchTerms block of the following format:

advancedSearchTerms.field

Required. Which WHOIS field to search in.

advancedSearchTerms.term

Required. Search string. Case insensitive.

advancedSearchTerms.exclude

Optional. Boolean. Exclude the term if it should not be part of the search.

Acceptable values: false | true

Default: false

advancedSearchTerms.exactMatch

Optional. Boolean. Whether the field should exactly match the search term. If false, the field is allowed to contain a search term as a substring.

Acceptable values: false | true

Default: false

Note that, currently, the parameter is supported only for the following fields: NameServers, Status, RegistrantContact.Name, RegistrantContact.Organization, RegistrantContact.StreetAddress, AdminContact.Name, AdminContact.Organization, AdminContact.StreetAddress, BillingContact.Name, BillingContact.Organization, BillingContact.StreetAddress, TechContact.Name, TechContact.Organization, TechContact.Street

For all the other fields, it is ignored and interpreted as true.

Instead, you can use trailing wildcard search to find partial matches.

Wildcard Search

Please note that the number of wildcard requests is limited to 5 per minute.

You can use wildcards in order to search through specific fields. Note that leading and trailing wildcards cannot be used together for all the fields except "domainName". In this case, the trailing wildcard will be stripped out. For the "domainName" field, intermediate wildcards can't be used if both trailing and leading ones are present. In this case, the intermediate wildcard will be stripped out. Note that such queries might be slow.

{
    "apiKey": "API_KEY",
    "searchType": "current",
    "mode": "purchase",
    "advancedSearchTerms": [{
        "field": "RegistrantContact.Organization",
        "term": "Air*bnb*"
    }]
}

Example of using wildcards

{
    "apiKey": "API_KEY",
    "searchType": "current",
    "mode": "purchase",
    "advancedSearchTerms": [{
        "field": "DomainName",
        "term": "facebook."
    }]
}

- returns 0 domains

{
    "apiKey": "API_KEY",
    "searchType": "current",
    "mode": "purchase",
    "advancedSearchTerms": [{
        "field": "DomainName",
        "term": "facebook.*"
    }]
}

- returns more than 400 domains