REST API reference
Base URL: https://domainfind.ai. All endpoints are GET, return JSON, and support CORS. Authentication is optional: pass an API key via the x-api-key header (or Authorization: Bearer) for higher limits.
GET /api/v1/check
Verify a single domain.
| Param | Required | Description |
|---|---|---|
domain | yes | Full domain, e.g. examplebrand.ai |
curl "https://domainfind.ai/api/v1/check?domain=examplebrand.ai"POST /api/v1/bulk
Check a list of full domains (up to 50) in one request. Input parsing is deliberately tolerant: newlines, commas, semicolons, markdown bullets, numbering, and quotes are all stripped, and bare labels with no TLD default to .com.
| Body field | Required | Description |
|---|---|---|
domains | yes | Array of full domains, or one raw pasted string |
curl -X POST https://domainfind.ai/api/v1/bulk \
-H "content-type: application/json" \
-d '{"domains":["polynesianvoices.com","pacificvoice.ai","islandvoices.com"]}'Responses include per-domain results (same shape as /check) plus a summary of available/registered/unknown counts and a skipped list for tokens that were not valid domains. A GET ?domains=a.com,b.ai form is also supported for quick calls.
GET /api/v1/search
Sweep one keyword across TLDs.
| Param | Required | Description |
|---|---|---|
q | yes | Keyword / label without TLD |
tlds | no | Comma list; default com,ai,io,app,dev |
curl "https://domainfind.ai/api/v1/search?q=examplebrand&tlds=com,ai,io"Multi-word queries get concept_detected: true plus a suggest_url hint — literal concatenations of phrases are rarely what you want; use /api/v1/suggest for brandable candidates.
GET /api/v1/suggest
Generate availability-verified name candidates from a description.
| Param | Required | Description |
|---|---|---|
description | yes | Plain-English business description |
tlds | no | Comma list; default com,ai,io |
style | no | any · oneword · short (≤8 chars) · compound · playful · premium |
max_length | no | Hard cap on label length (3–20) |
Every candidate is scored for brandability (0–100: length, pronounceability, memorability) before any registry call; weak names are filtered out server-side. Responses include the brandability score per suggestion.
curl "https://domainfind.ai/api/v1/suggest?description=AI+voice+agents+for+dental+offices&style=oneword"POST /api/v1/shortlists
Create an unlisted, shareable shortlist at /s/{id}. No identity is stored.
| Body field | Required | Description |
|---|---|---|
domains | yes | Array of 1–20 full domains |
title | no | Display title (≤80 chars) |
curl -X POST https://domainfind.ai/api/v1/shortlists \
-H "content-type: application/json" \
-d '{"domains":["examplebrand.ai","examplebrand.com"],"title":"Project names"}'GET /api/v1/tlds
The full supported-TLD list with registry rules and the registrar price matrix.
Response envelope
{
"query_status": "SUCCESS",
...payload,
"usage": { "tier": "anonymous", "used": 3, "limit": 150 }
}- 200 — success (including degraded sub-features)
- 400 — missing/invalid parameters (an
examplefield shows correct usage) - 429 — daily limit reached; upgrade info in the body
Rate limits & keys
| Tier | Daily requests | How |
|---|---|---|
| Anonymous | 150 / IP | No key needed |
| Free | 500 | POST {"email"} to /api/keys |
| Pro | 10,000 | See pricing |
| Scale | 100,000 | See pricing |
Keys are shown once at creation and stored only as SHA-256 hashes. Availability semantics (methods, confidence scores) are documented in the MCP tool reference and apply identically to REST responses.