Domain WHOIS & DNS Lookup – RDAP, Registrar & Domain Age avatar

Domain WHOIS & DNS Lookup – RDAP, Registrar & Domain Age

Pricing

from $2.20 / 1,000 domain looked ups

Go to Apify Store
Domain WHOIS & DNS Lookup – RDAP, Registrar & Domain Age

Domain WHOIS & DNS Lookup – RDAP, Registrar & Domain Age

Domain research and due diligence: registrar, creation and expiry dates, domain age, status, nameservers and DNS records (A/MX/TXT/NS) from official registry RDAP. No owner contact data.

Pricing

from $2.20 / 1,000 domain looked ups

Rating

0.0

(0)

Developer

Lepi Data

Lepi Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Domain WHOIS & DNS Lookup – RDAP, Registrar, Age

Registration and DNS details for domain research and due diligence, from the registries' own official RDAP services (the modern replacement for WHOIS). Give it up to 500 domains per run and get one clean row per domain: registrar, created, updated and expiry dates (domain age), status codes, nameservers, DNSSEC, plus the DNS records you pick (A, AAAA, MX, NS, TXT, CNAME, SOA).

This is not a domain availability checker. A name with no record comes back as a free not-found row, and that does not mean the name can be registered.

Acceptable use

The output may not be used for unsolicited marketing, spam, cold email, cold calls or any other outreach, or to contact domain owners. It contains no owner contact data, and the Actor is not designed to find any. Use it for portfolio and expiry tracking, security and brand-protection research, vendor and partner due diligence, IT inventory, and nameserver and DNS audits.

Limits per run

  • 500 domains per run.
  • .com and .net: at most 100 per run (free cap-reached rows past that), and a hard daily limit of 2,000 across all users of this Actor (UTC day). When the daily limit is used up, .com/.net domains still in the 24-hour cache are returned; the others come back as free daily-limit-reached rows. Run them again after 00:00 UTC.
  • Free-plan limit: Apify Free-plan runs can process about 33 domains per run (each domain uses 1 to 3 operations on the shared cache, limit 100 per run). Domains past that come back as free run-limit-reached rows. Paid plans get the full 500 domains per run.
  • Shared daily capacity: the shared cache has a daily limit across all users. If it is used up, the remaining domains come back as free service-busy rows; try again after 00:00 UTC.
  • During maintenance, a run returns a single free service-paused row and does nothing else.
  • Generic TLDs only (about 80% of them; not .shop or .art, among others). Country-code TLDs return free tld-not-supported rows.

How it works

  • Registry RDAP only. Each domain's registry RDAP server is found through IANA's official bootstrap file (https://data.iana.org/rdap/dns.json). Registrar RDAP servers are never queried, and port-43 WHOIS is never used.
  • No personal data. Rows are built field by field: only the registrar's name and IANA ID, dates, status, nameservers and the DNSSEC flag are kept. Registrant, admin, tech, billing and abuse contacts (names, emails, phones, addresses) are dropped, even when a registry publishes them. Email addresses inside TXT records are removed.
  • Polite. One request at a time to each registry, with a pause of at least 1 second between requests (longer if the registry's robots.txt asks). If a registry answers 429, the Actor waits as long as Retry-After asks and slows down for the rest of the run. Each registry's robots.txt is respected.
  • 24-hour cache. A domain looked up in the last 24 hours is answered from a cache instead of asking the registry again, so results can be up to 24 hours old.
  • DNS comes from the platform's own resolver by default. You can switch to Cloudflare's DNS-over-HTTPS; if you do, the hostnames you look up are sent to Cloudflare.

Input

  • domains (required): domain names or URLs, up to 500 per run. URLs are reduced to their hostname; Unicode names are converted to punycode.
  • dnsRecordTypes: any of A, AAAA, MX, NS, TXT, CNAME, SOA (default A, MX, NS). Leave empty for RDAP only.
  • dnsResolver: system (default) or cloudflare-doh.
  • onlyChangedSinceLastRun + stateKey: domains unchanged since your last run with the same stateKey are skipped and not charged.

Output

One row per domain. status tells you what the row is:

  • ok (paid): registrarName, registrarIanaId, createdAt, updatedAt, expiresAt, domainStatus, nameservers, dnssec, dns, dnsErrors, rdapServer, changeType, checkedAt.
  • Free status rows: invalid-domain, tld-not-supported, tld-disabled, not-found, cap-reached, daily-limit-reached, run-limit-reached, service-busy, service-paused, rdap-error, rate-limited, charge-limit-reached.

Example ok row (from a test run on Oct 11 2026):

{
"domain": "wikipedia.org",
"registeredDomain": "wikipedia.org",
"tld": "org",
"status": "ok",
"registrarName": "MarkMonitor Inc.",
"registrarIanaId": 292,
"createdAt": "2001-01-13T00:12:14.754Z",
"updatedAt": "2026-08-12T08:47:19.410Z",
"expiresAt": "2027-01-13T00:12:14.000Z",
"domainStatus": ["client delete prohibited", "client transfer prohibited", "client update prohibited"],
"nameservers": ["ns0.wikimedia.org", "ns1.wikimedia.org", "ns2.wikimedia.org"],
"dnssec": false,
"dns": {
"A": ["208.80.154.224"],
"MX": [{ "priority": 10, "exchange": "mx-in1001.wikimedia.org" }, { "priority": 10, "exchange": "mx-in2001.wikimedia.org" }],
"NS": ["ns0.wikimedia.org", "ns1.wikimedia.org", "ns2.wikimedia.org"]
},
"dnsErrors": null,
"rdapServer": "rdap.publicinterestregistry.org",
"changeType": "new",
"checkedAt": "2026-10-11T18:34:44.701Z"
}

Pricing

$2.20 per 1,000 domains with an ok row (pay per event domain), the same price on every Apify plan. Every status row is free. Set a maximum charge per run and the Actor stops cleanly when it is reached.

Not affiliated

This Actor is not affiliated with or endorsed by IANA, ICANN, Verisign or any domain registry or registrar. Their names are used only to describe the public RDAP services it reads.