Skip to main content
POST
Add custom domain

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
domain
string
required

The domain to add, e.g. mail.acme.com. A subdomain is easiest to set up without affecting your existing mail.

Required string length: 4 - 253
podId
string | null

Pod to scope the domain to. Omit or null for an account-wide domain usable by any pod. A pod-scoped API key may only pass its own pod.

Response

Domain added; publish the DNS records to verify it

Domain added; publish the DNS records to verify it

id
string

OpenMail domain ID

domain
string

The domain or subdomain, e.g. example.com or agent-mail.example.com.

podId
string | null

Pod this domain is scoped to, so only inboxes in that pod can use it, or null for an account-wide domain.

status
enum<string>

pending — added, records not yet published. verifying — being checked. verified — sending and receiving enabled. failed — records missing or wrong; publishing them and calling verify again is the fix. under_review — flagged as suspicious; DNS setup is blocked until approved.

Available options:
pending,
verifying,
verified,
failed,
under_review
records
object[]

The DNS records to publish for this domain. Returned even where the values are the same for every customer, so sending infrastructure can change without breaking clients.

verifiedAt
string<date-time> | null
createdAt
string<date-time>
updatedAt
string<date-time>