Domain Availability API: Check Any Domain's Status With One HTTP Request
No API key. No signup. No SDK to install. Two plain HTTP GET endpoints — one for a single domain, one for up to 120 at a time — both backed by live RDAP lookups against the authoritative registry.
Two Endpoints, No Setup
Most "free" domain APIs require a signup, an API key, and a rate-limit dashboard before you can make your first call. This one doesn't. Both endpoints are plain HTTP GET requests that return JSON — paste the URL into a browser and you'll see the response.
| Endpoint | Use case | Limit |
|---|---|---|
/api/rdap?d=domain.com | Check one domain | 1 domain per request |
/api/batch?d=a.com,b.com,... | Check many at once | Up to 120 domains per request |
Single Domain: /api/rdap
curl "https://domainsearchking.com/api/rdap?d=example.com"
→ {"domain":"example.com","available":false}
available is true, false, or null if the check couldn't be completed. There is no separate "check availability" step to remember — the response IS the current registry state, queried at request time.
Batch: /api/batch
curl "https://domainsearchking.com/api/batch?d=example.com,anotherexample.com,thisnamelikelyavailable.com"
→ {
"results": {
"example.com": false,
"anotherexample.com": false,
"thisnamelikelyavailable.com": true
},
"n": 3,
"via": "c2-cache"
}
Pass up to 120 comma-separated domains in one request. The via field tells you which path answered the query (a caching proxy for speed, or a direct registry fallback if the proxy is unreachable) — useful for debugging, not something you need to branch on.
Code Examples
JavaScript (fetch)
const r = await fetch("https://domainsearchking.com/api/rdap?d=example.com");
const { domain, available } = await r.json();
console.log(domain, available ? "available" : "taken");
Python (requests)
import requests
r = requests.get("https://domainsearchking.com/api/rdap", params={"d": "example.com"})
data = r.json()
print(data["domain"], "available" if data["available"] else "taken")
Batch check in Python
import requests
domains = ["example.com", "anotherexample.com", "mycoolstartup.com"]
r = requests.get("https://domainsearchking.com/api/batch", params={"d": ",".join(domains)})
for domain, available in r.json()["results"].items():
print(domain, "available" if available else "taken")
Why RDAP Instead of WHOIS?
RDAP (Registration Data Access Protocol) is the structured, machine-readable successor to WHOIS. WHOIS returns free-text output whose format varies by registrar, which means you end up writing fragile regex to parse it. RDAP returns clean JSON directly from the authoritative registry, purpose-built for programmatic use. This API queries RDAP under the hood so you never have to parse WHOIS text yourself.
Rate Limits and Fair Use
Both endpoints are free with generous fair-use limits — no API key required for normal use. If you're building something high-volume or commercial, reach out about dedicated access rather than working around the limits; it keeps the free tier fast for everyone else.
Try It Right Now
Paste a domain into the URL below and see the live response in your browser.
Try /api/rdap → See the MCP versionFrequently Asked Questions
Is there a free domain availability API?
Yes. Domain Search King's /api/rdap and /api/batch endpoints check live domain availability via RDAP with no API key or signup required, within a fair-use free tier.
What's the difference between this API and the MCP server?
The REST API (/api/rdap, /api/batch) is for any programming language — plain HTTP GET requests returning JSON. The MCP server (/mcp) is specifically for wiring domain checks into AI agents like Claude or Cursor via the Model Context Protocol. Same underlying data, different integration method.
Does the API use RDAP or WHOIS?
RDAP — the modern, structured, machine-readable replacement for WHOIS. It queries the authoritative registry directly and returns a definitive registered/available answer.
How many domains can I check at once?
The batch endpoint accepts up to 120 comma-separated domains per request. For more, make multiple requests.
Is the data cached or live?
Live. Both endpoints set Cache-Control: no-store and query the registry (via a caching proxy for speed, with a direct-registry fallback) at request time.
Are there rate limits?
Yes, fair-use limits apply to keep the free tier fast for everyone. For high-volume or commercial use, contact Domain Search King about access.
Prefer a Visual Search?
Describe your business and browse AI-generated .com names that are RDAP-verified available right now.
Search on the homepage → Browse 290+ niches