Save (upsert) a chat thread
Persist the caller’s conversation under its client-minted public_id. First save generates a short title (LLM best-effort, query-text fallback) and evicts the user’s oldest threads beyond the per-user cap; later saves overwrite the transcript (last-write-wins).
Auth: signed-in only (401 otherwise). Errors: 422 when the transcript exceeds the 256 KB limit.
Authorizations
Body
Upsert payload — the client's conversation id plus its full transcript.
Client-minted conversation id (the #c= URL hash). Unique per user; upserts overwrite.
1 - 32The full conversation (frontend StoredConversation shape): messages, results, suggestedRefinements, sessionId, lastUserMessage. Capped at 256 KB.
Response
OK
A full thread, including the transcript needed to resume it.