Descripción General
El Contexto Dinámico te permite obtener datos de clientes de tus APIs externas una vez, antes de que comience cada conversación. En lugar de depender solo de registros de contacto, tus agentes pueden acceder al estado de cuenta, historial de pedidos, tickets de soporte y contexto empresarial de tu CRM, bases de datos y sistemas backend.El Contexto Dinámico se configura en Configuración del Agente → Operaciones → Contexto Dinámico. Los datos JSON devueltos están disponibles directamente como variables (ej.,
{{ nombre_campo }}) en el saludo y las instrucciones de tu agente.La API de contexto se llama una vez antes de que comience la conversación. Los datos están disponibles para renderizar el saludo y durante toda la conversación. No se actualiza durante la conversación. Mantén tu endpoint rápido (<1s tiempo de respuesta) y devuelve solo los datos necesarios para la conversación.
- Endpoint HTTPS
- Respuesta JSON bajo 32 KB
- Tiempo de respuesta bajo 1 segundo (idealmente)
- Autenticación vía token Bearer, clave API o autenticación Básica
Cómo Funciona
Flujo de Solicitud:API de contexto llamada
ANTES de que comience la conversación: El sistema envía solicitud POST a tu endpoint
Llamadas entrantes
direction: "inbound" con contact_number de la persona que llama. Busca datos de cliente en tu CRM.Llamadas salientes
direction: "outbound" con contact_number al que estás llamando. Obtén contexto de campaña.Widget web
medium: "web" con external_id opcional. Identifica usuario en tu sistema.Configuración
Navega a Contexto Dinámico
- Abre la configuración de tu agente
- Haz clic en el grupo de navegación Operaciones (en la barra lateral izquierda)
- Selecciona Contexto Dinámico de las secciones
Configura Endpoint
URL del Endpoint:
https://api.company.com/contextAutenticación: Elige Token Bearer, Básica, Clave API o NingunaLa solicitud incluirá: agent_uuid, direction, agent_number, contact_number (y external_id para widget web)Formato de Solicitud y Respuesta
Lo Que Enviamos (Solicitud POST)
agent_uuid(string, siempre incluido) - El UUID del agente manejando la llamadadirection(string, siempre incluido) - “inbound” o “outbound”agent_number(string, opcional) - El número telefónico que está usando el agentecontact_number(string, opcional) - El número telefónico del clienteexternal_id(string/int, opcional) - Solo para llamadas de widget web, si lo proporciona tu integración
X-Agent-UUID,X-Agent-Number,X-Contact-Number,X-Direction,X-Medium(phone/web)X-Room-SID- Identificador único para esta sesión de conversaciónX-External-ID- Solo para llamadas de widget web
Uso típico: Tu endpoint usa
contact_number o external_id para buscar al cliente en tu CRM/base de datos, luego devuelve datos relevantes de cuenta, historial de pedidos, tickets, etc. El agent_uuid puede usarse para personalizar respuestas por agente si es necesario.Lo Que Devuelves (Respuesta JSON)
- Formato JSON válido
- Bajo 32 KB
- Devuelve solo campos necesarios (mantiene respuesta rápida)
- Maneja datos faltantes elegantemente (devuelve
nullu omite campos)
Cómo se accede a las variables: Todas las claves de nivel superior en tu respuesta JSON se convierten en variables de plantilla. Si devuelves
{"account": {"tier": "VIP"}}, accedes a ello como {{ account.tier }}, no {{ context.account.tier }}.Usando Variables de Contexto
Todos los datos devueltos de tu API están disponibles directamente como variables de nivel superior en el saludo e instrucciones de tu agente. Accediendo campos:Autenticación
Token Bearer (Recomendado)
Clave API (Encabezado)
Autenticación Básica
Ninguna
Sin autenticación (solo para redes internas/privadas).Ejemplo de Caso de Uso
Atención al Cliente con Contexto Completo Escenario: El agente de soporte necesita vista completa del cliente antes de que comience la conversación. Tu API devuelve:Mejores Prácticas
Mantén respuestas rápidas
Mantén respuestas rápidas
- Apunta a tiempo de respuesta bajo 1 segundo
- Caché datos frecuentemente accedidos (TTL de 5-10 minutos)
- Devuelve solo campos que usarás en instrucciones
- Usa índices de base de datos en campos de búsqueda (contact_number, external_id, o tus IDs de cliente internos)
Maneja datos faltantes elegantemente
Maneja datos faltantes elegantemente
- Usa filtros
| default("valor")en instrucciones - Devuelve
nullpara campos faltantes (no error) - Prueba con contactos que tienen datos mínimos
Asegura datos sensibles
Asegura datos sensibles
- No devuelvas SSN, tarjetas de crédito, contraseñas
- Usa solo HTTPS
- Implementa autenticación (token Bearer recomendado)
- Devuelve solo campos necesarios (ej., últimos 4 del número de cuenta, no completo)
- Registra acceso para pistas de auditoría
Prueba antes de producción
Prueba antes de producción
- Usa modal Probar Solicitud con datos reales de cliente
- Prueba casos extremos (cliente nuevo, VIP, cuenta suspendida)
- Verifica que las instrucciones manejen campos faltantes elegantemente
- Piloto con porcentaje pequeño de tráfico antes del despliegue completo
Solución de Problemas
401 No Autorizado
401 No Autorizado
- Verifica que las credenciales sean correctas
- Verifica que el tipo de autenticación coincida con tu API (Bearer vs. Básica vs. Clave API)
- Prueba con mismas credenciales en Postman
- Verifica si el token ha expirado
Variables de contexto vacías
Variables de contexto vacías
- Usa Probar Solicitud para verificar que el endpoint esté respondiendo
- Verifica que la estructura JSON coincida con lo que estás accediendo
- Verifica que el alternador de Contexto Dinámico esté ENCENDIDO
- Usa
| default("respaldo")para campos faltantes
Lento o tiempo de espera
Lento o tiempo de espera
- Agrega índices de base de datos
- Implementa caché
- Devuelve solo campos necesarios
- Optimiza consultas de base de datos
- Verifica latencia de red a tu API
Datos incorrectos devueltos
Datos incorrectos devueltos
- Verifica parámetros en modal Probar Solicitud
- Verifica que las variables de plantilla se resuelvan correctamente:
{{ account.tier }} - Asegura que las claves de caché incluyan identificador de cliente
- Prueba con cliente conocido para confirmar que los datos coincidan
Próximos Pasos
Saludo
Usa variables de contexto para personalizar el saludo de tu agente
Instrucciones
Aprende cómo usar variables de contexto con plantillas Jinja
Variables y Contenido Dinámico
Domina la sintaxis de plantillas para avisos dinámicos
Acciones API Personalizadas
Crea acciones que usen datos de contexto durante conversaciones