Domains
Sending from your own domain is the highest-leverage deliverability move you can make. Here’s the whole walkthrough.
1. Add the domain
POST /v1/domains with { domain }. You’ll get back a verification token and the exact records to create.
2. Create the DNS records
Three records: a TXT token proving control, plus SPF, DKIM, and DMARC entries we generate for you. Copy-paste values, no selector archaeology. Then POST /v1/domains/:id/verify — we poll DNS with backoff and tell you specifically what’s missing if it fails.
3. Watch its health
Verification isn’t one-and-done: we re-check continuously and alert on regressions. Per-domain bounce and complaint rates live beside the status, so reputation is a number you watch, not a feeling you have.
Hosted domains (Vercel and friends)
Proving you control a *.vercel.app project doesn’t prove anything about DNS — so hosted verification maps sending to an Calder-managed subdomain instead of pretending otherwise. Honest mechanism, same deliverability. Vercel first; Netlify, Cloudflare Pages, and GitHub Pages adapters follow the same interface.
Next: the deliverability playbook.