Skip to content

Send a transactional email

POST
/v1/emails

Send one email from a verified sending identity (a lazily-provisioned platform identity, or a BYO domain explicitly upgraded for sending). Accepted immediately (202) — a fully-suppressed recipient list is stored as a terminal suppressed event rather than rejected; a mixed recipient list sends only to the non-suppressed addresses. Send Idempotency-Key to make client retries safe.

Authorizations

apiKey

Scoped API key. Scopes are readwriteadmin. A call needing more scope than the key holds returns 403 insufficient_scope.

Type
HTTP (bearer)

Parameters

Header Parameters

Idempotency-Key

POST only. Duplicate requests with the same key within ~12–24 h return the original response and create no second effect.

Type
string
Format
"uuid"

Request Body

application/json
JSON
{
  
"from": "no-reply@acme.send.emithook.com",
  
"to": [
  
  
"string"
  
],
  
"cc": [
  
  
"string"
  
],
  
"bcc": [
  
  
"string"
  
],
  
"reply_to": "string",
  
"subject": "Your invoice is ready",
  
"html": "string",
  
"text": "string",
  
"headers": {
  
  
"additionalProperties": "string"
  
},
  
"attachments": [
  
  
{
  
  
  
"filename": "invoice.pdf",
  
  
  
"content_type": "application/pdf",
  
  
  
"content": "string",
  
  
  
"url": "https://cdn.acme.com/invoices/INV-1.pdf",
  
  
  
"content_id": "logo"
  
  
}
  
]
}

Responses

Accepted — queued for delivery (or stored terminal if fully suppressed).

application/json
JSON
{
  
"id": "evt_01JX9"
}

Playground

Authorization
Headers
Body

Samples

Powered by VitePress OpenAPI

Emithook · a Finnoto product