List workspace conversations
Authorizations
API key issued via POST /v1/api-keys. Prefix is zsk_. Pass as Authorization: Bearer zsk_…. Scopes are enforced per key.
Query Parameters
Restrict to conversations whose call ran on this branch
"agtbrch_abc123"
Inclusive lower bound on the call start time (ISO-8601)
"2026-05-01T00:00:00Z"
Inclusive upper bound on the call start time (ISO-8601)
"2026-05-31T23:59:59Z"
Eval verdict surfaced under the Status filter chip
successful, failed, unknown Call origin — inbound = caller-initiated, outbound = agent-initiated. Not yet stored on the conversation row (deferred per Phase 1 cut); accepted to keep client URLs stable and is currently a no-op.
inbound, outbound Inclusive lower bound on duration in seconds
x >= 030
Inclusive upper bound on duration in seconds
x >= 0600
BCP-47 language tag from the call client overrides
35"en"
Filter by the dispatching session user (matches conversation.created_by_id). Maps to ElevenLabs user_id.
140"user_abc123"
Filter to conversations carrying every listed tag label (AND across the list). Labels — not tag-row ids — are the user-facing identity of a tag: conversation_tag stores one row per (conversation, label), so the same label across N conversations has N distinct row ids; matching by label is what users expect. Pass labels as repeated query params (?tag_labels=a&tag_labels=b); the comma-separated form is intentionally NOT accepted because labels may legitimately contain commas (e.g. billing, urgent).
Transport the call came in on. Set by the agent runtime at session start; rows with a NULL channel column are excluded from the match (legacy / fixture rows that pre-date the column stay invisible to this filter rather than being arbitrarily bucketed).
web, telephony, whatsapp Modality of the session — voice for VAD-driven calls, text for chat-only sessions. Rows with a NULL modality column are excluded.
voice, text Deployment environment the session ran against. Migration 0018 backfilled existing rows to production; rows that legitimately have a NULL environment (e.g. unmigrated test fixtures) are excluded from the match.
production, staging Whether to include the post-call summary text on each item. Defaults to exclude so list payloads stay small — use include when the table needs to surface summary snippets without a detail-page roundtrip per row.
exclude, include Free-text search query — case-insensitive substring match on the post-call summary. Title is not yet populated on conversation rows so summary is the only meaningful text field today.
280"pricing"
Opaque pagination cursor returned by the previous page (nextCursor)
Page size (default 20, max 100)
1 <= x <= 10020