Nodo Webhook
¡Esta funcionalidad se encuentra en la fase final de desarrollo y pruebas, y estará disponible muy pronto! Si desea obtener más información o tiene preguntas
Descripción técnica y capacidades
Webhook El nodo habilita el disparo en tiempo real de acciones específicas en sistemas externos. Envía solicitudes HTTP POST a endpoints especificados al recibir datos de nodos conectados. A continuación construye cargas útiles JSON personalizadas con atributos estáticos y dinámicos, y ejecuta llamadas API a servicios de terceros.

El nodo extiende las capacidades de IoT Logic más allá del procesamiento y la transmisión de datos, permitiendo la integración directa con plataformas de mensajería, sistemas ERP y CRM, y aplicaciones personalizadas para iniciar acciones automatizadas según la configuración de su flujo.

Cómo funcionan los nodos Webhook
Cuando los datos llegan a un nodo Webhook a través de una conexión entrante, éste ejecuta inmediatamente una solicitud HTTP POST al endpoint configurado. El nodo:
Recopila los valores actuales de todos los atributos de los nodos ascendentes conectados
Reemplaza las referencias de atributos dinámicos (por ejemplo,
$"speed") por los valores reales del mensaje entranteConstruye la carga útil JSON completa preservando la estructura que usted definió
Envía la solicitud HTTP POST con los encabezados especificados al endpoint de destino
Continúa sin esperar una respuesta, permitiendo que el flujo prosiga de inmediato
El webhook se dispara una vez por cada mensaje que lo alcanza. Si múltiples ramas en paralelo envían datos al webhook, se disparará por separado para cada mensaje entrante. Esta ejecución ocurre de forma independiente sin bloquear otros nodos en el flujo, garantizando el procesamiento continuo de datos independientemente de los tiempos de respuesta del sistema externo.
Integración en la arquitectura del flujo
Los nodos Webhook funcionan como puntos de terminación que convierten los datos procesados del dispositivo en llamadas API externas. En lugar de transmitir continuamente todos los datos del dispositivo como los nodos Output Endpoint, los webhooks ejecutan solicitudes API dirigidas con cargas útiles configuradas con precisión. Esta arquitectura permite:
Automatizaciones basadas en eventos: Disparar flujos de trabajo externos basados en condiciones del dispositivo, métricas calculadas o patrones de datos específicos identificados anteriormente en el flujo
Transmisión selectiva de datos: Enviar solo los atributos relevantes a sistemas externos, reduciendo la transferencia de datos innecesaria y los costes de las API
Ejecución en paralelo: Operar junto con otros nodos de salida, permitiendo disparos simultáneos de webhooks y la transmisión continua de datos a distintos destinos
Integración de múltiples fuentes: Aceptar conexiones entrantes desde múltiples ramas en paralelo y acceder a atributos de todos los nodos conectados
Capacidades del nodo
El nodo Webhook ofrece:
Ejecución HTTP POST: Envía solicitudes HTTP POST personalizadas a cualquier endpoint accesible usando los protocolos HTTP o HTTPS (se recomienda HTTPS)
Construcción dinámica de la carga útil: Genera cuerpos de solicitud JSON combinando valores estáticos con atributos dinámicos desde cualquier parte del flujo usando
$"attribute_name"sintaxisConfiguración personalizada de encabezados: Admite hasta 10 encabezados HTTP definidos por el usuario para autenticación y requisitos específicos de la API
Soporte de atributos anidados: Hace referencia a estructuras de atributos complejas incluyendo objetos anidados y arrays dentro de la carga útil JSON
Ejecución independiente: Se dispara sin esperar respuestas ni bloquear el flujo, permitiendo una operación fiable independientemente de la disponibilidad del sistema externo
Opciones de configuración
El nodo Webhook le permite definir cómo su flujo se comunicará con sistemas externos mediante llamadas HTTP API.

Veamos qué elementos utiliza este nodo y qué puede configurar al trabajar con él.
Pasos de configuración
Especifique el título del nodo
Introduzca un nombre descriptivo que identifique el propósito del webhook.
Use nombres que indiquen el servicio o la acción de destino (por ejemplo, "Slack Speed Alerts" o "CRM Ticket Creation")
Este nombre aparece en el diagrama del flujo para una fácil identificación
Configure la URL del endpoint
Introduzca la URL completa a la que se enviarán las solicitudes POST.
Incluya el protocolo:
http://ohttps://(Se recomienda encarecidamente HTTPS)Asegúrese de que la URL apunte a un endpoint API válido que acepte solicitudes POST
Ejemplo:
https://api.example.com/v1/webhooks/device-alerts
Defina los encabezados HTTP
Agregue los encabezados requeridos por su API de destino.
Haga clic en Agregar nuevo para crear pares clave-valor de encabezado
Todos los encabezados son configurados por el usuario, incluido Content-Type
Encabezados comunes incluyen:
Content-Type: application/json(requerido para cargas JSON)Authorization: Bearer <token>(para la autenticación de la API)Claves API personalizadas o encabezados de autenticación según los requerimientos del servicio
Haga clic en el icono de eliminar para quitar encabezados individuales
Construya el cuerpo de la solicitud
Defina la estructura JSON que se publicará en el endpoint.
Introduzca sintaxis JSON válida en el campo Body
Use
$"attribute_name"para hacer referencia a cualquier atributo de nodos conectadosAdmite estructuras JSON anidadas y arrays
Las referencias de atributos funcionan con rutas anidadas (por ejemplo,
$"location.latitude")Si un atributo referenciado es nulo o no existe, se enviará el valor
nullen el JSON
Ejemplo de cuerpo de webhook con atributos dinámicos:
{
"alert_type": "speed_violation",
"device_id": $"device_id",
"current_speed": $"speed_mph",
"threshold_exceeded": 80,
"location": {
"lat": $"latitude",
"lng": $"longitude"
},
"timestamp": $"message_time",
"driver": $"hardware_key"
}Guarde su configuración
Haga clic en Aplicar para almacenar la configuración del nodo webhook.
Comportamiento de ejecución del webhook
El webhook se ejecuta sin esperar respuestas del endpoint externo. El éxito o el fallo de la solicitud del webhook no afectan a la operación continua del flujo ni bloquean a otros nodos para procesar datos.
Actualmente, la ejecución del webhook no incluye reintentos automáticos, registro de intentos fallidos ni manejo de respuestas. Si un endpoint devuelve un error o agota el tiempo de espera, el webhook se disparará de nuevo con el siguiente mensaje entrante. Actualizaciones futuras pueden incluir límites de velocidad definidos por el destino y encolamiento de solicitudes.
Webhook vs transmisión continua de datos
nodo Webhook difiere fundamentalmente de Nodo Output Endpoint en propósito y patrón de ejecución:
Ejecuta llamadas API discretas en cada mensaje, enviando cargas útiles personalizadas que usted define. Ideal para desencadenar acciones externas, enviar notificaciones o transmitir datos selectivos a APIs REST.
Mantiene flujos de datos continuos vía MQTT, transmitiendo datos completos del dispositivo en formato Navixy Generic Protocol. Diseñado para la recopilación continua de telemetría y el monitoreo en tiempo real.
Elija los webhooks cuando necesite desencadenar automatizaciones externas o enviar solo atributos específicos a endpoints API. Utilice los output endpoints para alimentaciones continuas de datos a plataformas de análisis o sistemas de monitoreo. Ambos pueden coexistir en el mismo flujo.
Integración con sistemas externos
Los nodos Webhook sobresalen al desencadenar acciones basadas en eventos en sistemas que proporcionan APIs REST. Los patrones de integración comunes incluyen:
Plataformas de mensajería: Enviar notificaciones a Slack, Microsoft Teams, WhatsApp o Telegram cuando las condiciones del dispositivo cumplan criterios específicos
Sistemas ERP: Sincronizar datos del dispositivo con plataformas de planificación de recursos empresariales para actualizar niveles de inventario, disparar flujos de aprovisionamiento o registrar el uso de equipos para la programación de mantenimiento
Sistemas de tickets: Crear automáticamente tickets de soporte o solicitudes de servicio en plataformas CRM cuando se detecten problemas en el dispositivo
Servicios de alertas: Disparar SMS, correos electrónicos o notificaciones push a través de servicios como Twilio, SendGrid o Firebase cuando se excedan umbrales
Automatización empresarial: Iniciar flujos de trabajo en herramientas como Zapier, Make (Integromat) o n8n basados en la telemetría del dispositivo
Sistemas de telemática: Disparar acciones o automatizaciones específicas en soluciones de telemática de terceros basadas en datos procesados, permitiendo flujos de trabajo basados en eventos como recálculos de rutas, notificaciones al conductor o actualizaciones de estado en sistemas externos de gestión de flotas
Aplicaciones personalizadas: Activar lógica empresarial propietaria publicando eventos de dispositivos a APIs internas
Preguntas frecuentes
¿Cómo disparo webhooks solo bajo condiciones específicas?
Use el nodo Logic para implementar lógica condicional antes del webhook. El nodo Logic puede evaluar atributos del dispositivo y enrutar datos al webhook solo cuando se cumplan las condiciones. Para más detalles, consulte documentación del nodo Logic.
¿Puedo usar múltiples nodos Webhook en el mismo flujo?
Sí. Incluya múltiples nodos Webhook con diferentes configuraciones para activar varios sistemas externos basados en los mismos datos del dispositivo. Cada webhook se dispara de forma independiente cuando recibe datos.
¿Qué sucede si la solicitud del webhook falla?
El webhook se dispara sin esperar una respuesta y no vuelve a intentarlo automáticamente. Si el endpoint externo no está disponible o devuelve un error, el flujo continúa procesando normalmente. El webhook intentará dispararse de nuevo cuando llegue el siguiente mensaje entrante. Actualmente no hay registro de intentos fallidos del webhook.
¿Cómo me autentico con APIs externas?
Configure la autenticación completamente mediante encabezados personalizados. Enfoques comunes:
Tokens Bearer: Agregue el encabezado
Authorizationcon el valorBearer your_token_hereClaves API: Agregue encabezados personalizados según lo especificado por su proveedor de API
Autenticación básica: Agregue el encabezado
Authorizationcon el valorBasic base64_encoded_credentials
Incluya siempre Content-Type: application/json como encabezado al enviar cargas JSON.
¿Puedo hacer referencia a atributos de múltiples nodos conectados?
Sí. El nodo webhook puede acceder a atributos de cualquier nodo conectado a él, incluidas ramas en paralelo. Si múltiples nodos envían datos al webhook, se dispara una vez por cada mensaje entrante y puede hacer referencia a atributos de la ruta de origen de ese mensaje.
¿Qué datos puedo incluir en el cuerpo del webhook?
Puede incluir cualquier combinación de:
Valores estáticos definidos directamente en su configuración JSON
Atributos dinámicos del flujo usando
$"attribute_name"sintaxisAtributos anidados de estructuras de datos complejas
Atributos calculados en Nodos Initiate Attribute o procesados a través de Nodos Logic
El cuerpo debe ser JSON válido. Si un atributo referenciado no existe o contiene un valor nulo, null se enviará en el JSON.
¿Cómo puedo probar la configuración de mi webhook?
Actualmente, las pruebas requieren desplegar el flujo y verificar los resultados en el endpoint de destino. Configure su webhook, guarde el flujo y envíe datos de prueba para verificar que el sistema externo recibe la carga esperada. Considere usar servicios de prueba de webhooks como webhook.site o RequestBin durante el desarrollo para inspeccionar las solicitudes exactas que se envían.
Última actualización
¿Te fue útil?