Get one sent email with its events

gethttps://api.expiryedge.com/v1/getEmailSendDetail
any role in the send's organization60/min
Request
curl 'https://api.expiryedge.com/v1/getEmailSendDetail?send_id=resend_msg_01J8ZK_exp_4Tq9sLm2' \
  -H "Authorization: Bearer $EXPIRYEDGE_API_KEY"
Response
{
  "send": {
    "id": "resend_msg_01J8ZK_exp_4Tq9sLm2",
    "organization_id": "org_northwind",
    "expiry_id": "exp_4Tq9sLm2",
    "expiry_name": "Northwind Dental - State Dental License",
    "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": "bounced",
    "status_updated_at": "2026-09-26T09:00:09.000Z",
    "failure_reason": "Mailbox does not exist",
    "created_at": "2026-09-26T09:00:04.512Z"
  },
  "events": [
    {
      "id": "evt_B4k1Zs",
      "event_type": "bounced",
      "timestamp": "2026-09-26T09:00:09.000Z",
      "contact_email": "billing@contosolegal.com",
      "contact_display": "Contoso Legal Billing",
      "message_id": "msg_01J8ZK",
      "subject": "Reminder: State Dental License expires in 18 days",
      "clicked_url": null,
      "bounce_type": "hard",
      "failure_reason": "Mailbox does not exist",
      "reply_text": null,
      "provider": "resend"
    }
  ]
}

Returns the send row (as in getOrgEmailActivity) plus every event for that message, oldest first.

Query parameters

  • send_idstringrequired
    The id of a row from getOrgEmailActivity.

Returns

200
Send detail.
  • sendobjectrequired
    One email sent for one expiry (a digest email yields one row per bundled expiry).
  • eventsarray of objectsrequired

Errors

400
The request is missing required fields or contains invalid values.
401
Missing, expired or invalid bearer token.
403
Authenticated, but your role or organization does not allow this action.
404
The record does not exist or is not in your organization.
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.