Domain availability checker
Availability, registration dates, and WHOIS records.
API reference
Domain lookup over HTTP.
Query up to 100 domains per request. Accepts GET parameters or a POST JSON body.
GET /api/domain-check?domains=example.com,example.netExample response
{
"ok": true,
"data": {
"items": [
{
"domain": "example.com",
"status": "registered",
"registrar": "RESERVED-Internet Assigned Numbers Authority",
"domainCreatedAt": 808372800000,
"domainExpiresAt": 1786924800000,
"message": null
},
{ "domain": "example.net", "status": "available", "registrar": null, "domainCreatedAt": null, "domainExpiresAt": null, "message": null }
]
}
}Status: available, registered, unknown, unsupported, or invalid. Timestamps are milliseconds since epoch.
Common questions
About the lookup results.
How does the check work?
Every keyword is combined with each selected extension, then looked up against the registry's RDAP or WHOIS service. A registry answer of "no such domain" means the name is available; a full record means it is taken, and we show the registrar and dates.
What happens to spaces and capital letters?
Keywords are lower-cased, spaces and underscores become hyphens, and any character that cannot appear in a domain label is dropped. "Acme Tools" becomes acme-tools.com, acme-tools.net and so on. A keyword that already contains a dot is treated as a full domain and checked as-is.
Why does a domain show Unknown?
Some registries do not answer automated lookups, or did not respond in time. Unknown means we could not confirm either way — check that one manually at the registrar before buying.
Is there an API?
Yes. GET /api/domain-check?domains=a.com,b.net returns the same results as JSON. Up to 100 domains per request; separate them with commas or whitespace. POST with a JSON body { "domains": ["a.com", "b.net"] } works too.