List emails sent across your organization

gethttps://api.expiryedge.com/v1/getOrgEmailActivity
any role60/min
Request
curl 'https://api.expiryedge.com/v1/getOrgEmailActivity?limit=25&status=all' \
  -H "Authorization: Bearer $EXPIRYEDGE_API_KEY"
Response
{
  "items": [
    {
      "id": "resend_msg_01J8ZK_exp_4Tq9sLm2",
      "organization_id": "org_northwind",
      "expiry_id": "exp_4Tq9sLm2",
      "expiry_name": "Northwind Dental - State Dental License",
      "reminder_id": "rem_5Pz1",
      "recipient_email": "billing@contosolegal.com",
      "recipient_display": "Contoso Legal Billing",
      "provider": "resend",
      "provider_message_id": "msg_01J8ZK",
      "subject": "Reminder: State Dental License expires in 18 days",
      "is_digest": false,
      "status": "opened",
      "status_updated_at": "2026-09-27T14:05:00.000Z",
      "sent_at": "2026-09-26T09:00:04.000Z",
      "opened_at": "2026-09-27T14:05:00.000Z",
      "created_at": "2026-09-26T09:00:04.512Z"
    }
  ],
  "nextCursor": 1790413204512
}

One row per reminder email sent in the caller's organization, newest first. limit defaults to 25, clamped to 1-100. Pass nextCursor back as cursor for the next page; it is null on the last page.

Query parameters

  • limitinteger
    Default 25min: 1 · max: 100
  • cursorinteger
    nextCursor from the previous page (epoch milliseconds).
    format: int64
  • statusstring
    all, issues (bounced, complained or failed), or one exact status.
    AllowedallissuessentdelayeddeliveredopenedclickedbouncedcomplainedfailedDefault all

Returns

200
One page of sends.
  • itemsarray of objectsrequired
  • nextCursorinteger | nullrequired
    format: int64

Errors

401
Missing, expired or invalid bearer token.
403
Authenticated, but your role or organization does not allow this action.
405
The endpoint does not accept this HTTP method.
429
Too many requests for this endpoint from your IP. Wait Retry-After seconds.
500
Unexpected server error. Retry later; quote requestId to support.