Bulk WHOIS Lookup: Registrar, Age & Expiry avatar

Bulk WHOIS Lookup: Registrar, Age & Expiry

Pricing

from $3.00 / 1,000 completed rdap domain lookups

Go to Apify Store
Bulk WHOIS Lookup: Registrar, Age & Expiry

Bulk WHOIS Lookup: Registrar, Age & Expiry

Check up to 100 domains through structured RDAP. Get registrar, registration and expiry dates, calculated age and expiry risk, nameservers, domain status, and source URLs in one bounded bulk run.

Pricing

from $3.00 / 1,000 completed rdap domain lookups

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Bulk WHOIS Lookup checks up to 100 domains through public RDAP and returns one structured dataset record per completed domain. It gives domain operations, SEO teams, and AI agents the registrar, registration date, expiry date, calculated domain age, days until expiry, nameservers, status codes, and the source URL needed to act on a current registration snapshot.

Best fit

Use this Actor to prioritize a portfolio renewal review, enrich a vetted company-domain list, or confirm where a group of domains is registered before a migration. It is designed for a concise, source-linked batch of domains rather than a broad DNS inventory. After this check, pass domains approaching expiry into your renewal workflow or feed selected domains into a focused website, SEO, or contact-research tool.

From domain list to renewal queue

An operations lead starts with a list of customer domains, then runs a small batch at the default parallelism. Next, the lead filters expiryStatus for expires_soon, compares registrar names, and exports the source-linked records into the team’s renewal queue. The registration date and calculated age stay with the record, so later reviewers can distinguish a current RDAP snapshot from an older export.

Quick start input

{
"domains": ["example.com", "apify.com", "github.com"],
"concurrency": 3
}

domains accepts registrable domains and bare HTTPS domain URLs. The Actor normalizes case, trailing dots, and internationalized names before contacting RDAP.

Input reference

FieldTypeWhat it controls
domainsstring[]One to 100 domains for the batch. Every completed public RDAP response becomes one dataset record.
concurrencyintegerOne to five parallel public RDAP requests. Start at the default of three for a predictable public-source workflow.

What data you receive

Each dataset item represents one completed RDAP check. A found item contains fields the registry disclosed; a not_found item keeps the exact domain and provenance while its unavailable registration fields remain null. expiryStatus is calculated from the returned expiry date at collection time: expires_soon covers 0–30 days, and unknown means the registry did not supply an expiry date.

FieldMeaning
registrarName, registrarIanaIdRegistrar identity when exposed by the RDAP registrar entity.
createdAt, domainAgeDaysRegistration timestamp and whole UTC days since registration.
expiresAt, daysUntilExpiry, expiryStatusExpiry timestamp and calculated renewal priority.
nameservers, domainStatusesCurrent registry nameservers and status codes supplied by RDAP.
rdapSourceUrl, registryRdapUrl, collectedAtPublic provenance and collection time for the snapshot.
{
"runId": "abc123",
"domain": "example.com",
"lookupStatus": "found",
"registrarName": "RESERVED-Internet Assigned Numbers Authority",
"registrarIanaId": "376",
"createdAt": "1995-08-14T04:00:00.000Z",
"expiresAt": "2027-08-13T04:00:00.000Z",
"domainAgeDays": 11337,
"daysUntilExpiry": 348,
"expiryStatus": "active",
"nameservers": ["a.iana-servers.net", "b.iana-servers.net"],
"domainStatuses": [],
"rdapSourceUrl": "https://rdap.org/domain/example.com",
"registryRdapUrl": null,
"collectedAt": "2026-08-30T12:00:00.000Z",
"provider": "RDAP via rdap.org"
}

Terminal outcomes

Read OUTPUT or RUN_SUMMARY together with the dataset. COMPLETE means every planned domain persisted, PARTIAL retains completed records and lists the domains requiring a fresh pass, VALID_EMPTY means completed lookups returned no registration records, and INVALID_INPUT gives a direct domain-format correction. A public-source outage is reported as UPSTREAM_FAILED with a detailed summary for a later retry.

Use through the API

curl "https://api.apify.com/v2/acts/khadinakbar~bulk-whois-lookup/runs?token=$APIFY_TOKEN" \
-X POST \
-H "Content-Type: application/json" \
-d '{"domains":["example.com","apify.com"],"concurrency":2}'

Retrieve the default dataset after the run, then read OUTPUT and RUN_SUMMARY before triggering renewal or registrar-change actions. Keep rdapSourceUrl and collectedAt with downstream records for a verifiable collection trail.

Use with AI agents through Apify MCP

Check example.com, apify.com, and github.com with Bulk WHOIS Lookup. Return the registrar, registration age, expiry date, and days until expiry for each completed record. Read the terminal outcome first, preserve the RDAP source URL and collection time, and label unknown expiry fields as registry-unavailable rather than an expiry risk.

An AI agent can start with a small, specific domain list and use the compact terminal output to decide whether a fresh retry or a downstream renewal review is appropriate.

Pricing

Bulk WHOIS Lookup uses Pay per event plus Apify platform usage. An Actor-start event applies once per run, and a primary event applies after one completed RDAP domain record is persisted, including a truthful not_found response. The current live Pricing tab is the source of truth for event prices and platform-usage configuration. Set the run’s maximum charge budget before large batches and use the 100-domain input boundary to plan total events.

Best results

Start with domains you are authorized to review and use a small batch to confirm the registry coverage for your TLD mix. Keep the default concurrency for a steady public RDAP route, validate the lookupStatus before treating a record as a registration result, and schedule a fresh run when a renewal decision needs a current source snapshot.

Builder's note

I designed this Actor around structured RDAP events rather than screen-scraped WHOIS text. That keeps age and expiry calculations transparent: the output preserves the original event timestamps, the calculation fields, and the public source URL, while a registry-specific missing field remains visible as null instead of being guessed.

Focused standalone workflow

This Actor is designed as a focused standalone workflow for a bounded registrar, age, and expiry check. It works as the first verification step before a team creates a renewal queue, enriches an approved domain list, or opens a registrar migration project.

Responsible use

Use public registration data for lawful, authorized domain operations and comply with applicable laws, registry policies, and service terms. Treat each record as a timestamped public-source snapshot and confirm critical renewal decisions with the responsible registrar.