The lifecycle
A send’sstatus tells you where it stands right now:
Delivery confirmations do not change
status — they are recorded as events and
advance the send’s lastEventType and lastEventAt fields, so a sent message
with lastEventType: "Delivery" has been accepted by the recipient’s mail
server.
Read a send
Fetch a send withGET /v1/messages/{messageId} (scope messages:read), using
the id returned when you sent it.
Page the delivery events
For the full timeline, list one send’s delivery events withGET /v1/messages/{messageId}/events — newest first, default 50, up to 100 per
request.
Event fields
Each event says what happened, to whom, and when.What to do with each signal
Get events pushed to you
Polling works, but for real-time updates subscribe tomessage.delivered,
message.bounced, and message.complained via webhooks,
and Dairo calls your app the moment each one lands. For a single, durable,
account-wide stream of everything, read the event ledger.
Next steps
- Land in the inbox — cut bounces and complaints at the source.
- Audiences & broadcasts — track a fan-out per recipient.
- API reference — every messages endpoint, with copy-paste requests.