FreeOne-Word Domains API

List domain hacks

GET/domains/hacksNo key

Domain hacks: names whose ending completes the word.

The domain hacks list. Free: the public hacks list, at most 20 rows, one page. Keyed: pages in a neutral column order with sort, else in the engine's own order.

AccessNo key. Limited per address; a key adds the paid fields.
BillingOne call.
FormatsJSON, CSV (.csv)

Connect on RapidAPI

Request

endingstringOptionalQuery

Comma list of endings without the dot.

statusstringOptionalQuery

Comma list of statuses: available, premium, resell, expiring, expired, taken, dormant, sold, unknown. Default: available, premium, resell.

lengthMinintegerOptionalQuery

Shortest word, in characters.

lengthMaxintegerOptionalQuery

Longest word, in characters.

shapestringOptionalQuery

Comma list of word shapes: single, properNoun, acronym, twoWords, phrase. properNoun is ignored on the free tier.

stylestringOptionalQuery

Comma list of styles: modern, elegant, slab, handwritten, playful, futuristic.

priceMaxnumberOptionalQuery

Highest price today, USD.

renewalMaxnumberOptionalQuery

Highest renewal, USD.

prefixstringPaidQuery

The word starts with.

containsstringPaidQuery

The word contains.

posstringOptionalQuery

Comma list of parts of speech: adjective, adjective satellite, adverb, conjunction, contraction, determiner, interjection, letter, noun, particle, pnoun, pnound, preposition, prepPhrase, pronoun, proverb, symbol, verb, unknown.

expiresBeforestringOptionalQuery

Registry expiry on or before this day.

sortstringPaidQuery

A neutral order: askPrice, price, renewal, seoRandomKey, domain; prefix - for descending. Without it, the engine's own order. No quality order exists.

limitintegerOptionalQuery

Rows a page: 20 by default, at most 20 without a key and 100 with a paid subscription; a larger value is clamped.

cursorstringPaidQuery

The meta.cursor of the previous page; the last page answers null.

fieldsstringOptionalQuery

Comma-separated top-level keys to keep; an unknown key answers 400 unsupported_field.

6 more parameters
curl -X GET "https://api.unique.domains/v1/domains/hacks?ending=com%2Cio&status=available&lengthMax=8&priceMax=50"

Response

idstring

dom_<uuid>.

namestring
endingstring
statusstring

The stored status of the row. One name's own answer groups it for a buyer: resell reads for_sale there (at_auction at a drop-catch venue), premium reads free_premium.

pricenumber | null

Price today, USD.

priceKindstring | null
renewalnumber | null
ratingBandstring | null

A simple band.

formatstring | null
shapestring | null
lengthinteger | null
coverageobject | null

The same word on other endings: available, premium, for sale.

valueobject | null

Keyed: the current estimate, USD.

upsidePercentnumber | null

Keyed.

liquiditystring | null

Keyed.

verdictobject

Keyed.

Errors

validation_failed400

A value is not valid

cursor_invalid400

The cursor is not valid

keyed_only403

A paid subscription is required

rate_limited429

Too many requests

internal500

Unexpected error

200 · application/jsonExample
{
  "data": [
    {
      "id": "dom_1d4f9b02-3c6a-4e8d-b7f1-0a2c5e9d3b18",
      "name": "del.icio.us",
      "ending": "us",
      "status": "taken",
      "price": null,
      "priceKind": null,
      "renewal": null,
      "ratingBand": "niche",
      "format": "hack",
      "shape": "single",
      "length": 9,
      "coverage": {
        "available": 0,
        "premium": 0,
        "forSale": 1,
        "unavailable": 2
      }
    }
  ],
  "meta": {
    "asOf": "2026-11-05T08:00:00Z",
    "cursor": null,
    "limit": 20
  },
  "links": {
    "self": "https://api.unique.domains/v1/domains/hacks?ending=com%2Cio&status=available&lengthMax=8&priceMax=50",
    "next": null,
    "register": null,
    "product": null,
    "dataset": null
  }
}

API status

Ask AI about Unique Domains