Domain API (Whois & DNS) avatar

Domain API (Whois & DNS)

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Domain API (Whois & DNS)

Domain API (Whois & DNS)

Bulk WHOIS & RDAP lookup: registrar, dates, status, nameservers, contacts, DNSSEC and raw records. Accepts domains or URLs. Pay only for successful results.

Pricing

from $2.00 / 1,000 results

Rating

5.0

(1)

Developer

Clovys

Clovys

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 hours ago

Last modified

Categories

Share

What does Domain API do?

Domain API looks up WHOIS / RDAP registration data and live DNS records for any domain or URL - registrar, creation / update / expiry dates, status, nameservers, contacts (when not privacy-redacted), plus A / AAAA / MX / TXT / NS / CNAME / SOA / CAA, SPF and DMARC.

Paste a list of domains (or full URLs), run the Actor, and download clean JSON / CSV / Excel. Built for bulk runs (up to 100,000 domains) on lightweight compute (256 MB default). Large lists are auto-split into ~3,000-domain child runs on Apify, with auto-heal under registry rate limits.

This Actor is not affiliated with any registrar. WHOIS/RDAP disclosure varies by TLD and privacy laws - redacted contacts still count as a successful structured result.

Key features

  • Bulk domain lookup - up to 100,000 domains per run (invalid / duplicate inputs filtered before work starts)
  • Auto-sharding - runs above ~3,000 domains split into child runs; one parent dataset
  • Auto-heal - on rate limits / timeouts: backoff and lower concurrency
  • RDAP + classic WHOIS - merged registration fields (follow depth 1 or 2)
  • Lifecycle metrics - created / updated / expires, age days, days until expiry
  • Contacts - registrant / admin / tech / billing when published
  • Live DNS - A, AAAA, MX, TXT, NS, CNAME, SOA, CAA + SPF / DMARC
  • URL-aware input - paste https://www.example.com/path -> registrable hostname
  • Success-only billing - failed domains stay in the dataset with error, but are not charged
  • No expensive proxies - public registries + DNS; datacenter / no proxy is enough
  • Export anywhere - JSON, CSV, Excel, HTML from the Apify dataset

Why Clovys

Clovys is a nonprofit organization driven by a single mission: to make the internet safer, faster, more reliable, and universally accessible.

We believe that data should not be locked behind exorbitant paywalls or complex technical barriers. By building lightweight, highly optimized Apify Actors, we help developers, researchers, and organizations access the information they need to innovate without friction.

As a nonprofit initiative, we do not optimize for margins. Our pricing is kept as low as possible and is strictly calculated to cover the raw infrastructure costs of data extraction - such as Apify compute units and proxy bandwidth.

For Domain API specifically, Clovys ships a complete domain profile in one call: registration + live DNS, without browsers or residential proxies.

Use cases

  • Lead / media enrichment - domain age, registrar, expiry risk on large lists
  • Email auth checks - MX, SPF, DMARC in the same run as WHOIS
  • Security & OSINT - nameservers, DNSSEC, status codes, abuse contacts
  • Portfolio monitoring - track expiry windows across many domains
  • Due diligence - pair with traffic tools (e.g. SimilarWeb API) for a fuller footprint

How to use

  1. Open Domain API in Apify Console
  2. Paste domains or URLs in Domains or URLs
  3. Keep defaults (256 MB, DNS on, WHOIS follow 2)
  4. Click Start
  5. Download results from the Dataset tab

Input

FieldTypeDefaultDescription
domainsstring[]-Domains or URLs (required, up to 100,000)
maxConcurrencyinteger8Parallel lookups (1-30)
maxRetriesinteger2Retries on transient errors
includeRawbooleantrueAttach rawRdap + rawWhois
includeDnsbooleantrueLive DNS (A, MX, TXT, SPF, DMARC...)
whoisFollowinteger21 registry only, 2 registry + registrar
timeoutMsinteger10000Per-source timeout

Output example

You can download the dataset in JSON, HTML, CSV, or Excel.

{
"domain": "apify.com",
"registrar": "Example Registrar, Inc.",
"createdDate": "2015-03-01T00:00:00.000Z",
"expiresDate": "2027-03-01T00:00:00.000Z",
"ageDays": 3900,
"daysUntilExpiry": 400,
"status": ["clientTransferProhibited"],
"nameservers": ["ns1.example.com", "ns2.example.com"],
"dns": {
"a": ["93.184.216.34"],
"mx": [{ "exchange": "mail.example.com", "priority": 10 }],
"spf": "v=spf1 include:_spf.example.com ~all",
"dmarc": "v=DMARC1; p=none;",
"error": null
},
"registrant": { "organization": "REDACTED FOR PRIVACY", "redacted": true },
"sources": { "rdap": true, "whois": true },
"error": null
}

Failed domains still appear with error set - they are not billed.

Data fields

FieldDescription
domainNormalized hostname
registrar / registrarIanaIdSponsoring registrar
createdDate / updatedDate / expiresDateLifecycle dates
ageDays / daysUntilExpiryDerived metrics
statusEPP / RDAP status codes
nameservers / dnssecDelegation info
dnsLive DNS + SPF / DMARC
registrant / admin / tech / billingContacts when available
emails / phonesAggregated contacts
whoisFieldsFlattened classic WHOIS keys
rawRdap / rawWhoisFull raw payloads (if enabled)
errorError message if the domain failed

Pricing

Pay-per-event pricing (platform usage is billed separately by Apify):

EventWhen chargedPrice
resultEach successful domain written to the dataset$0.002 ($2 / 1,000)
Actor StartOnce when the run starts (scaled by memory GB)$0.001

Example: 1,000 successful domains ~ $2.00 in PPE result (+ Actor Start + Apify platform usage).

Only successful results are charged as result. Failed domains are free on the PPE event.

GoalSettings
Production / Store256 MB, concurrency 8, whoisFollow: 2, DNS on
Faster / leaner itemswhoisFollow: 1, includeRaw: false
WHOIS onlyincludeDns: false
Huge listsup to 100,000 domains - auto-shard handles the rest

FAQ

How many domains per run? Up to 100,000. Lists above ~3,000 are auto-split into child runs; invalid / duplicate inputs are dropped before sharding. Parallelism is controlled by maxConcurrency (respect registry rate limits).

What if a domain fails? It is stored with error. Other domains continue. Failed items are not billed as result.

Do I need expensive proxies? No. Domain API talks to public RDAP / WHOIS / DNS resolvers. No residential proxies required.

Why are contacts often empty? Many registries redact personal data (GDPR / privacy services). The structured row is still a successful paid result.

What does auto-heal do? On rate-limit waves it slows down and lowers concurrency so the run keeps progressing without hammering registries.

Support

Questions, bugs, or feature requests: use the Actor Issues tab on Apify, or contact Clovys through the Store profile.