Skip to main content
Returns session summaries across all agents in your account, ordered by start time (newest first). Use this endpoint to get a cross-agent view of activity, build dashboards, or export session metadata for compliance workflows. To list sessions for a single agent, you can either pass agent_id here or use GET /agents//sessions.

Endpoint

GET /api/v1/sessions
Requires masker_session authentication.

Query parameters

limit
number
default:"25"
Maximum number of sessions to return. Accepted range: 1–100.
cursor
string
Pagination cursor from a previous response’s next_cursor. Omit to start from the first page.
since
string
default:"24h"
Return only sessions that started within this window. Accepts a duration string (1h, 24h, 7d, 30d) or an ISO 8601 UTC timestamp.
agent_id
string
Filter results to sessions handled by this specific agent. Accepts an agt_* ULID.
status
string
Filter by session outcome. One of ok, error, or partial. Omit to return sessions of all statuses.
min_redactions
number
default:"0"
Return only sessions with at least this many PHI redactions.

Response fields

data
object[]
required
Array of session summary objects.
next_cursor
string | null
required
Cursor for the next page. null when you have reached the last page.

Example

curl -H "Cookie: masker_session=ey..." \
  "https://masker-voice.fly.dev/api/v1/sessions?since=24h&limit=50"
Response
{
  "data": [
    {
      "id": "sess_01HYZ...",
      "agent_id": "agt_01HYZ...",
      "agent_name": "appointment-bot-prod",
      "started_at": "2026-05-03T21:14:32Z",
      "ended_at": "2026-05-03T21:14:32.794Z",
      "duration_ms": 794,
      "status": "ok",
      "redaction_count": 4,
      "redactions_by_kind": {"PHONE": 1, "NAME": 2, "DOB": 1},
      "upstream_model": "gpt-4o-mini"
    }
  ],
  "next_cursor": "eyJ..."
}

Errors

StatusCodeMeaning
401unauthenticatedMissing or invalid masker_session cookie
422validation_failedBad query parameter value