Skip to content

Messages API

List Messages

GET /api/v1/messages?page=1&per_page=20
Authorization: Bearer {jwt}

Also available with API key:

GET /api/v1/messages
X-API-Key: {api-key}

Response

json
{
  "messages": [
    {
      "id": "msg_abc123",
      "from": "[email protected]",
      "to": "[email protected]",
      "subject": "Hello World",
      "status": "delivered",
      "provider": "ses",
      "created_at": "2026-03-07T12:00:00Z",
      "delivered_at": "2026-03-07T12:00:05Z"
    }
  ],
  "total": 150,
  "page": 1,
  "per_page": 20
}

Get Message

GET /api/v1/messages/{id}
Authorization: Bearer {jwt}

Get Message Events

GET /api/v1/messages/{id}/events
Authorization: Bearer {jwt}

Returns the full event log for a message:

json
{
  "events": [
    { "type": "queued", "timestamp": "2026-03-07T12:00:00Z" },
    { "type": "sending", "timestamp": "2026-03-07T12:00:01Z", "provider": "ses" },
    { "type": "sent", "timestamp": "2026-03-07T12:00:02Z" },
    { "type": "delivered", "timestamp": "2026-03-07T12:00:05Z" }
  ]
}

Message Status

StatusDescription
queuedIn task queue, waiting to be processed
sendingBeing sent via provider
sentProvider accepted the message
deliveredConfirmed delivered to recipient
bouncedDelivery failed (hard or soft bounce)
failedPermanent failure
openedRecipient opened the email (tracked)

TechTrans Lab