What’s new
Besides sending from a verified domain, you can receive messages sent to@yourdomain.com (or a registered subdomain). The flow uses MX in your DNS zone, inbound processing on the platform, and the email.received webhook event.
Prerequisites
- Domain registered and VERIFIED for sending (provedor de e-mail da plataforma per platform setup).
- MX record on the domain (or subdomain) pointing to Notifique’s inbound host — see
inboundDnsRecordsin the API or dashboard when adding the domain. - Email channel enabled under Settings → Received messages.
- Webhook subscribed to
email.received(for backend automation).
By default, when you enable inbound email, the platform sends webhooks and does not persist messages in the dashboard (avoids inbound storage charges). Turn on Persist in channel settings to see emails under Emails → Received.
Query via API
When Persist is on, list received emails with scopeemail:inbound:read:
q, domainId, dateFrom, dateTo. See Received emails in the Email tab.
With domainIds on the key, listing only includes emails from allowed domains. Invalid domainId → 400; domain not on key → 403; detail for forbidden domain → 404.
DNS for inbound
On create, list, get, or verify domain responses,data includes:
Inbound MX example:
POST /v1/email/domains/:id/verify until verification.records shows the MX as verified when applicable.
Dashboard setup
- Settings → Channels → Email (or Received messages): enable Email.
- Default actions:
- Send webhook — fires
email.received(default when enabling). - Persist — stores in the dashboard (Received tab); may charge inbound storage per plan.
- Send webhook — fires
- Developer → Webhooks: add or edit a webhook and select
email.receivedunder Email. - Optional: restrict by email domain on the webhook.
email.received event
Fires when an inbound email is accepted and processed per workspace actions (webhook, persist, or both).
Full payloads and outbound events: Webhook events.
Dashboard inbox
With Persist enabled:- Emails → Received lists inbound messages.
- Detail view shows HTML/text preview, metadata, MIME Message-ID, threading (
In-Reply-To,References), and timeline. - Reply opens the composer with recipient,
Re:subject, and thread headers.
GET /v1/email/inbound and GET /v1/email/inbound/:id with scope email:inbound:read. The dashboard uses the session API (/app/email/inbound) with the same behavior.
Reply with threading
On send (POST /v1/email/messages), use headers with allowed MIME headers:
In-Reply-To,References,Message-ID,X-Entity-Ref-ID
Domain verification (send + inbound)
POST /v1/email/domains/:id/verify returns verified, code, plus:
verificationSummary— human-readable per-provider status.data.verification— structuredproviders,records, and per-record status.
EMAIL_DOMAIN_DNS_PENDING, EMAIL_DOMAIN_VERIFIED, and EMAIL_DOMAIN_VERIFY_FAILED still use HTTP 200. See Error responses.

