Aperçu
Le contexte dynamique vous permet de récupérer des données client depuis vos API externes une fois, avant le début de chaque conversation. Au lieu de vous fier uniquement aux enregistrements de contact, vos agents peuvent accéder au statut de compte, à l’historique des commandes, aux tickets de support et au contexte métier depuis votre CRM, bases de données et systèmes backend.Le contexte dynamique est configuré dans Paramètres de l’agent → Opérations → Contexte dynamique. Les données JSON retournées sont disponibles directement comme variables (ex :
{{ nom_champ }}) dans le message d’accueil et les instructions de votre agent.L’API de contexte est appelée une fois avant le début de la conversation. Les données sont disponibles pour le rendu du message d’accueil et tout au long de la conversation. Elles ne se rafraîchissent pas pendant la conversation. Gardez votre endpoint rapide (<1s de temps de réponse) et ne retournez que les données nécessaires à la conversation.
- Endpoint HTTPS
- Réponse JSON de moins de 32 Ko
- Temps de réponse inférieur à 1 seconde (idéalement)
- Authentification via jeton Bearer, clé API ou authentification Basic
Comment ça fonctionne
Flux de requête :API de contexte appelée
AVANT le début de la conversation : Le système envoie une requête POST à votre endpoint
Message d'accueil rendu
Le message d’accueil est rendu (utilise les variables de contexte si référencées dans le message d’accueil)
Appels entrants
direction: "inbound" avec le contact_number de l’appelant. Recherchez les données client dans votre CRM.Appels sortants
direction: "outbound" avec le contact_number que vous appelez. Récupérez le contexte de campagne.Widget web
medium: "web" avec external_id optionnel. Identifiez l’utilisateur dans votre système.Configuration
Accéder au contexte dynamique
- Ouvrez les paramètres de votre agent
- Cliquez sur le groupe de navigation Opérations (dans la barre latérale gauche)
- Sélectionnez Contexte dynamique dans les sections
Configurer l'endpoint
URL de l’endpoint :
https://api.company.com/contextAuthentification : Choisissez jeton Bearer, Basic, clé API ou aucuneLa requête inclura : agent_uuid, direction, agent_number, contact_number (et external_id pour le widget web)Format de requête et réponse
Ce que nous envoyons (requête POST)
agent_uuid(string, toujours inclus) - L’UUID de l’agent gérant l’appeldirection(string, toujours inclus) - “inbound” ou “outbound”agent_number(string, optionnel) - Le numéro de téléphone utilisé par l’agentcontact_number(string, optionnel) - Le numéro de téléphone du clientexternal_id(string/int, optionnel) - Uniquement pour les appels widget web, si fourni par votre intégration
X-Agent-UUID,X-Agent-Number,X-Contact-Number,X-Direction,X-Medium(phone/web)X-Room-SID- Identifiant unique pour cette session de conversationX-External-ID- Pour les appels widget web uniquement
Utilisation typique : Votre endpoint utilise
contact_number ou external_id pour rechercher le client dans votre CRM/base de données, puis retourne les données de compte pertinentes, l’historique des commandes, les tickets, etc. L’agent_uuid peut être utilisé pour personnaliser les réponses par agent si nécessaire.Ce que vous retournez (réponse JSON)
- Format JSON valide
- Moins de 32 Ko
- Retourner uniquement les champs nécessaires (garde la réponse rapide)
- Gérer les données manquantes avec élégance (retourner
nullou omettre les champs)
Comment les variables sont accessibles : Toutes les clés de premier niveau dans votre réponse JSON deviennent des variables de template. Si vous retournez
{"account": {"tier": "VIP"}}, vous y accédez comme {{ account.tier }}, pas {{ context.account.tier }}.Utilisation des variables de contexte
Toutes les données retournées depuis votre API sont disponibles directement comme variables de premier niveau dans le message d’accueil et les instructions de votre agent. Accès aux champs :Authentification
Jeton Bearer (recommandé)
Clé API (en-tête)
Authentification Basic
Aucune
Pas d’authentification (uniquement pour les réseaux internes/privés).Exemple de cas d’usage
Support client avec contexte complet Scénario : L’agent de support a besoin d’une vue complète du client avant le début de la conversation. Votre API retourne :Bonnes pratiques
Gardez les réponses rapides
Gardez les réponses rapides
- Visez un temps de réponse inférieur à 1 seconde
- Mettez en cache les données fréquemment consultées (TTL de 5-10 minutes)
- Retournez uniquement les champs que vous utiliserez dans les instructions
- Utilisez des index de base de données sur les champs de recherche (contact_number, external_id ou vos ID clients internes)
Gérez les données manquantes avec élégance
Gérez les données manquantes avec élégance
- Utilisez les filtres
| default("valeur")dans les instructions - Retournez
nullpour les champs manquants (ne pas générer d’erreur) - Testez avec des contacts qui ont des données minimales
Sécurisez les données sensibles
Sécurisez les données sensibles
- Ne retournez pas de numéro de sécurité sociale, cartes de crédit, mots de passe
- Utilisez HTTPS uniquement
- Implémentez l’authentification (jeton Bearer recommandé)
- Retournez uniquement les champs nécessaires (ex : 4 derniers chiffres du numéro de compte, pas le numéro complet)
- Enregistrez les accès pour les pistes d’audit
Testez avant la production
Testez avant la production
- Utilisez le modal Tester la requête avec de vraies données client
- Testez les cas limites (nouveau client, VIP, compte suspendu)
- Vérifiez que les instructions gèrent les champs manquants avec élégance
- Pilote avec un faible pourcentage de trafic avant le déploiement complet
Dépannage
401 Non autorisé
401 Non autorisé
- Vérifiez que les identifiants sont corrects
- Vérifiez que le type d’authentification correspond à votre API (Bearer vs. Basic vs. clé API)
- Testez avec les mêmes identifiants dans Postman
- Vérifiez si le jeton a expiré
Variables de contexte vides
Variables de contexte vides
- Utilisez Tester la requête pour vérifier que l’endpoint répond
- Vérifiez que la structure JSON correspond à ce que vous accédez
- Vérifiez que le bouton Contexte dynamique est SUR
- Utilisez
| default("valeur de secours")pour les champs manquants
Lent ou délai d'expiration
Lent ou délai d'expiration
- Ajoutez des index de base de données
- Implémentez la mise en cache
- Retournez uniquement les champs nécessaires
- Optimisez les requêtes de base de données
- Vérifiez la latence réseau vers votre API
Mauvaises données retournées
Mauvaises données retournées
- Vérifiez les paramètres dans le modal Tester la requête
- Vérifiez que les variables de template se résolvent correctement :
{{ account.tier }} - Assurez-vous que les clés de cache incluent l’identifiant client
- Testez avec un client connu pour confirmer que les données correspondent
Prochaines étapes
Message d'accueil
Utilisez les variables de contexte pour personnaliser le message d’accueil de votre agent
Instructions
Apprenez à utiliser les variables de contexte avec le templating Jinja
Variables et contenu dynamique
Maîtrisez la syntaxe de templating pour les invites dynamiques
Actions API personnalisées
Créez des actions qui utilisent les données de contexte pendant les conversations