PaidOne-Word Domains API
List expiring domains
GET/domains/expiringMember key
Catalog names expiring or expired, by expiry day.
Names in expiring or expired status, ascending by registry expiry, with the verified drop day when one is due.
AccessA member key (Founder or Investor) or a paid RapidAPI subscription to this API.
BillingOne call.
PlanInvestor plan. A Founder key answers 403
plan_required.FormatsJSON, CSV (
.csv)Keep a key on a server: a page a visitor loads shows it to everyone.
Connect on RapidAPIAlso inExpired Domains API
Request
endingstringOptionalQueryComma list of endings without the dot.
afterstringOptionalQueryExpiry on or after this day.
beforestringOptionalQueryExpiry before this day.
limitintegerOptionalQueryRows a page: 20 by default, at most 20 without a key and 100 with a paid subscription; a larger value is clamped.
cursorstringOptionalQueryThe meta.cursor of the previous page; the last page answers null.
fieldsstringOptionalQueryComma-separated top-level keys to keep; an unknown key answers 400 unsupported_field.
curl -X GET "https://api.unique.domains/v1/domains/expiring?ending=com%2Cio" \ -H "Authorization: Bearer YOUR_MEMBER_KEY"
const response = await fetch("https://api.unique.domains/v1/domains/expiring?ending=com%2Cio", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_MEMBER_KEY",
},
});
const data = await response.json();
console.log(data);import requests
response = requests.get(
"https://api.unique.domains/v1/domains/expiring?ending=com%2Cio",
headers={
"Authorization": "Bearer YOUR_MEMBER_KEY",
},
)
print(response.json())req, err := http.NewRequest("GET", "https://api.unique.domains/v1/domains/expiring?ending=com%2Cio", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_MEMBER_KEY")
res, err := http.DefaultClient.Do(req)$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => "https://api.unique.domains/v1/domains/expiring?ending=com%2Cio",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOUR_MEMBER_KEY",
],
]);
$response = curl_exec($ch);uri = URI("https://api.unique.domains/v1/domains/expiring?ending=com%2Cio")
request = Net::HTTP::Get.new(uri)
request["Authorization"] = "Bearer YOUR_MEMBER_KEY"
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(request) }Response
idstringnamestringendingstringstatusstringexpiresOnstringdropsOnstring | nullregistrarstring | nullpricenumber | nullErrors
{
"data": [
{
"id": "dom_c2b8a6f0-71e4-4b9a-a0d3-6e2f8c1b4d77",
"name": "meadow.net",
"ending": "net",
"status": "expiring",
"expiresOn": "2026-11-19",
"dropsOn": null,
"registrar": "GoDaddy.com, LLC",
"price": null
}
],
"meta": {
"asOf": "2026-11-05T08:00:00Z",
"cursor": null,
"limit": 20
},
"links": {
"self": "https://api.unique.domains/v1/domains/expiring?ending=com%2Cio",
"next": null,
"register": null,
"product": null,
"dataset": null
}
}