Send Email

POST /v1/send

Send one email. Runs the full pipeline: validation → rate-limit → suppression check → activation gate → from-address authorization → sandbox recipient check → moderation → SES dispatch.

Auth

Authorization: Bearer finn_sk_…

Request

{
  "from": "[email protected]",
  "to": "[email protected]",
  "subject": "hello",
  "text": "plain text body",
  "html": "<p>optional html body</p>"
}
Field Required Notes
from yes Must match a verified domain or a verified single sender
to yes Single recipient. Multi-recipient is a separate phase
subject yes Max 998 chars (RFC 5322)
html Required if text not provided
text Required if html not provided

Headers

Response — 202 Accepted

{
  "message_id": "01J…",
  "status": "sent"
}

Query progress later via GET /v1/messages/{message_id}.

Errors

See error codes for the full list.