Everything, stated precisely.
Start with the quickstart — it ends by having you read a real trace, which is the only part of this product that needs explaining.
# Send a transactional email
curl -X POST https://app.getoutsend.com/api/v1/emails \
-H "Authorization: Bearer $OUTSEND_API_KEY" \
-H "Idempotency-Key: order-8421" \
-d '{
"from": "Acme <hello@mail.acme.com>",
"to": ["maya@example.com"],
"reply_to": "support@acme.com",
"subject": "Your order is on its way",
"html": "<p>Hi Maya, it shipped!</p>"
}'await fetch('https://app.getoutsend.com/api/v1/emails', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.OUTSEND_API_KEY}`,
'Content-Type': 'application/json',
'Idempotency-Key': 'order-8421',
},
body: JSON.stringify({
from: 'Acme <hello@mail.acme.com>',
to: ['maya@example.com'],
subject: 'Your order is on its way',
html: '<p>Hi Maya, it shipped!</p>',
}),
});# Any SMTP client or framework mailer
Host smtp.getoutsend.com
Port 2587
Security STARTTLS
Password your OutSend API key
# Keys can be limited to a single sending domainSend your first message and read what it left behind.
Every field, event, and limit, stated precisely.
API reference
The sending endpoint, its fields, its errors, and the limits that apply to it.
SMTP relay
Point any existing mailer at OutSend and change nothing else about your application.
Webhooks
Get events pushed to you as they happen, signed so you can prove they came from us.
Events reference
All eight event types, what each one means, and what evidence comes with it.
CLI
Set up, inspect, replay, and diagnose OutSend from a shell script, a runbook, or a CI job.
MCP server
Give an agent the ability to send, inspect, explain, and remediate email — with evidence attached and approval gates on anything consequential.
DNS, deliverability, and running it yourself.
Field maps and checklists for leaving your current provider.
From SendGrid
Field mapping, webhook equivalents, and a migration checklist for moving off SendGrid.
From Mailgun
Field mapping, webhook equivalents, and a migration checklist for moving off Mailgun.
From Amazon SES
Keep SES underneath, gain the control plane you were about to build yourself.
From Postmark
A close API shape, a similar streams model, and what actually differs.
From Resend
A near-identical API shape, plus the parts that are deliberately different.
Something here wrong or missing?
The docs live in the repo. Corrections are welcome and we publish them.