Chimely
Api

Status timeline for one notification

The append-only delivery timeline — the "did it send?" answer. Statuses appear as they happen: `created` (accepted and durable), `delivered_hint` (a real-time hint announcing it was published), `seen` and `read` (subscriber actions; watermark moves apply them asynchronously, so a just-clicked "mark all read" may take a moment to appear here). Entries are ordered by `occurred_at`. Unknown future statuses must be ignored by clients. Broadcasts have no per-recipient timeline (they are never materialized per subscriber).

GET
/v1/notifications/{id}/timeline

The append-only delivery timeline — the "did it send?" answer. Statuses appear as they happen: created (accepted and durable), delivered_hint (a real-time hint announcing it was published), seen and read (subscriber actions; watermark moves apply them asynchronously, so a just-clicked "mark all read" may take a moment to appear here). Entries are ordered by occurred_at. Unknown future statuses must be ignored by clients.

Broadcasts have no per-recipient timeline (they are never materialized per subscriber).

Authorization

ApiKeyBearer
AuthorizationBearer <token>

Environment-scoped management API key.

In: header

Path Parameters

id*string

TypeID: notif_ + UUIDv7 suffix (Crockford base32).

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/notifications/notif_01h455vb4pex5vsknk084sn02q/timeline"
{
  "id": "notif_01h455vb4pex5vsknk084sn02q",
  "subscriber_id": "string",
  "timeline": [
    {
      "occurred_at": "2019-08-24T14:15:22Z",
      "status": "created"
    }
  ]
}
{
  "error": {
    "code": "invalid_request",
    "message": "string"
  }
}
{
  "error": {
    "code": "invalid_request",
    "message": "string"
  }
}
{
  "error": {
    "code": "invalid_request",
    "message": "string"
  }
}