Skip to content
SarvexDocs
Esc
↑↓navigate↵open⌘Jpreview

Get a checkout session's event timeline

Ordered by seq ascending. Reconstruct-and-display only (R7) — this is a read of what already happened, never a re-execution of any part of the checkout. Payloads are redacted at write time; no payment credential or PAN/CVV-shaped field is ever present.

GET/checkout-sessions/{checkout_session_id}/timeline
Authorization
AuthorizationBearer token (JWT) · headerrequired

JWT issued by the external IdP via the OAuth 2.0 authorization-code flow (Kinde in production; a simulator in test). The client obtains it and sends it as a Bearer token on every authenticated call. Sarvex's services verify it — issuer, audience, signature (IdP JWKS), expiry — and read identity and tenant from its claims. Sarvex does not issue or revoke these tokens. merchant_id/store_id are read from the verified claims (and the merchant→store mapping), never from the URL. The operator scope is required for /operator/*. Operators acting on a specific merchant pass the X-Operate-As header, which is recorded in the audit log.

Path parameters
checkout_session_idstringrequired

A checkout session the caller's merchant owns. Authorized server-side against the principal; not a free-form tenant selector.

Query parameters
cursorstring

The last seq seen on the previous page (0 = from the beginning).

limitinteger

Maximum items per page.

min 1 · max 100 · default: 25
Responses
200

Timeline entries.

datacheckout_session_timeline_entry[]required
Show properties
Array of checkout_session_timeline_entry
seqinteger
occurred_atstring<date-time>
event_typestring
stagestring
payloadobject

Redacted at write time (R6) — never contains payment credential material, full PANs/tokens, or buyer PII beyond what the merchant already has via their own commerce backend.

pagepagerequired
Show properties
cursorstring | nullrequired
has_morebooleanrequired
404

Resource not found within the caller's tenant.

errorobjectrequired
Show properties
codestringrequired
messagestringrequired
detailsobject | null
Try it
Server
Authorization
Parameters
Request
curl -X GET "https://api.sarvex.example.com/v1/checkout-sessions/string/timeline" \
  -H "Authorization: Bearer YOUR_TOKEN"
Response
{
  "data": [
    {
      "seq": 0,
      "occurred_at": "2019-08-24T14:15:22Z",
      "event_type": "string",
      "stage": "string",
      "payload": {}
    }
  ],
  "page": {
    "cursor": "string",
    "has_more": true
  }
}