Documentation
Documentation / Reference API

Conversations

Historique des conversations persistees pour les utilisateurs authentifies. L'ownership est verifie via le sub du JWT (l'email).

Authentifie
Toutes les routes de cette section exigent un JWT bearer valide. Sans token, 401.

Lister

GET/api/v1/conversations

Pagination par curseur. Query params optionnels : before (ISO datetime, exclusif) et limit (1..200, defaut 50).

bash
curl http://localhost:8000/api/v1/conversations?limit=20 \
  -H "Authorization: Bearer $BANGRE_JWT"

Detail

GET/api/v1/conversations/{id}

Retourne la conversation + la liste complete de ses messages, ordres chronologiquement.

json
{
  "conversation": {
    "id": "5c2a...",
    "title": "Taux de TVA en vigueur",
    "domaine": "impots",
    "model": "llama3.2:3b",
    "message_count": 4,
    "last_message_at": "2026-06-08T10:32:00Z",
    "created_at": "2026-06-08T10:30:12Z"
  },
  "messages": [
    { "id": "...", "role": "user", "content": "...", "citations": [], "created_at": "..." },
    { "id": "...", "role": "assistant", "content": "...", "citations": [...], "validation": {"ok": true, "warning": null}, "latency_ms": 842, "model": "llama3.2:3b", "created_at": "..." }
  ]
}

Renommer

PATCH/api/v1/conversations/{id}
bash
curl -X PATCH http://localhost:8000/api/v1/conversations/5c2a... \
  -H "Authorization: Bearer $BANGRE_JWT" \
  -H "Content-Type: application/json" \
  -d '{ "title": "Mes questions TVA" }'

Supprimer

DELETE/api/v1/conversations/{id}

Retourne 204 No Content en cas de succes, 404 si la conversation n'existe pas ou n'appartient pas a l'utilisateur.

Shapes

Conversation

id
uuidrequired
Identifiant de la conversation.
title
stringrequired
Titre auto (premier message tronque), modifiable via PATCH.
domaine
string | nulloptional
Domaine de la conversation, capture au premier message.
model
string | nulloptional
Modele LLM utilise au premier message.
message_count
intrequired
Nombre total de messages (user + assistant).
last_message_at
datetimerequired
Timestamp ISO du dernier message.
created_at
datetimerequired
Date de creation ISO.

Message

id
uuidrequired
Identifiant du message.
role
enumrequired
user ou assistant.
content
stringrequired
Texte complet du message.
citations
Citation[]optional
Citations attachees au message assistant (vide cote user).
validation
object | nulloptional
Objet { ok: bool, warning: string|null }.
latency_ms
int | nulloptional
Latence cote serveur pour la generation assistant.
model
string | nulloptional
Modele LLM ayant produit le message.
created_at
datetimerequired
Date de creation ISO.