RDAP Domain Ownership & Expiry Monitor avatar

RDAP Domain Ownership & Expiry Monitor

Pricing

from $9.00 / 1,000 results

Go to Apify Store
RDAP Domain Ownership & Expiry Monitor

RDAP Domain Ownership & Expiry Monitor

Bulk-check domain registration data via RDAP protocol (WHOIS successor). Monitors ownership changes, expiry dates, and nameserver updates with optional webhook notifications.

Pricing

from $9.00 / 1,000 results

Rating

0.0

(0)

Developer

太郎 山田

太郎 山田

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

9 days ago

Last modified

Share

Monitor domain registration data at scale using the RDAP protocol (the official successor to WHOIS). Track ownership changes, expiry dates, nameserver updates, and registrar transfers across hundreds of domains — automatically.

What does this actor do?

This actor queries RDAP servers directly (via the IANA bootstrap) to retrieve structured domain registration data. Unlike WHOIS scrapers, RDAP is an official IETF standard (RFC 7480-7484) with JSON responses — meaning reliable, consistent data with zero anti-bot risk.

Key Features

  • 🔍 Bulk domain lookup — Check up to 500 domains per run
  • 🔄 Change detection — Automatically detects registrar, nameserver, expiry date, and status changes between runs
  • Expiry warnings — Get alerted when domains expire within your configured threshold
  • 🪝 Webhook notifications — Send results to Slack, Discord, or any webhook endpoint
  • 📊 Structured JSON output — Clean, consistent data ready for spreadsheets or databases
  • 🛡️ Zero anti-bot risk — RDAP is an open protocol; no CAPTCHAs, no blocks

Use Cases

WhoWhy
Domain investorsMonitor portfolio expiry dates and competitor domain changes
Brand protection teamsDetect unauthorized registrar transfers or nameserver hijacking
IT/Security teamsTrack domain configuration changes across your organization
M&A due diligenceVerify domain ownership and registration history

Input Example

{
"domains": ["example.com", "github.com", "google.com"],
"expiryWarningDays": 30,
"checkOwnership": true,
"delivery": "dataset",
"concurrency": 3
}

Output Example

Each domain returns a structured result:

{
"domain": "google.com",
"status": "initial",
"rdap": {
"registrar": "MarkMonitor Inc.",
"registrationDate": "1997-09-15T04:00:00Z",
"expiryDate": "2028-09-14T04:00:00Z",
"nameservers": ["ns1.google.com", "ns2.google.com", "ns3.google.com", "ns4.google.com"],
"status": ["client delete prohibited", "client transfer prohibited"],
"dnssec": false
},
"changes": [],
"warnings": [],
"checkedAt": "2026-02-21T06:40:17.813Z"
}

Change Detection

On subsequent runs, changes are automatically detected:

{
"status": "changed",
"changes": [
{
"type": "nameservers_changed",
"from": ["ns1.old.com", "ns2.old.com"],
"to": ["ns1.new.com", "ns2.new.com"]
}
]
}

How It Works

  1. Loads the IANA RDAP Bootstrap to find the correct RDAP server for each TLD
  2. Queries each domain's RDAP server with automatic rate limiting (500ms between requests)
  3. Parses the standardized JSON response into clean structured data
  4. Compares with previous run snapshots to detect changes
  5. Delivers results to Apify Dataset and/or webhook

Cost

This actor uses zero external APIs or proxies. You only pay for Apify compute time. A typical run checking 100 domains takes ~30 seconds.

Rate Limiting

Built-in rate limiting protects against RDAP server throttling:

  • 500ms minimum delay between queries
  • Automatic retry with exponential backoff on 429/503 errors
  • Configurable concurrency (1-10 parallel requests)

Commercial Ops

Set up .env first:

$cp -n .env.example .env

Cloud Task/Schedule setup (idempotent):

$npm run apify:cloud:setup

Daily reliability checks:

npm run canary:check
npm run contract:test:live

OpenClaw cron commands:

  • openclaw-cron-commands.md