Use Cases
Support Tickets
Create tickets from customer emails automatically
Email Parsing
Extract data from invoices, receipts, and forms
Automations
Trigger workflows when emails arrive
How It Works
1
Configure MX
Point your domain’s MX records to Unosend
2
Email Received
We receive and parse incoming emails
3
Spam Check
SPF, DKIM, DMARC validation
4
Webhook/API
Get notified or fetch via API
Setup Guide
1
Verify Your Domain
Go to Domains in your dashboard and add your domain. Complete the DNS verification by adding the required TXT record.
2
Enable Inbound Emails
Click the ⋮ menu on your domain and select Inbound Settings. Toggle “Enable Inbound Emails” to on.
Optional: Configure a webhook URL to receive real-time notifications, or set a forward-to email address.
3
Add MX Records
Add the following MX record to your domain’s DNS settings:
4
Done!
Emails sent to
[email protected] will now be received by Unosend. View them in the Inbound section of your dashboard or via the API.Webhook Notifications
When an email arrives, we’ll send a POST request to your configured webhook URL:email.received webhook
Fetching Email Content
Use the API to retrieve the full email content:cURL
Response
Response
Downloading Attachments
Download attachments using the attachment ID:cURL
Content-Type and Content-Disposition headers.
Spam Filtering
All inbound emails are automatically checked for spam. We validate:| Check | Description |
|---|---|
spf_result | Sender Policy Framework validation |
dkim_result | DomainKeys Identified Mail signature |
dmarc_result | DMARC policy alignment |
spam_score | SpamAssassin score (lower is better) |
spam_status | clean, suspicious, or spam |
Emails with a spam score above 5.0 are marked as
spam. You can filter these in the dashboard or via the API.Code Examples
Webhook Handler (Next.js)
app/api/webhooks/inbound/route.ts
List Inbound Emails (Node.js)
list-inbound.js
Webhook Handler (Express)
server.js
Limits
| Limit | Value |
|---|---|
| Max email size | 30 MB |
| Max attachment size | 25 MB |
| Email retention | 30 days |
| Webhook timeout | 30 seconds |
| Webhook retries | 3 attempts |
FAQ
Can I use a subdomain for inbound?
Can I use a subdomain for inbound?
Yes! You can set up inbound on a subdomain like
mail.yourdomain.com to keep your main domain’s MX records unchanged.What happens if my webhook is down?
What happens if my webhook is down?
We retry failed webhooks 3 times with exponential backoff. Emails are always stored and can be retrieved via the API regardless of webhook status.
Can I forward emails to another address?
Can I forward emails to another address?
Yes! In the Inbound Settings, you can specify a forward-to email address. All incoming emails will be forwarded automatically.
How do I handle catch-all addresses?
How do I handle catch-all addresses?
When inbound is enabled, all emails to any address at your domain are received. The
to field shows the exact recipient address.