Emails
List emails
List emails sent from the connected account, newest first. Cursor-paginated: pass next_cursor back as cursor while has_more is true.
GET
https://api.sndr.sh/api/cranl/v1/emailsList emails
curl 'https://api.sndr.sh/api/cranl/v1/emails?limit=1' \
-H 'Authorization: Bearer sndr_your_access_token'200OK
{
"data": [
{
"id": "em_3f9c1a2b-7d4",
"organization_id": "org_8d41c7a2-3f6",
"from": "\"Acme\" <noreply@acme.com>",
"to": ["customer@example.com"],
"subject": "Your order #1234 is confirmed",
"status": "delivered",
"domain_id": "dom_a7c2e910-4b1",
"created_at": "2026-06-01T12:00:00Z",
"delivered_at": "2026-06-01T12:00:04Z"
}
],
"next_cursor": "eyJ0cyI6IjIwMjYtMDYtMDFUMTI6MDA6MDBaIiwiaWQiOiJlbV8zZjljMWEyYi03ZDQifQ",
"has_more": true,
"count": 1,
"limit": 1
}Authorization
AuthorizationstringheaderrequiredBearer followed by an access token. Needs the read scope.
Query parameters
limitintegerPage size. Default 50, max 200.
cursorstringThe next_cursor value from the previous page. Omit for the first page.
Errors
401
unauthenticatedMissing or invalid Bearer token.401
token_expiredAccess token expired — exchange the refresh token for a new pair.401
token_revokedToken was explicitly revoked.403
insufficient_scopeToken is missing the read scope.422
validation_failedlimit is above 200, or cursor is not a value returned as next_cursor.