List conversation surfaces
Lists the live application surfaces (apps) attached to a conversation, excluding destroyed ones, ordered by most recent activity. Scoped to the caller’s workspace and accessible conversations; workspace admins may pass view=admin to inspect another member’s conversation. Each surface includes its id, slug, state, declared port, run mode, and authentication mode, plus a shareable visitor-facing URL and a separate owner-only developer-embed URL (signed when required).
Authorizations
Personal Access Token. Send as Authorization: Bearer hq_pat_....
Path Parameters
Conversation id
Query Parameters
?view=admin opts into "see every conv in tenant", honored
only when the caller is workspace_users.is_admin = true.
Falls back silently to participant view otherwise so a
crafted URL from a non-admin doesn't leak the existence of
admin mode via a 403.
Free-text filter. Case-insensitive substring match over the conv title, the agent display name, and the latest-message preview (the three things a row shows). Empty/blank = no filter.
1-based page index. Clamped to >= 1.
Rows per page. Clamped to 1..=100; defaults to 25.
recent (default, newest activity first), oldest, or
title (A-Z, untitled convs sink to the end).
Which lane: fast lists only the no-VM "ask" threads; anything
else (default) lists the standard agent threads. The two lanes are
surfaced as separate tabs in Studio.
Optional channel filter. When set to a known channel kind (e.g.
email) the list returns ONLY threads of that kind - this backs the
admin Email > Threads tab. When unset, the default list EXCLUDES
email so external-correspondence threads don't bleed into the main
Home conversation list (they live under the Email section instead).
Unknown values yield an empty set rather than an error.
Response
Surfaces (apps) attached to the conversation