Un webhook es un método para ampliar o alterar el comportamiento de un sitio web o aplicación con callbacks personalizados. Estos callbacks pueden ser mantenidos, modificados y gestionados por usuarios y desarrolladores de terceros que no necesariamente están afiliados con el sitio web o aplicación de origen.
1. Crear un nuevo evento
Para comenzar, dirígete a la pestaña “data” →"Eventos" y pasa el cursor sobre el botón “+”, ubicado en la esquina superior derecha de la pantalla, y crea un evento condicional, evento global, o evento programado según tus necesidades.
A continuación, configura la lógica del evento utilizando disparadores con una lógica AND/OR. Para más detalles sobre cómo configurar estos disparadores, dirígete a sus guías correspondientes: basada en valor, inactividad, geofence.
2. Configurar la acción del webhook
Con la lógica de "disparador" configurada, ahora es el momento de configurar la acción del webhook.
1. Haz clic en el botón “+ add action” para iniciar el proceso. De las opciones disponibles, elige “trigger webhook”.
2. Elige el método HTTP. Este es el método HTTP de la solicitud realizada al activar el evento.
Los métodos permitidos son GET, HEAD, DELETE, POST, PUT y PATCH.
3. Ingresa la URL. Este es el endpoint del servidor que recibirá la carga útil del webhook.
4. Define los encabezados de la solicitud. Estos pueden incluir el tipo de contenido o la autenticación. Se pueden agregar múltiples encabezados.
5. Personaliza el “disparador activo” y los mensajes de “volver a la normalidad” (opcional). Comúnmente, los servicios web esperan una carga útil en JSON, pero también pueden aplicarse datos codificados en URL (u otros marcos de datos específicos).
Usando el ícono de etiqueta en las esquinas superiores derecha de los campos “asunto” y “mensaje”, puedes agregar fácilmente información como ID de dispositivo, marca de tiempo, nombre de variable, etc.
Nota: Por defecto, las entradas de datos que involucran marcas de tiempo se envían en formato legible por humanos (YYY-MM-DD HH:mm:ss TZ). Si prefieres adjuntar el tiempo de época UNIX en milisegundos, haz doble clic en la entrada de datos y elimina el texto desde el símbolo de barra ("|") hasta el final, como se muestra a continuación.
6. Opcionalmente, habilita la opción “repetir acción” si deseas repetir la acción múltiples veces mientras se activa el evento. Puedes elegir con qué frecuencia y hasta cuántas veces se repetirá la acción. Hay un límite de 50 repeticiones de acción.
7. Haz clic en “guardar” una vez que termines de configurar la acción y en “siguiente”, a menos que desees configurar múltiples acciones.
8. Después de completar la configuración de la acción, procederás al paso final, la pestaña “settings”. Allí, nombrarás el evento y le darás una descripción (opcional).
9. Otro paso opcional es usar una etiqueta en el evento. Esta es una gran herramienta para controlar lo que tus usuarios finales ven en tu aplicación. En este caso, por ejemplo, podrías decidir que tu usuario final vea un evento, pero no otro, usando etiquetas. Aprende más sobre etiquetas aquí.
10. Finalmente (a menos que el evento que creaste sea un evento programado), determina la ventana de actividad en la que los eventos deben ejecutarse. Un evento puede tener múltiples ventanas activas haciendo clic en el botón “+ add window” y configurándolas correspondientemente. Después de terminar esto, haz clic en “guardar” y tu evento será desplegado.
NOTA IMPORTANTE: A menudo, los servicios web de terceros implementan restricciones de firewall que pueden impedir que servicios externos como Ubidots accedan a sus recursos a través de webhooks. En esos casos, es necesario agregar la dirección IP del servicio externo a las reglas del firewall del destinatario para evitar el rechazo de la solicitud del webhook. Aquí está el grupo de IPs de Ubidots utilizadas para webhooks. Si es necesario, asegúrate de agregarlas a las respectivas reglas del firewall:
158.85.89.43169.48.10.57