Domain WHOIS & DNS Lookup: Bulk Expiry & Availability avatar

Domain WHOIS & DNS Lookup: Bulk Expiry & Availability

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Domain WHOIS & DNS Lookup: Bulk Expiry & Availability

Domain WHOIS & DNS Lookup: Bulk Expiry & Availability

Bulk domain lookup: registrar, creation and expiry dates, domain age, availability, nameservers, DNSSEC, DNS records, SPF/DMARC and SSL certificate expiry. RDAP with WHOIS fallback.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Digitální produkty pro život

Digitální produkty pro život

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

17 hours ago

Last modified

Share

Domain WHOIS & DNS Lookup

Check hundreds of domains in one run and get everything that matters in one clean table: registrar, creation date, expiry date, domain age, availability, nameservers, DNSSEC, DNS records, e-mail security (SPF/DMARC) and SSL certificate expiry.

You can paste domains, full URLs or e-mail addresses. They are reduced to the registrable domain automatically, so https://shop.example.co.uk/page becomes example.co.uk and info@firma.cz becomes firma.cz.

What you can use it for

  • Domain portfolio and expiry monitoring: catch domains and SSL certificates before they expire. Schedule it weekly.
  • Lead qualification and enrichment: domain age, mail provider (MX) and hosting signals for a list of company websites.
  • Fraud and phishing checks: flag freshly registered domains.
  • Domain investing: check availability and the age of many names at once.
  • E-mail deliverability audits: see which domains lack SPF or have no DMARC policy.
  • IT and security inventories: nameservers, DNSSEC, certificate issuer and validity across all your company domains.

How it works

  1. RDAP first. RDAP is the official, structured successor of WHOIS, used by .com, .net, .org, .cz, .uk, .pl, .fr, .nl, .app, .dev and 1,200+ other TLDs.
  2. WHOIS fallback for TLDs without RDAP (for example .io, .sk, .de, .eu, .at, .co, .ch, .it), with the right registry server found automatically through IANA.
  3. DNS via public resolvers: A, AAAA, MX, NS, SPF and DMARC.
  4. SSL via a direct TLS handshake on port 443 (falls back to www.).

Output example

{
"domain": "apify.com",
"registered": true,
"registrar": "Amazon Registrar, Inc.",
"registrarIanaId": "468",
"createdDate": "2009-06-02T17:08:12.000Z",
"expiryDate": "2035-06-02T17:08:12.000Z",
"domainAgeDays": 6337,
"daysUntilExpiry": 3159,
"statuses": ["client transfer prohibited"],
"nameservers": ["ns-1.awsdns-00.com", "..."],
"dnssec": true,
"registrantCountry": null,
"source": "rdap",
"error": null,
"dns": {
"a": ["..."],
"mx": [{ "exchange": "aspmx.l.google.com", "priority": 1 }],
"ns": ["..."],
"spf": "v=spf1 include:_spf.google.com -all",
"spfAll": "-",
"dmarc": "v=DMARC1; p=reject; ...",
"dmarcPolicy": "reject"
},
"ssl": {
"host": "apify.com",
"valid": true,
"issuer": "Amazon",
"validTo": "2027-01-16T23:59:59.000Z",
"daysUntilExpiry": 100
}
}

registered: false means the registry reports the domain as not registered, so it is probably available. null means the registry did not give a clear answer. The reason is in error.

Privacy by design

The Actor returns no personal contact data: no registrant names, e-mails, phone numbers or street addresses, even when a registry publishes them. Only the registrant's country is kept when available. This keeps your results GDPR-friendly.

Pricing

Pay per domain looked up, with DNS and SSL included in the same price. Set Maximum cost per run to stay within budget, and the Actor stops cleanly at the limit.

Tips

  • Some registries (for example DENIC for .de) publish only nameservers and status, not dates. That is a registry policy, not an error.
  • WHOIS servers throttle aggressive clients. For thousands of ccTLD domains keep Parallel lookups at 3 to 5.

How to use it via API

You can run the Actor from the Apify Console, on a schedule, or from your own code. Get your API token in Apify Console → Settings → Integrations.

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("digitalni.produkty.pro.zivot/domain-whois-lookup").call(run_input={
"domains": [
"apify.com",
"example.org"
]
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript / Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('digitalni.produkty.pro.zivot/domain-whois-lookup').call({
"domains": [
"apify.com",
"example.org"
]
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Integrations and AI agents

  • Export results as JSON, CSV, Excel, XML or HTML, or open them directly in Google Sheets.
  • Connect to Make, Zapier, n8n, Slack, Google Drive, Airbyte or any webhook to get WHOIS/RDAP, DNS and SSL data for a list of domains into your workflow automatically.
  • Use it from AI agents and LLM apps (Claude, ChatGPT, Cursor, LangChain…) through the Apify MCP server: the agent can call this Actor as a tool.
  • Schedule runs (hourly, daily, weekly) to keep data fresh without any code.

FAQ

How much does it cost? $2 per 1,000 domains, with DNS records and SSL certificate checks included. Checking a portfolio of 200 domains costs $0.40.

Which domain endings are supported? All TLDs with RDAP (most generic and many country TLDs), with a classic WHOIS fallback for others, e.g. .com, .net, .org, .io, .co, .de, .cz, .sk, .eu.

Can I monitor domain and SSL expiry? Yes. Schedule a run weekly and filter the results by days until expiry, or send them to Google Sheets or Slack via integrations.

Does it return personal data of domain owners? No. Registrant personal data is not collected, only technical and registrar information.

More tools from the same developer

All tools with code examples: github.com/Phenixik/apify-actors

Support

Found a TLD that is parsed incorrectly? Open an issue with the domain and we will fix it quickly.