List emails
Page through your messages, newest first. Filter by delivery status, direction (inbound or outbound), or a free-text search over sender, recipient, and subject.
GET
/v1/emailsReturns a cursor page of message summaries. Combine the filters below with limit and cursor; keep the filters constant across a walk.
01 Query parameters
statusstringOptional
Filter by message status — e.g.
delivered, bounced, queued, complained.directionstringOptional
inbound or outbound.qstringOptional
Search recipient, sender, or subject.
limitintegerOptional
Page size,
1–100.cursorstringOptional
The
nextCursor from the previous response.02 Headers
X-Drin-ProductheaderOptional
Scopes the listing to one project for account-wide keys (alias:
X-Drin-Sender).03 Request
curl "https://api.drin.run/v1/emails?status=bounced&limit=50" \
-H "Authorization: Bearer $DRIN_API_KEY"04 Response
200 OK — a page of message summaries plus a nextCursor. Each summary omits the body and event lifecycle; fetch those with GET /v1/emails/{id}.
{
"data": [
{
"id": "msg_01HZX9K3T2QF7P0M4N8B6C5D",
"from": "onboarding@yourdomain.com",
"to": ["you@example.com"],
"subject": "Hello from Drin",
"status": "delivered",
"direction": "outbound",
"createdAt": "2026-06-02T17:04:00Z"
}
],
"nextCursor": "eyJpZCI6Im1zZ18wMUhaVyJ9"
}Reaching the endWhen
nextCursor is null, there are no more results. See Pagination for the full walk and the SDK's auto-paginating iterator.