GET /domain/{domain}
Domain availability API
Find out whether a domain is registered.
Try it
{
"domain": "gmail.com",
"available": false,
?deep=true
}See a registration example
The registrar and registration dates. Included on paid plans.
Example · /domain/gmail.com?deep=true
{
"deep": {
"registration": {
"registered": true,
"created": "1995-08-13T04:00:00.000Z",
"updated": "2026-07-11T10:11:23.000Z",
"expires": "2027-08-12T04:00:00.000Z",
"registrar": "MarkMonitor Inc.",
"status": [
"client delete prohibited",
"client transfer prohibited",
"client update prohibited",
"server delete prohibited",
"server transfer prohibited",
"server update prohibited"
],
"dnssec": false
}
}
}1M requests · $20/mo. Get started
What comes back.
available
true if unregistered, false if taken, null if the registration check is unavailable
deep.registration
Registration details: registered, created, updated, expires, registrar, status, and dnssec. Omitted if unavailable
1
Pass a domain
Availability comes back on every call.
2
Read the result
Registered, unregistered, or unknown when the check is unavailable.
3
Get more context
Paid deep adds the registrar, registration dates, and status.
Coverage
Domain registration status. Paid deep adds registrar, dates, and status.
Check a domain's registration status. available is true when the registry reports no registration, false when it is registered, and null when the check is unavailable. Results are cached.
On paid plans, deep adds registration details: registrar, creation and expiry dates, and status. Use /dns/{domain} for DNS records or /mx/{domain} for mail routing.
SPEED
How long /domain takes.
Median time to first byte over the last seven days. Warm requests, measured every 30 minutes. Live verification and other request variants can take longer.
US
254ms
EU
489ms
APAC
257ms
LatAm
198ms
ME
204ms
Make your first request.
One key works across the APIs. Copy a request in your language and get JSON back.
curl "https://api.parseapi.com/domain/gmail.com" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Parse-Version: 2.0.0"// Example response · 200{"domain": "gmail.com", "available": false }
API referenceSDKsKeys and authentication
Every response field
Response fields
Deep fields
- deep.registration
- Registration details: registered, created, updated, expires, registrar, status, and dnssec. Omitted if unavailable
QUESTIONS
- What comes back on every call?
- The domain and available: true when the registry reports no registration, false when it is registered, or null when the check is unavailable.
- Can I register every domain marked available?
- Confirm with a registrar before checkout. An unregistered name can still be reserved or restricted by the registry.
- Is every call a fresh registry request?
- Registered results can be reused for up to one hour, and unregistered results for up to five minutes. After that, a lookup checks the registry again. If the check cannot complete, available returns null.
- What does deep add?
- Registration details: registrar, creation, update and expiry dates, status, and DNSSEC registration information. Deep is included on paid plans.
- Where do I look up DNS records?
- Use GET /dns/{domain} for DNS records and TTLs, or GET /mx/{domain} for the ordered mail server list.
Check one domain with the domain availability checker or a whole file with bulk domain lookup.
Is it taken?
Domain availability on every plan. Registration details on paid plans.
Start includes 1M API requests a month for $20/mo.