Dozor
Sessions

List sessions, cursor-paginated

VIEWER+. Scoped to the caller's active org. Filters: `?search=` (matches `externalId`, case-insensitive), `?projectIds=id1,id2`, `?range=` preset (`today` / `7d` / `30d` / `all`), `?sort=date|duration`, `?sortDir=asc|desc`. Display name is resolved server-side via the 4-step chain.

GET/api/sessions

VIEWER+. Scoped to the caller's active org. Filters: ?search= (matches externalId, case-insensitive), ?projectIds=id1,id2, ?range= preset (today / 7d / 30d / all), ?sort=date|duration, ?sortDir=asc|desc. Display name is resolved server-side via the 4-step chain.

Query Parameters

search?string
projectIds?array<>
range?string
Value in"today" | "retention"
sort?string
Value in"date" | "duration"
sortDir?string
Value in"desc" | "asc"
cursor?string
limit?integer
Range1 <= value <= 100

Response Body

application/json

curl -X GET "https://loading/api/sessions"
{
  "data": [
    {
      "id": "ses_p1q2r3s4",
      "externalId": "9b2e1d4c-6a3f-4f8e-9b1d-2c8a4e6f7a90",
      "projectId": "prj_x9y8z7w6",
      "projectName": "Production",
      "url": "https://your-app.com/checkout",
      "duration": 184320,
      "eventCount": 1247,
      "createdAt": "2026-04-26T10:30:00.000Z",
      "trackedUserId": "tu_t5u6v7w8",
      "userId": "usr_abc123",
      "userDisplayName": "alex@your-app.com",
      "userTraits": {
        "plan": "pro",
        "email": "alex@your-app.com"
      }
    }
  ],
  "nextCursor": "eyJjcmVhdGVkQXQiOiIyMDI2LTA0LTI2VDEwOjMwOjAwLjAwMFoifQ=="
}
Empty
Empty
Empty