Skip to main content
POST
/
send
/
transactional
Send a transactional email
curl --request POST \
  --url https://brew.new/api/send/transactional \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "chatId": "abc123",
  "to": "user@example.com",
  "variables": {
    "firstName": "John",
    "orderNumber": "ORD-12345",
    "trackingUrl": "https://example.com/track/xyz"
  }
}
'
{
  "success": true,
  "data": {
    "sent": 123,
    "failed": 123,
    "dropped": 123,
    "results": [
      {
        "email": "<string>",
        "id": "<string>",
        "error": "<string>"
      }
    ],
    "droppedRecipients": [
      {
        "email": "<string>",
        "reason": "<string>"
      }
    ]
  },
  "warning": {
    "code": "RECIPIENTS_DROPPED",
    "message": "<string>"
  },
  "meta": {
    "requestId": "<string>"
  }
}

Authorizations

Authorization
string
header
required

Use Authorization: Bearer brew_xxxxx header

Body

application/json
chatId
string
required

The transactional email template ID (from Brew)

to
required

Recipient email(s) - single email or array of up to 1000

variables
object

Template variables as key-value pairs

subject
string

Override default subject line

from
string<email>

Override default sender email

replyTo
string<email>

Reply-to email address

Response

Email(s) sent successfully

success
boolean
required

True if at least one email was sent successfully

data
object
required
warning
object

Present if some recipients were dropped

meta
object