FreeRegistrar Prices API

List price traps

GET/prices/trapsNo key

Endings whose cheapest first year renews at a trap price, alphabetical.

Free: the website hub's 8 rows. Paid: every trap, paged by ending. The count rides meta.trapCount.

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

Connect on RapidAPIAlso inDomain Price Comparison API

Request

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.

curl -X GET "https://api.unique.domains/v1/prices/traps"

Response

tldstring

Bare ending.

multiplenumber

The cheapest first year's renewal over that first year, one decimal.

cheapestYearOneobject
cheapestRenewalElsewhereobject

Errors

rate_limited429

Too many requests

internal500

Unexpected error

not_ready503

Not ready yet

200 · application/jsonExample
{
  "data": [
    {
      "tld": "xyz",
      "multiple": 8.1,
      "cheapestYearOne": {
        "registrar": "porkbun",
        "price": 1.98,
        "renewal": 16.06
      },
      "cheapestRenewalElsewhere": {
        "registrar": "cloudflare",
        "renewal": 11.28
      }
    }
  ],
  "meta": {
    "asOf": "2026-11-05T08:00:00Z",
    "cursor": null,
    "limit": 20
  },
  "links": {
    "self": "https://api.unique.domains/v1/prices/traps",
    "next": null,
    "register": null,
    "product": null,
    "dataset": null
  }
}

API status

Ask AI about Unique Domains