L'API Conversations permet de gérer les conversations existantes avec les agents IA :
Récupération des métriques détaillées (tokens, temps, sources)
Accès à l'historique complet des messages
Suppression sécurisée avec cascade
Note importante : Cette API gère les conversations après leur création. Pour créer de nouvelles conversations, utilisez l'endpoint /v1/chat/completions.
Authentification
Toutes les requêtes nécessitent une clé API dans le header Authorization :
Authorization: Bearer YOUR_API_KEY
Les permissions sont vérifiées au niveau de l'agent associé à la conversation.
Endpoints disponibles
GET /v1/conversations/:id/metrics - Métriques d'une conversation
Récupère les métriques détaillées d'un message spécifique, incluant les statistiques de tokens et les appels de conversation associés.
Paramètres
Paramètre
Type
Requis
Description
id
String (CUID)
Oui
ID du message de conversation
Requête
GET /v1/conversations/cm4msg123abc/metrics
Authorization: Bearer YOUR_API_KEY
Réponse (200 OK)
{"success":true,"data":{"id":"cm4msg123abc","message":"Voici les résultats de votre analyse...","score":0.95,"type":"assistant","model":"gpt-4","sources":[{"fileName":"guide.pdf","page":12,"relevance":0.89}],"status":"completed","agent":"cm4agent456def","tokens":{"message":250,"context":1500},"conversationCalls":[{"type":"completion","messages":{"role":"system","content":"You are a helpful assistant..."},"messagesTokens":50,"outputContent":"Based on the analysis...","outputTokens":200,"timeMs":1250},{"type":"embedding","messages":null,"messagesTokens":null,"outputContent":null,"outputTokens":1500,"timeMs":450}]}}
Champs de la réponse
Champ
Type
Description
id
String
Identifiant unique du message
message
String
Contenu du message
score
Number
Score de pertinence (0-1)
type
String
Rôle : user, assistant, system
model
String
Modèle utilisé (ou modèle custom si défini)
sources
Array
Sources utilisées pour la réponse
status
String
Statut du message
agent
String
ID de l'agent associé
tokens.message
Number
Tokens utilisés pour ce message
tokens.context
Number
Tokens de contexte utilisés
conversationCalls
Array
Détails des appels API effectués
Exemple avec curl
curl -X GET https://api.devana.ai/v1/conversations/cm4msg123abc/metrics \
-H "Authorization: Bearer YOUR_API_KEY"
GET /v1/conversations/:id/messages - Messages d'une conversation
Récupère tous les messages d'une conversation, incluant le message principal et toutes les réponses.
Paramètres
Paramètre
Type
Requis
Description
id
String (CUID)
Oui
ID de la conversation
Query Parameters
Paramètre
Type
Requis
Description
flagged
Boolean
Non
Si true, retourne uniquement les messages marqués par la modération
Requête
GET /v1/conversations/cm4conv789xyz/messages
Authorization: Bearer YOUR_API_KEY
Requête avec filtre de modération
GET /v1/conversations/cm4conv789xyz/messages?flagged=true
Authorization: Bearer YOUR_API_KEY
Réponse (200 OK)
{"success":true,"data":[{"id":"cm4msg001","date":"2024-10-28T10:00:00.000Z","message":"Comment optimiser cette fonction Python ?","role":"user","model":null,"score":null,"sources":null,"tokens":15,"contextTokens":0,"toolCalls":null},{"id":"cm4msg002","date":"2024-10-28T10:00:15.000Z","message":"Pour optimiser votre fonction Python, voici plusieurs suggestions...","role":"assistant","model":"gpt-4","score":0.92,"sources":[{"fileName":"python-optimization.pdf","relevance":0.88}],"tokens":350,"contextTokens":1200,"toolCalls":{"web_search":{"query":"Python performance optimization techniques","results":5}}}]}
Structure des messages
Champ
Type
Description
id
String
Identifiant unique du message
date
DateTime
Date et heure du message
message
String
Contenu du message
role
String
user, assistant, ou system
model
String
Modèle utilisé (null pour user)
score
Number
Score de pertinence
sources
Array
Sources référencées
tokens
Number
Nombre de tokens du message
contextTokens
Number
Tokens de contexte
toolCalls
Object
Outils appelés pendant la génération
Exemple avec curl
# Tous les messages
curl -X GET https://api.devana.ai/v1/conversations/cm4conv789xyz/messages \
-H "Authorization: Bearer YOUR_API_KEY"# Messages marqués uniquement
curl -X GET "https://api.devana.ai/v1/conversations/cm4conv789xyz/messages?flagged=true" \
-H "Authorization: Bearer YOUR_API_KEY"
DELETE /v1/conversations/:id - Supprimer une conversation
Supprime une conversation et tous ses messages enfants de manière récursive (soft delete).