Browse the docs
Concepts
Domains
Register and verify a domain to receive email on every address at it. DNS records, verification status, catch-all routing and deletion.
A domain is the starting point for everything in Inboundr. Once you register and verify a domain you control, every address on it can receive mail that your code reads.
Setting up a domain#
Register
Add the domain in the console or with
POST /v1/domains. Inboundr creates an email identity for it and returns the DNS records to publish.Publish the DNS records
At your DNS host, add the MX record, which routes the domain's mail to Inboundr, and the DKIM CNAME records, which prove you own the domain.
Verify
Inboundr checks DNS again every few minutes. Once it sees the DKIM records, the domain's
statuschanges toverifiedand mail starts flowing. Fetching a pending domain through the API also triggers an immediate check.
Mail is accepted only for verified domains. Until the DNS records have propagated and the domain verifies, messages to it are rejected.
Verification status#
| Status | Meaning |
|---|---|
pending | The DNS records haven't been seen yet. Publish them and wait for propagation. |
verified | The DKIM records were found and receiving is on. |
failed | Verification failed. Check your records and try again. |
Catch-all routing#
A verified domain accepts mail on any address by default, so you don't have to create each address first. To deliver mail for addresses that have no route of their own, set the domain's catch-all to a webhook endpoint:
curl -X PATCH https://inboundr.net/api/v1/domains/dom_123 \
-H "Authorization: Bearer $INBOUNDR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "catchAllEndpointIds": ["ep_123"] }'The single-endpoint form, "catchAllEndpointId": "ep_123", also works. To turn
the catch-all off, pass [] (or "catchAllEndpointId": null). With no
catch-all, mail to an unrouted address is still parsed and stored, so you can
read it over the API and MCP, but no webhook is sent.
An address route for a specific address always takes precedence over the catch-all.
Deleting a domain#
Deleting a domain removes its email identity and stops processing its mail straight away. Emails already stored are kept, but nothing new is accepted.
Domains APIList, create, inspect and delete domains, and update the catch-all.