Ressources · Chat API
Documentation de l'API Chat
Référence de niveau entreprise pour /chat/completions incluant le schéma de requête, les événements en streaming, le comportement d'exécution et la sémantique des erreurs.
Points de terminaison
GET /api/v1/chat/healthPOST /api/v1/chat/completionsEn-têtes requis
Authorization: Bearer [token] ou authentification par clé APIContent-Type: application/jsonX-Scope-Type: personal | workspaceX-Workspace-ID: requis uniquement lorsque le scope est workspace
Corps de la requête
json
{
"message": "Summarize the last meeting in bullet points",
"session_id": "sess_123",
"stream": true,
"attachments": [],
"metadata": {
"locale": "en",
"channel": "web"
}
}Corps de la réponse
json
{
"success": true,
"session_id": "sess_123",
"content": "• Discussed roadmap\n• Confirmed release scope\n• Assigned owners",
"provider": "pulse",
"usage": {
"input_tokens": 324,
"output_tokens": 118
},
"metadata": {
"latency_ms": 612
}
}Événements de streaming
- response.started — exécution du chat commencée
- response.delta — jetons textuels incrémentiels
- response.tool_call — événement d'appel d'outil (le cas échéant)
- response.usage — mise à jour de l'utilisation/des jetons
- response.completed — réponse finale assemblée
Comportements d'exécution
- Le contrôle du backpressure rejette la surcharge avec un 503.
- Le verrouillage distribué empêche le traitement en double en cours.
- Le cache de déduplication sert les requêtes non-streaming répétées.
- La persistance de session stocke les tours utilisateur + assistant.
- La validation protège le corps de la requête, les pièces jointes et le contexte d'accès.
Modèles d'erreur
400
Corps de requête invalide ou champs requis manquants.
401
Authentification manquante ou invalide.
403
Restriction de portée/autorisation.
409
Conflit de verrou : requête déjà en cours de traitement.
422
Échec de validation dans les en-têtes/le corps/le contexte.
429
Limite de requêtes dépassée.
503
Surcharge du système ou indisponibilité en amont.
Exemples
bash
curl -X POST "/api/v1/chat/completions" \
-H "Authorization: Bearer [token]" \
-H "Content-Type: application/json" \
-H "X-Scope-Type: personal" \
-d '{
"message":"Write a short product update",
"session_id":"sess_123",
"stream":false
}'