Namegarage

API reference

Read the public domain catalog and search for names. No account or API key is needed.

API quickstart · Download OpenAPI JSON · Connect an AI assistant

Namegarage public domain catalog (1.0.0)

Anonymous read-only catalog and search. No account, API key, bearer token, or browser cookie is required.

Servers
https://namegarage.com

Endpoint details

GET /domains.json

List public domains for sale

Responses

200 — Public sales catalog

application/json

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false,
  "properties": {
    "base_url": {
      "type": "string"
    },
    "brand": {
      "type": "string"
    },
    "count": {
      "minimum": 0,
      "type": "integer"
    },
    "domains": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "buy_now": {
            "type": [
              "integer",
              "null"
            ]
          },
          "categories": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "deal": {
            "additionalProperties": false,
            "description": "A current or scheduled weekly offer. Its price applies only while starts \u003c= now \u003c ends; otherwise use buy_now.",
            "properties": {
              "ends": {
                "format": "date-time",
                "type": "string"
              },
              "price": {
                "type": "integer"
              },
              "starts": {
                "format": "date-time",
                "type": "string"
              }
            },
            "required": [
              "price",
              "starts",
              "ends"
            ],
            "type": "object"
          },
          "display": {
            "type": "string"
          },
          "low": {
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "path": {
            "type": "string"
          },
          "promotion": {
            "additionalProperties": false,
            "properties": {
              "ends": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "kind": {
                "enum": [
                  "regular",
                  "weekly",
                  "price_drop"
                ]
              },
              "minimum": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "next": {
                "additionalProperties": false,
                "properties": {
                  "price": {
                    "type": "integer"
                  },
                  "starts": {
                    "format": "date-time",
                    "type": "string"
                  }
                },
                "required": [
                  "starts",
                  "price"
                ],
                "type": [
                  "object",
                  "null"
                ]
              },
              "price": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "version": {
                "pattern": "^[a-f0-9]{64}$",
                "type": "string"
              }
            },
            "required": [
              "price",
              "kind",
              "minimum",
              "ends",
              "next",
              "version"
            ],
            "type": "object"
          },
          "regular_price": {
            "type": [
              "integer",
              "null"
            ]
          },
          "sld": {
            "type": "string"
          },
          "tier": {
            "enum": [
              "",
              "Platinum",
              "Gold",
              "Silver",
              "Bronze",
              "Bargain"
            ],
            "type": "string"
          },
          "tld": {
            "type": "string"
          },
          "visits": {
            "type": "integer"
          },
          "visits_through": {
            "format": "date",
            "type": "string"
          }
        },
        "required": [
          "name",
          "sld",
          "tld",
          "path",
          "tier",
          "buy_now",
          "categories",
          "low"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "priced_at": {
      "type": "integer"
    },
    "traffic_max_stale_days": {
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "brand",
    "base_url",
    "count",
    "traffic_max_stale_days",
    "domains"
  ],
  "type": "object"
}

Search the public domains by keyword or by meaning

Query parameters

q (required)
A domain, keyword, or description of the project the name should fit.
{
  "maxLength": 200,
  "minLength": 2,
  "type": "string"
}
max_price
Maximum current price in whole USD.
{
  "minimum": 1,
  "type": "integer"
}
tier
Limit matches to this pricing tier.
{
  "enum": [
    "Bargain",
    "Bronze",
    "Silver",
    "Gold",
    "Platinum"
  ]
}
tld
How the name ends: a TLD (com) or a longer suffix (co.uk), in ASCII (xn--p1ai) or Unicode; a leading dot is ignored.
{
  "type": "string"
}
max_length
Maximum name length.
{
  "maximum": 63,
  "minimum": 1,
  "type": "integer"
}
limit
Maximum number of matches to return.
{
  "default": 20,
  "maximum": 50,
  "minimum": 1,
  "type": "integer"
}

Responses

200 — Ranked matches with current prices

application/json

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false,
  "properties": {
    "count": {
      "minimum": 0,
      "type": "integer"
    },
    "meaning": {
      "enum": [
        "available",
        "unavailable"
      ]
    },
    "priced_at": {
      "type": "integer"
    },
    "query": {
      "type": "string"
    },
    "results": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "display": {
            "type": "string"
          },
          "fits": {
            "description": "The published use case or description this name matched; null when the match was by spelling only or the name\u0027s copy is withheld.",
            "type": [
              "string",
              "null"
            ]
          },
          "match": {
            "description": "exact: the query is the whole name or its first label; keyword: a match by spelling; meaning: a match by what the name is for.",
            "enum": [
              "exact",
              "keyword",
              "meaning"
            ]
          },
          "name": {
            "type": "string"
          },
          "price_usd": {
            "description": "Current price in whole USD, a running deal included; null for an offer-only name, which has no fixed price (make an offer on its page).",
            "type": [
              "integer",
              "null"
            ]
          },
          "regular_price_usd": {
            "description": "The usual price, present only while a discount is running.",
            "type": "integer"
          },
          "tier": {
            "type": [
              "string",
              "null"
            ]
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "url",
          "tier",
          "price_usd",
          "match",
          "fits"
        ],
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "query",
    "priced_at",
    "meaning",
    "count",
    "results"
  ],
  "type": "object"
}
400 — A parameter is invalid: {"error": "invalid_parameter", "parameter": <name>}
404 — Not this origin or path
429 — Busy; retry after the Retry-After header
503 — Prices cannot be verified right now ("prices_unverified") or search is unavailable; retry after the Retry-After header