List domains
The domains you have registered, newest first.
apiKeyAuthorizationBearer <token>An API key from the Developers page. rhq_test_ keys reach the sandbox, rhq_live_ keys the live side.
limit?integerHow many to return
1 <= value <= 10025cursor?stringnextCursor from the previous page
status?stringpending: not yet finished at the registrar. pending_validation: registered and billed, held behind contact validation. active: registered and working. expired: past its expiry date, still renewable. redemption: past the renewal window, only a restore can save it. needs_reconciliation: the last registrar call is unknown. transferred_out: moved away to another registrar; no longer ours to renew or change. deleted: the registration was given up at the registrar and is no longer yours
"pending""pending_validation""active""expired""redemption""needs_reconciliation""transferred_out""deleted"customerId?stringOnly domains bought for this customer
autoRenew?stringtrue or false
expiringSoon?stringtrue for active domains expiring within 30 days
q?stringText to look for anywhere in the domain name
1 <= length <= 100Success
application/json- response
Success
data*array<>nextCursor*|Pass as cursor for the next page. null on the last page
total*integerHow many match across every page
0 <= valuecurl -X GET "https://example.com/v1/domains?customerId=cus_01K6XJ4Q8ZT3M9R5V2B7WDHNCA"{ "data": [ { "id": "dom_01K6XJ4Q8ZT3M9R5V2B7WDHNCA", "domain": "northwind-telecom.com", "status": "pending", "customerId": "cus_01K6XJ4Q8ZT3M9R5V2B7WDHNCA", "unitPrice": 1440, "customerPrice": null, "paidTotal": 1440, "registeredAt": "2026-10-07T11:04:31.000Z", "expiresAt": "2027-10-07T11:04:31.000Z", "nameservers": [ "ns1.example-dns.com" ], "customNameservers": true, "contact": { "name": "Jo Bloggs", "organization": "Northwind Telecom", "email": "[email protected]", "phone": "+1 415 555 0132", "address": "1 Market Street", "city": "San Francisco", "state": "CA", "postalCode": "94105", "country": "US", "validation": "pending" }, "contacts": { "admin": null, "tech": null, "billing": null }, "locked": true, "suspended": true, "privacy": true, "privacyPrice": null, "autoRenew": true, "dns": { "supported": true, "hosted": true, "dnssecSupported": true, "signed": true, "dsRecords": [ { "keyTag": 0, "algorithm": 0, "digestType": 0, "digest": "49FCE7" } ], "keys": [ { "flags": 256, "algorithm": 0, "publicKey": "string" } ] }, "actor": { "kind": "user", "label": "string" } } ], "nextCursor": null, "total": 1}Register a domain POST
Charges your wallet for the years asked for, plus WHOIS privacy for those years when it is on. Send an Idempotency-Key header so a retry can never register twice. The registrar can answer `pending`: the domain comes back with `status: "pending"` and the charge stays held until it finishes. A `coupon` is checked before the registrar is asked, so an order it cannot be used on is refused with nothing registered, unless you send `couponOptional`.
Forecast upcoming auto-renewals GET
What auto-renew will charge your wallet over the next 30 days: every domain with it on, due to renew inside that window, added up.