Responsabilités
Boucle recommandée
- Créez une session une fois avec
POST /v1/sessions. - Appelez
/nextavec la dernièrestate_version. - Utilisez
candidates[0], ou choisissez parmi les candidats si votre produit le nécessite. - Après la réponse, appelez de nouveau
/nextavecprevious_turn. - Envoyez les informations externes par
/eventssans provoquer une nouvelle sélection. - Envoyez le résultat final par
/feedback.
Si votre backend redémarre, relisez la session avec
GET /v1/sessions/{session_id}. Ne reconstruisez pas l’état à partir d’une copie locale obsolète.Réponses à choix
Lorsque votre interface affiche les choix fournis par NBQ, renvoyez leurschoice_id dans structured_answer.choice_ids. Cela évite une interprétation sémantique inutile et conserve un mapping déterministe.
Privilégier les réponses structurées
Si votre application connaît déjà le sens de la réponse, transmettez-le directement :previous_turn.outcomeindique si la question a reçu une réponse exploitable, aucune réponse ou un refus ;structured_answer.choice_idstransmet les choix d’une question fermée ou semi-ouverte ;client_updates.dataenvoie une donnée métier déjà validée par votre système.
user_text et laissez NBQ l’analyser.
outcome décrit le résultat de la question, mais ne crée pas à lui seul une donnée métier. Utilisez également structured_answer ou client_updates lorsque votre système connaît l’information obtenue.Tester avec curl
Exécutez le cycle minimal avant de l’intégrer dans votre application.