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.

GEThttps://api.sndr.sh/api/cranl/v1/emails
List 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

Authorizationstringheaderrequired

Bearer followed by an access token. Needs the read scope.

Query parameters

limitinteger

Page size. Default 50, max 200.

cursorstring

The next_cursor value from the previous page. Omit for the first page.

Errors

401unauthenticatedMissing or invalid Bearer token.
401token_expiredAccess token expired — exchange the refresh token for a new pair.
401token_revokedToken was explicitly revoked.
403insufficient_scopeToken is missing the read scope.
422validation_failedlimit is above 200, or cursor is not a value returned as next_cursor.