Tools
Utility endpoints that make integration work less tedious. These don't mutate state — they're pure lookups and generators you can hit freely from your development environment.
Countries
Get the full list of countries with their ISO codes and phone calling codes. Useful when:
- Populating a country dropdown in your UI
- Validating user-supplied phone numbers against their country
- Looking up the
+CC.prefix for contact creation
Code
Code
The list is static and sorted alphabetically by name. It's built from the ITU country calling codes shipped with libphonenumber-js, so every code is guaranteed to be a valid E.164 country.
Generate Test Contact
For testing only
Most registrars require real, accurate WHOIS data — using fake contact data in production registrations is a policy violation and can get your accounts suspended or domains blocked. This endpoint exists for integration testing only: building out your API client, exercising the contact create flow in sandbox, regression tests, etc.
Never use the output of this endpoint for real domain registrations. Always collect real contact data from your end users before calling POST /v1/orders.
Generate a realistic fake INDIVIDUAL contact for use in testing. The generator picks a random country, produces a name / address / phone number that actually looks native to that country, and assigns an email from one of your verified mail domains.
The returned email is guaranteed unique — it's cross-checked against the contacts table before being returned, so you can directly pass it to POST /v1/clients/{clientId}/contacts without worrying about duplicates.
Code
Code
Forcing a specific email domain
By default the generator uses your first verified mail domain for the email. Pass emailDomain in the body to override:
Code
Fallback when no mail domains are configured
If the caller has no online mail servers and you don't pass emailDomain, the generator returns @mail.example as a clearly-non-deliverable placeholder. Swap it out before creating a real contact — the email has to belong to a domain you actually control.
Uniqueness guarantee
The generator runs a count query against the contacts table before returning. If the generated email already exists (unlikely — the generator appends 3 random digits to every name), it regenerates up to 10 times. After 10 collisions it appends an 8-hex suffix that makes collision astronomically unlikely.
Typical usage flow (testing only)
This example is for local/sandbox testing only. The generate-contact endpoint produces fake data that violates registrar WHOIS accuracy requirements — never feed it into POST /v1/orders against production registrar accounts.
Code
This is the quickest way to wire up an integration test against the API — start with an empty account, get a fully-populated client + registrant in seconds, exercise the rest of your flow against sandbox endpoints. Always swap in real contact data before touching production registrars.