Skip to Content
📘 Infrabox developer docs — API reference for mailbox & domain infrastructure.
API ReferenceDomains & DNS

Domains & DNS

Search, register, and manage the lifecycle of sending domains you buy through Infrabox — including DMARC, forwarding, catch-all, nameservers, and renewals. (If you already own a domain and just want to point it at Infrabox without changing registrars, see Cloudflare Domains instead.)

Domains

MethodPathDescription
POST/v1/api/domains/searchSearch available domains by keyword/TLD
GET/v1/api/domains/availableCheck if a specific domain name is available
GET/v1/api/domains/bannedCheck if a domain is banned from registration
POST/v1/api/domains/registerRegister domain(s)
GET/v1/api/domains/listList domains in the workspace
GET/v1/api/domains/assignableList domains assignable to mailboxes/orders
POST/v1/api/domains/removeRemove domain(s)
POST/v1/api/domains/dmarcSet DMARC policy
DELETE/v1/api/domains/dmarcRemove DMARC policy
POST/v1/api/domains/forwardingSet or remove domain (URL) forwarding
POST/v1/api/domains/email-forwardingSet email forwarding
DELETE/v1/api/domains/email-forwardingRemove email forwarding
POST/v1/api/domains/catch-allSet catch-all email address
DELETE/v1/api/domains/catch-allRemove catch-all
POST/v1/api/domains/nameserversCreate custom nameservers
POST/v1/api/domains/nameservers/check-propagationCheck nameserver propagation
POST/v1/api/domains/nameservers/regenerateRegenerate nameservers after expired propagation
POST/v1/api/domains/sync-nameserversSync nameservers at the registrar
POST/v1/api/domains/check-workspace-availabilityCheck whether domains are free to use in this workspace

Register a domain

curl -X POST https://api.infrabox.software/v1/api/domains/register \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "X-Workspace-Id: YOUR_WORKSPACE_UID" \ -H "Content-Type: application/json" \ -d '{ "domains": [{ "name": "yourdomain.com", "registration_years": 1 }], "dmarc_email": "[email protected]", "contact_details": { "first_name": "John", "last_name": "Doe", "email": "[email protected]", "phone": "+1234567890", "address_line1": "123 Main St", "city": "New York", "state": "NY", "country": "US", "postal_code": "10001" }, "use_wallet_balance": true }'

contact_details becomes the domain’s WHOIS/registrant record — registrars require real values. Set use_wallet_balance: true to pay from your wallet instead of a per-transaction Stripe charge.

For “register a domain and immediately create mailboxes on it,” use POST /v1/api/orders instead — it wraps registration and mailbox creation into one call and one status object.

DNS

MethodPathDescription
GET/v1/api/dns/listGet DNS records for a domain
POST/v1/api/dns/addAdd DNS record(s)
POST/v1/api/dns/updateUpdate DNS record(s)
POST/v1/api/dns/deleteDelete DNS record(s)
POST/v1/api/dns/verifyVerify DNS records resolve as expected
POST/v1/api/dns/repairRepair DNS records that have drifted

DNS endpoints only apply to domains registered through Infrabox (or connected via Cloudflare Domains) — Infrabox needs to control the zone to write records.

Domain Renewals

MethodPathDescription
GET/v1/api/domains/renewals/statusGet renewal status for a domain
POST/v1/api/domains/renewals/requestRequest a renewal

Registrar Connections

Bring your own registrar credentials so domains registered elsewhere can still be managed through Infrabox.

MethodPathDescription
GET/v1/api/registrar-connectionsList saved registrar connections
POST/v1/api/registrar-connectionsSave or update a registrar connection

Errors

StatusMeaning
400Invalid body, or domain not available/already registered
401Missing/invalid API key
404Domain or workspace not found
500Internal error
Last updated on