Skip to main content

check_availability

Checks whether domains can be registered. It is the NameBeta search box as a tool: a full domain such as kettlory.com is checked on its own, and a bare label such as kettlory is expanded across the default TLD set and the domain hacks the search page shows.

Schema​

Input

FieldTypeRequiredConstraints
domainsstring[]Yes1–20 items; each 1–253 characters

Output

Returned as structuredContent, and repeated as JSON in a text content block.

FieldTypeRequiredConstraints
resultsobject[]Yes
results[].domainstringYes
results[].statusstringYesOne of available, taken, unknown, forsale, reserved, tld, sld, publicsuffix
results[].urlstringYesFormat uri

Behaviour​

  • Each entry in domains is handled separately, and the results are concatenated in input order.
  • An entry with a dot is checked as one domain and yields one result.
  • An entry without a dot is a bare label. It yields one result per default TLD (.com, .net, .org, .io, .ai and others), followed by domain hacks such as ke.tt. One label typically yields 10–20 results.
  • url opens the domain's page on namebeta.com, with prices and WHOIS.

Status values​

statusMeaning
availableCan be registered now
takenAlready registered
forsaleRegistered, but listed for sale
reservedHeld by the registry and not open for normal registration
unknownThe registry did not give a definite answer; check again later
tldThe input is a top-level domain itself, such as com
sldThe input is a second-level suffix such as co.uk, not a registrable domain
publicsuffixThe input is on the Public Suffix List and cannot be registered as a domain

Example​

Arguments:

{ "domains": ["kettlory"] }

Result, shortened:

{
"results": [
{
"domain": "kettlory.com",
"status": "available",
"url": "https://namebeta.com/search/kettlory.com"
},
{
"domain": "kettlory.io",
"status": "available",
"url": "https://namebeta.com/search/kettlory.io"
},
{
"domain": "kettlory.ai",
"status": "available",
"url": "https://namebeta.com/search/kettlory.ai"
},
{
"domain": "ke.tt",
"status": "available",
"url": "https://namebeta.com/search/ke.tt"
},
{
"domain": "k.et",
"status": "taken",
"url": "https://namebeta.com/search/k.et"
}
]
}

Quota​

A call counts once, whatever the length of domains. Which bucket it counts against depends on the input: if any entry is a bare label, the call counts against query, the same bucket as a search on the website; if every entry is a full domain, it counts against check.

ToolBucketFree (hour / day)Pro (hour / day)Business (hour / day)Enterprise (hour / day)
check_availability with any bare labelquery90 / 450360 / 1,800600 / 3,000Unlimited
check_availability with full domain names onlycheck45 / 135120 / 360300 / 900Unlimited

To check many specific names cheaply, send them as full domains in one call of up to 20.

Errors​

SituationResult
An entry is not a valid domain or labelTool error Invalid domain format; no results are returned for the call
Empty array, or more than 20 entriesTool error Input validation error: …
Quota exceededHTTP 429 with Retry-After; see Quotas and errors