Endpoints
GET /api/conversationsGET /api/conversations/{conversation_id}PATCH /api/conversations/{conversation_id}DELETE /api/conversations/{conversation_id}
Resource Shapes
Conversation summary
Conversation detail
Behavior Contracts
GET /api/conversations
- query:
limit(default 20, max 100) - ordered by most recently updated
sidebar_titleis the short label used by the left sidebar “Recently Asked” listsidebar_titleis generated from the first user message and normalized to drop low-value leading demonstratives (this,that,these,those)
GET /api/conversations/{conversation_id}
- returns full message timeline in chronological order
404if not found
PATCH /api/conversations/{conversation_id}
Request:
- title required and non-empty
- unknown fields rejected
404if conversation missing
DELETE /api/conversations/{conversation_id}
- returns success object on delete
- cascades to related messages/feedback via FK rules