5a5597ebb2d6

latestOpenAPI 3.1.0raw.githubusercontent.com2026-08-126178842.7 MB
conversations

Mint a fresh test-type v2 conversation bound to an agent or team

conv_* replacement for the retired POST /v1/runtime/test-chat.

Mints a session_type="test" Conversation on the chat channel / dashboard surface (ADR-001 — the operator initiated it, so origin="outbound"). Identity is per body.test_features.identity_resolution (default off): off binds a throwaway random end_user_id with no identity-graph call; on binds the authenticated caller's resolved internal:<clerk_user_id> EndUser. The test discriminator still gates memory sync / summary generation / extraction / evaluations / knowledge-gap analysis per the resolved snapshot (src.conversation.test_features), so a feature-off test session remains as ephemeral as before. The dashboard "Try this …" panel then drives turns via POST /conversations/{id}/turns/stream passing the returned id.

Binds to exactly one of a single Assistant (agent_id) or a Team (team_id + optional team_revision_id); the request schema enforces that XOR. Either way the bound entity is resolved + org-scoped BEFORE the conversation is created (get_agent_for_runtime / get_team_for_org both raise 404 for a missing or cross-org id), so a bare test row can never bind to another org's agent/team.

For a team, team_revision_id defaults to the team's active_revision_id when omitted; bootstrap_team_conversation binds the team revision. Under DD-5 the roster resolves LIVE per turn (member pin, else live active revision) — it is not pinned at bind. No first greeting: the legacy endpoint emitted none, so there is nothing to replicate here.

post/v1/conversations/test-chat

Request body

agent_idstring uuid nullable
assistant_revision_idstring uuid nullable
team_idstring uuid nullable
team_revision_idstring uuid nullable
tool_input_overridesobject nullable
context_variablesobject nullable

Response

Successful Response

session_idstring uuid required
end_user_idstring uuid required