names.dev for platforms
The domain layer for software that launches companies.
Search, quote, register and connect a domain for every customer you launch, inside your own onboarding. One API, signed webhooks, a full sandbox, and your brand on every email. Your customers never see a DNS step.
The journey
From typed name to live site in minutes, in two clicks.
- 01
Search
POST /availabilityOne name across up to 20 endings, live
- 02
Quote
POST /quotesPrice, renewal and premium flag, held 15 minutes
- 03
Pay
Your checkoutYour brand pays you. We never bill them
- 04
Register
POST /domainsYour nameservers, privacy and auto-renew on
- 05
Confirm
domain.registeredSigned webhook the moment the registry confirms
- 06
Live
Your DNS zoneSite and email records in your own zone
Capabilities
One API. The whole lifecycle.
Anything a person can do in the names.dev workspace, your software can do by API. Every slow call returns an operation at once and finishes by webhook.
Availability
Live checks for one name or a hundred. Never a cached guess shown as available.
Suggestions
Alternatives from a brand name and a few keywords, each with status and price.
Premium and aftermarket
Registry premiums and marketplace listings in the same results, flagged by source.
Binding quotes
A quote id that holds price and availability for at least 15 minutes.
Registration
One async call: contacts, 2 to 13 nameservers, DS records, privacy, lock, metadata.
Nameservers and DNSSEC
Point a domain at your zone and manage DS records by API, with webhooks.
Renewals and grace
Auto-renew by default, 60/30/14/7/1-day warnings, restore from redemption.
Transfers
Transfer in with an auth code. Transfer out on request: no fee, no hostage-taking.
Webhooks
HMAC-signed, ordered per domain, retried for 72 hours, replayable by time range.
Sandbox
Fake registries and test money. Force success, failure, pending or expiry.
Billing
Prepaid balance, per-brand charges, refunds to balance, monthly statements.
White-label
Registry emails on your behalf, a copy to your support team, no upsells to your brands.
Built to be called thousands of times
Predictable, testable, safe to retry.
- Idempotency on every write. Retry a register after a timeout and you get the original result, never a second domain or charge.
- Stable error codes.
quote_expired,insufficient_balance,eligibility_required,registry_unavailablewith a retry hint, all before any charge when the cause is knowable. - Scoped keys per environment. Sandbox and live keys, rotation with no downtime, optional IP allowlists, never accepted in URLs.
- OpenAPI 3.1. Versioned under
/v1, with a changelog and 90 days’ notice before anything breaks.
// Names-Signature: key_id=whk_9f2c;v1=<hex> const expected = hmacSha256(secret, `${timestamp}.${rawBody}`); if (!timingSafeEqual(expected, signature)) throw new Error("bad signature"); if (event.sequence <= lastSeen[event.data.domain_id]) return; // stale, ignore
curl -X POST $NAMES/api/platform/v1/domains \ -H "Authorization: Bearer nd_test_..." \ -H "Idempotency-Key: brand_123" \ -H "Names-Sandbox-Outcome: fail:registry_timeout" \ -d @register.json
Ready for regulated launches
Clean, private and predictable under scrutiny.
Built first for telehealth platforms, where a domain step has to be compliant as well as fast.
- No patient data, ever. Schemas are closed and reject free text.
- Restricted endings like .pharmacy are refused before any charge, with a clear code.
- WHOIS privacy by default wherever the ending allows it.
- Trademark claims notices and a famous-mark screen before names are shown.
- Your brand is always the registrant. It can take its domain with it.
- An audit log of every write: key, time, request id and result.
Access
Start in the sandbox.
The API is in early access: sandbox keys go out by request as each platform is onboarded. They come with test money and forced outcomes, so your CI can run every onboarding path before a single real registration. Live access follows a short review. Wholesale pricing, billed to a prepaid balance.