Check domain availability

Checks availability of specific domain names via Server-Sent Events (SSE).

Use this endpoint when you have specific FQDNs to check, such as domains from a user's cart or watchlist.

Request format: {"domains": ["example.com", "test.net"]}

The response is streamed as SSE with the following event types:

  • check: Emitted for each domain with availability result (DomainCheck)
  • complete: Emitted when all checks finish (DomainCheckComplete)
  • error: Emitted if an error occurs during streaming
Permissions
Key type Accepted Permission required Notes
Org API key yes domain:read
Personal API key yes domain:read X-Org-ID is not required for this endpoint
Error Codes
Code HTTP Description
authorize.unauthenticated 401 No valid API key credentials
authorize.forbidden 403 Missing domain:read permission
request.decode_failed 400 Failed to decode request body
request.validation_failed 400 Request validation failed
domains.empty 400 Domains array is empty
domains.exceeds_max 400 Domains array exceeds 100
domain.invalid 400 Domain format is invalid
domain.tld_unknown 400 Domain has unknown TLD
domain.tld_disabled 400 Domain has disabled TLD
domain.check.stream_error 500 Streaming not supported
Body·CheckRequest
required
application/json

Domain check request with FQDNs

Request body for checking availability of specific domain names

  • domains
    Type: array string[] 1…100
    required

    Domains is an array of full domain names (FQDNs) to check. Each domain must include a TLD that is configured and enabled. Minimum 1, maximum 100 domains.

Responses
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for post/domains/check
curl https://api.nametrust.com/domains/check \
  --request POST \
  --header 'Content-Type: application/json' \
  --data '{
  "domains": [
    "example.com",
    "test.net"
  ]
}'
{
  "object": "domain_check",
  "domain": "example.com",
  "label": "example",
  "tld": "com",
  "available": true,
  "premium": false,
  "price": {
    "object": "domain_price",
    "class": "standard",
    "currency": "USD",
    "register": 12.99,
    "renew": 12.99,
    "transfer": 12.99
  },
  "reason": "already_registered",
  "checked_at": "2024-01-20T15:30:00Z"
}