# WHOIS API — $0.0005 per domain

> WHOIS API: Domain registration data over RDAP — registrar, dates, status, nameservers. $0.0005 per delivered domain, nothing delivered means nothing charged.

[Home](https://quanticdata.io/)/[Collectors](https://quanticdata.io/collectors/)/*WHOIS API*

# WHOIS API

A WHOIS API built on RDAP, the structured successor to the whois protocol. Pass up to 25 domains and each resolves through its TLD's authoritative registry into one row: registrar with its IANA id, creation, expiry and last-update dates, EPP status codes, delegated nameservers and whether the DNSSEC delegation is signed. Domains that fail to resolve are reported under failed and never billed.

[Get my free API key](https://app.quanticdata.io/register) [See the request](/collectors/whois-api/#integration)

$0.0005 per delivered domain · $2 free every month · Failed runs never billed

POST /v1/scraper/collectors/whois_domain/run

```
$ curl $QD/whois_domain/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{}'
{ "status": "done", "count": 10,
  "results": [
    {
      "domain": "…",
      "registrar": "…",
      "registrar_iana_id": "…",
      "created": "…" } ],
  "cost": 0.005 }
# 10 domains × $0.0005 · nothing delivered, nothing charged
```

**$0.0005 / domain**4,000 domains on the free $2 every month

**Semantic input**domains, max_results — no URL lists

**Up to 25**domains per run, pagination handled for you

**No browser**read over HTTP/TLS — cheaper and faster than rendering

On this page: [What it is](/collectors/whois-api/#what) [Output fields](/collectors/whois-api/#output) [Inputs](/collectors/whois-api/#input) [Pricing](/collectors/whois-api/#pricing) [Integration](/collectors/whois-api/#integration) [Use cases](/collectors/whois-api/#use-cases) [Versus the alternatives](/collectors/whois-api/#compare) [FAQ](/collectors/whois-api/#faq)

## What a WHOIS API does

Classic port-43 whois is free and useless at scale: every registry formats its text differently, and the ports are throttled. An RDAP API answers the same domain lookup in structured JSON from the authoritative source — dates as dates, status as codes — and this routes each TLD to the right registry through rdap.org so you never maintain a server list.

Bulk WHOIS is the actual workload: a list of domains in one call, each row ready to score. `created` gives domain age for fraud and lead models, `expires` drives renewal monitoring, `status` exposes transfer locks, and `nameservers` plus `dnssec` sketch the infrastructure — five signals from one lookup.

Input is meaning, not a URL *domains* *max_results*

## What one domain looks like

Every delivered domain carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

| Field | Type | What it holds |
| --- | --- | --- |
| `rank` | integer | 1-based position. |
| `domain` | string | Domain. |
| `registrar` | string · nullable | Registrar name. |
| `registrar_iana_id` | string · nullable | IANA registrar id. |
| `created` | string · nullable | Registration date. |
| `expires` | string · nullable | Expiration date. |
| `updated` | string · nullable | Last change. |
| `status` | string[] | EPP status codes. |
| `nameservers` | string[] | Delegated nameservers. |
| `dnssec` | boolean · nullable | DNSSEC delegation signed. |
| `url` | string | RDAP record URL. |

## Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

| Input | Type | Required | What it does |
| --- | --- | --- | --- |
| `domains` | array | yes | Bare domains or URLs. |
| `max_results` | integer | no | How many domains to deliver at most (1–25). You pay only for delivered domains. |

Pricing

## WHOIS API pricing

$0.0005 per delivered domain. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 4,000 domains before you spend anything.

**$0.0005**per delivered domain*$0.5 per 1,000 delivered domains*

**4,000 domains**on the free allowance*$2 every month, no card*

**Zero rows**zero charge*blocks, captchas and retries are on us*

**−30%**on volume tiers*the catalog returns your key's price*

### Pay as you go

$0/mo

- $2 free credit / month

- 60 requests / min

- List unit prices

### Starter

$19/mo

- $15 free credit / month

- 300 requests / min

- 10% off unit prices

Most popular

### Growth

$79/mo

- $50 free credit / month

- 600 requests / min

- 20% off unit prices

### Scale

$299/mo

- $250 free credit / month

- 1,200 requests / min

- 30% off unit prices

Same wallet, same key and same $2 monthly allowance as every other [Data API](https://quanticdata.io/web-data-api-for-ai/). Prices are launch pricing read live from the billing config — `GET /v1/scraper/collectors` returns the price your key actually pays.

Integration

## One POST, typed rows

Base URL `https://api.quanticdata.io/v1`, Bearer auth, the same key as every other Data API. Endpoint: `POST /v1/scraper/collectors/whois_domain/run`.

```
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/whois_domain/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

```
import requests

r = requests.post(
    "https://api.quanticdata.io/v1/scraper/collectors/whois_domain/run",
    headers={"Authorization": f"Bearer {QD_API_KEY}"},
    json={},
    timeout=120,
)
for row in r.json()["payload"]["results"]:
    print(row)
```

```
const res = await fetch(
  "https://api.quanticdata.io/v1/scraper/collectors/whois_domain/run",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.QD_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({}),
  },
);
const { payload } = await res.json();
console.table(payload.results);
```

```
claude mcp add quantumproxies \
  -e QUANTUMPROXIES_API_KEY=qd_live_your_key_here \
  -- npx -y quantumproxies-mcp

# then, in the chat:
> run the whois_domain collector with
```

## What people build with the WHOIS API

Three shapes of work this endpoint was designed around.

### Domain-age scoring

Join the `created` date onto signup or lead data — a domain registered last week reads very differently from one registered in 2009.

### Expiry monitoring

Sweep a portfolio and sort by `expires` to see which registrations need attention, with the registrar on the same row.

### Infrastructure attribution

Registrar and nameserver columns group a set of domains by operator, which is how related sites cluster in an investigation.

## WHOIS API versus rolling your own

The differences that actually cost time when you build this in-house.

|  | DIY scraper | This collector |
| --- | --- | --- |
| Source protocol | Port-43 text, a different format per registry | RDAP JSON from the authoritative registry |
| Bulk lookups | One domain at a time against throttled ports | Up to 25 domains per call, failures unbilled |
| Registry routing | Track each TLD's server yourself | Resolved automatically through rdap.org |

## FAQ

Questions we get about the WHOIS API.

[Something else? Ask us →](mailto:hello@quanticdata.io)

### Is there a free WHOIS API behind this?

The registries' RDAP endpoints are open at origin, yes — the work this sells is the routing, the normalising and the row shape. You send domains, you get uniform registration rows, and domains that do not resolve cost nothing.

### What is RDAP and why use it instead of classic WHOIS?

RDAP is the IETF's replacement for the whois protocol: the same registration data, served as structured JSON by each TLD's authoritative registry rather than as throttled free text on port 43. That is what makes fields like `created` and `status` storable without a parser per registry.

### Does the row include the domain owner's contact details?

No — rows carry the registrar, the dates, EPP status codes, nameservers and the DNSSEC flag. Registrant contact data is redacted by most registries these days, so no collector can honestly promise it, and this one does not.

### Is there a free WHOIS API?

Every account gets $2 of credit every month with no card, which is about 4,000 delivered domains on this endpoint at $0.0005 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

### How much does one run cost?

Multiply the rows you actually receive by $0.0005. A run capped at 25 domains — the maximum for this collector — costs $0.013 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and `GET /v1/scraper/collectors` returns the price your key actually pays.

## Run the WHOIS API now

$2 of free credit every month, no card. Your key returns its own prices from `GET /v1/scraper/collectors`.

[Get my free API key](https://app.quanticdata.io/register)

Related: [All 74 collectors](https://quanticdata.io/collectors/) [DNS lookup API](https://quanticdata.io/collectors/dns-lookup-api/) [Certificate transparency API](https://quanticdata.io/collectors/certificate-transparency-api/) [Wayback Machine API](https://quanticdata.io/collectors/wayback-machine-api/) [Documentation](https://quanticdata.io/docs/)

---

Source: https://quanticdata.io/collectors/whois-api/ · Site index for AI: https://quanticdata.io/llms.txt
