En este artículo conocerás cómo se utilizan y funcionan estos componentes para poder aplicarlos a tus flujos.
Petición HTTP
Este componente permite realizar una solicitud HTTP a una API externa, facilitando la comunicación con otros sistemas.
Propósito y utilidad:
- Conectar Atom con plataformas externas mediante peticiones HTTP.
- Enviar y recibir datos en tiempo real.
- Integrar con CRMs, bases de datos y otros servicios.
Configuración:
- Métodos disponibles: GET, POST, PUT, DELETE, PATCH y HEAD.
- URL: Dirección del endpoint al que se realiza la petición.
- Cuerpo de la petición: Opcional, permite enviar información.
- Encabezados: Claves y valores para definir parámetros de autenticación o formato.
- Gestión de errores: Habilita una rama de ejecución en caso de fallo.
Campos disponibles para uso en la petición:
- Campos del sistema: Nombre del cliente, teléfono, correo, etc.
- Información del agente: Nombre y correo del agente.
- Campos de información: Lista personalizada de campos ingresados en Atom.
- Propiedades de HubSpot: Disponible si la integración está activa.
- Propiedades de la conversación: Historial, tipificación, resumen, etc.
- Facebook - Click to WhatsApp: Datos relacionados con anuncios de Facebook.
Estos datos permiten realizar un seguimiento y enviar información al CRM correspondiente.
Guardar respuesta
Luego de gestionar los encabezados, se encuentra la sección Guardar Respuesta, la cual al habilitarla, y haciendo click en el botón de Seleccionar campos, te permitirá guardar los valores de la respuesta HTTP en campos de información de Atom.
📌 Ejemplo de uso del campo “Guardar respuesta”
Supongamos que estamos realizando una petición HTTP para consultar el estado de una orden. La API nos devuelve una respuesta con la siguiente estructura:
{
"data": {
"estado": "En camino",
"fecha_entrega": "2025-06-10"
}
}
En este caso, queremos almacenar esa información para usarla más adelante en el flujo. Entonces, en el campo Guardar respuesta, configuramos dos variables personalizadas:
-
ESTADO_ORDEN
-
FECHA_ENTREGA_ESTIMADA
Y las vinculamos con los datos que provienen de la respuesta del API:
-
data.estado
→ESTADO_ORDEN
-
data.fecha_entrega
→FECHA_ENTREGA_ESTIMADA
De este modo, en los pasos siguientes del flujo podemos utilizar estas variables para mostrar mensajes personalizados como:
“Tu pedido está actualmente en estado: y estimamos que llegue el .”
💡Tip: Para los casos en los que requieras guardar toda la respuesta que devuelve el API (incluidos múltiples arrays), puedes hacerlo utilizando la opción Guardar toda la respuesta, la cual encontrarás en la sección Guardar respuesta, y haciendo clic en el campo Valor a guardar. Esta función te permitirá almacenar todo el contenido que devuelve el servicio externo para luego trabajar con la información que necesites, por ejemplo, haciendo uso del componente Formatear.
🧩 Escenario: ¿Qué valor debo incluir en el campo "Valor a guardar"?
Al configurar una Petición HTTP, uno de los pasos clave es definir qué parte de la respuesta de la API quieres guardar. Esto se hace en el campo "Valor a guardar".
¿Qué puede pasar?
A veces, cuando haces clic en ese campo, se despliega automáticamente una lista con los nombres de los datos que puedes guardar. Sin embargo, en otras ocasiones, esa lista no aparece o no muestra lo que buscás.
¿Cómo resolverlo?
Para identificar correctamente qué valor necesitas guardar, seguí estos pasos:
-
Probar el componente HTTP: Ejecuta una prueba del flujo que contiene la petición HTTP. Esto te permitirá ver exactamente qué respuesta devuelve la API.
-
Revisar la estructura de la respuesta: Observa los campos que llegan. Por ejemplo, una respuesta podría verse así:
json
CopiarEditar
{
"result": [
{
"Identification": "123456",
"Name": "Juan Pérez"
}
]
} -
Definir el valor a guardar: Si necesitas guardar el campo
Identification
, deberás escribir en el campo Valor a guardar:sql
CopiarEditar
result.0.IdentificationEsto le indica a Atom que debe ir a la primera posición del array llamado
result
y extraer el valor del campoIdentification
. -
Guardar el valor: Luego, puedes asociar ese dato a un campo de información en Atom o guardarlo en una variable del flujo.
💡 Tip: Siempre que tengas dudas sobre qué escribir en "Valor a guardar", prueba el componente y observa cómo está estructurada la respuesta. Cuanto más clara sea la respuesta, más fácil será ubicar los datos que necesitas extraer.
Guardar Campo
Este componente permite almacenar la respuesta del cliente en un campo de información.
Propósito y utilidad:
- Guardar datos clave de la conversación.
- Facilitar la personalización de respuestas futuras.
- Integrar la información recopilada con otras plataformas.
Configuración:
- Seleccionar el campo donde se almacenará la información.
- Opción para asignar un valor específico a todos los clientes.
Inicio de Salto
Este componente permite redirigir la conversación a otra parte del flujo o a otro flujo publicado.
Propósito y utilidad:
- Evitar repeticiones innecesarias en el flujo.
- Dirigir a los clientes de manera eficiente.
- Mantener una conversación fluida sin perder contexto.
Configuración:
- Definir el punto de salto dentro del flujo.
- Especificar si se activa un fin de flujo tras el salto.
- Establecer la cantidad de saltos permitidos.
- Configurar la opción de saltar a otro flujo publicado.
Caso de uso:
Si un cliente inicia un flujo en la opción A, pero su interacción indica que debería estar en la opción B, el componente de Salto lo reubica sin necesidad de reiniciar la conversación.
Ejemplo de aplicación:
- Redirigir a un flujo de pago cuando el usuario selecciona una opción relacionada con facturación.
⚙️ Configuración avanzada: límites de salto y finalización del flujo
El componente Inicio de salto permite redirigir al usuario a un punto anterior del flujo, útil en escenarios con navegación por menús, formularios o flujos con múltiples decisiones. Sin embargo, este componente tiene un comportamiento predeterminado que es importante conocer.
🛑 ¿Por qué el flujo se puede cortar después de varios saltos?
Por defecto, el componente “Inicio de salto” tiene una configuración que limita la cantidad de veces que un usuario puede pasar por un mismo punto del flujo. Si se supera ese límite, el flujo se detiene automáticamente con un Fin de flujo.
Este comportamiento está pensado para evitar ciclos infinitos, pero puede interferir en menús que intencionalmente redirigen varias veces al usuario.
🧩 ¿Cómo configurar el límite manualmente?
Si tu flujo necesita más repeticiones, puedes ajustar este parámetro:
-
Haz doble clic en el componente Inicio de salto para abrir su configuración.
-
Activa la opción “Configuración avanzada”.
-
Desactiva la opción de finalización automática.
-
Define la cantidad máxima de saltos que se permiten (por ejemplo, 100).
-
Guarda los cambios y simula el flujo para validar su funcionamiento.
✅ Una vez aplicado este cambio, el flujo solo se finalizará si lo configuras explícitamente con un componente Fin de flujo, Asignación, o redirección.
🧠 ¿Cuándo es útil aumentar el límite de saltos?
-
Flujos con navegación por menú donde el usuario puede volver atrás varias veces.
-
Bots educativos, encuestas o asistentes que permiten revisar pasos anteriores.
-
Escenarios donde quieres mantener al usuario dentro del bot sin forzar un cierre prematuro.
🚧 Errores frecuentes al usar el componente Inicio de salto
El componente “Inicio de salto” es esencial para redireccionar al usuario a otra parte del flujo según su elección o una condición específica. Sin embargo, si no está correctamente vinculado, puede provocar:
-
Saltos que terminan en bloques equivocados (como mensajes de horario en lugar de errores).
-
Desvíos que hacen que el usuario no llegue a la respuesta esperada.
-
Fallos de lógica que solo se descubren en producción.
🛠️ Error común: salto mal vinculado
Ejemplo real:
Un salto destinado a redirigir al usuario con un electricista fue configurado para ir al mensaje de horario. En lugar de devolver un error o asignar un asesor, terminaba el flujo incorrectamente.
📍 Solución aplicada: El componente “Inicio de salto” fue corregido para apuntar al mensaje “Error electricista” y no al “Horario”.
✅ Checklist de verificación antes de publicar
Verificación | ¿Cómo hacerlo? |
---|---|
🔁 ¿Cada salto apunta al bloque correcto? | Revisa visualmente la flecha de conexión. Haz clic sobre el componente para ver el destino. |
🗂️ ¿Todos los destinos tienen sentido lógico? | Valida con el equipo funcional o haz pruebas manuales simulando todos los caminos. |
🧪 ¿Probaste todos los escenarios de salto? | Utiliza la función de simulación desde Atom y activá todos los caminos posibles. |
💡 Recomendaciones prácticas
-
Si duplicas flujos, verifica que los saltos se actualicen correctamente.
-
Evita dejar saltos “huérfanos” sin destino.
-
Acompaña los saltos con mensajes claros por si se rompe la lógica (“Lo sentimos, no pudimos procesar tu solicitud”).
⚠️ Recomendaciones
-
Asegúrate de establecer un límite razonable para evitar ciclos infinitos.
-
Utiliza el simulador para verificar que el flujo se comporte como esperas tras múltiples repeticiones.
-
Agrega un mensaje final alternativo en caso de que se alcance el límite máximo, para informar al usuario de manera clara.