Webhooks
Un webhook es la forma más sencilla de conexión: un mensaje HTTP a una dirección que defines tú. Slack, Discord y Microsoft Teams reciben esos mensajes directamente como publicación en un canal; los sistemas propios pueden hacer con ellos lo que quieran.
Usos típicos: la dirección de soporte avisa de las nuevas consultas en el canal del equipo. La confirmación de pedido pone en marcha el sistema de gestión de mercancías. La alarma del servidor de un cliente aparece en Discord.
Configurar un punto final
Sección titulada «Configurar un punto final»- Abre Ajustes → Integraciones → Webhooks y activa Activar webhooks.
- Elige Añadir punto final e introduce un Nombre y la URL.
- En Preajuste de payload elige Slack, Discord, Microsoft Teams o Generic JSON. El preajuste rellena la Plantilla de payload (JSON) con una estructura básica adecuada que puedes adaptar libremente.
- Probar envía un mensaje de prueba con datos de ejemplo. En Slack y similares lo ves en el canal al momento.
La URL te la da cada servicio:
- Slack: en
api.slack.com/apps, crea una app con Incoming Webhooks; la URL generada es el punto final. - Discord: ajustes del canal → Integraciones → Webhooks.
- Teams: en el canal, mediante la app Workflows con la plantilla para publicar cuando se recibe una solicitud de webhook.
- Sistemas propios: cualquier dirección que acepte JSON por HTTP POST o PUT.
Se pueden tener varios puntos finales y cada uno se puede desactivar por separado: el canal de soporte y tu propio script pueden convivir.
Disparar mediante una regla
Sección titulada «Disparar mediante una regla»El envío se hace exclusivamente desde la automatización: la acción Enviar webhook dentro de una regla, con el punto final que elijas como destino.
Qué se envía exactamente lo dice la plantilla de payload del punto
final. En ella pones variables entre dobles llaves, que al enviar
se rellenan con los datos del correo que ha disparado la regla:
{{subject}}, {{from}}, {{from_name}}, {{to}}, {{cc}},
{{date}}, {{preview}} (el comienzo del texto), {{tags}},
{{mailbox}}, {{account_id}} y {{rule_name}}. La Referencia de
variables debajo de la plantilla explica cada una. Un aviso de Slack
para el canal de soporte tiene más o menos este aspecto:
{ "text": "Nueva consulta de {{from_name}}: {{subject}}" }Para servidores propios
Sección titulada «Para servidores propios»- Firma: si introduces un Secreto HMAC (opcional), cada
solicitud lleva la cabecera
X-YouniqMail-Signature: sha256=…con una firma HMAC-SHA256 del contenido. Con ella tu servidor comprueba que el mensaje viene de ti. - Reintentos: ante errores del servidor (5xx) y problemas de red, YouniqMail lo reintenta hasta tres veces, con pausas de 1, 2 y 4 segundos. Los rechazos (4xx) no se repiten. El tiempo de espera lo ajustas por punto final, como máximo 30 segundos.
- Método: POST es lo predeterminado, PUT solo si tu punto final lo exige. Las redirecciones no se siguen.
Conviene saberlo
Sección titulada «Conviene saberlo»- El mensaje va al punto final que indiques. Comprueba la URL con cuidado, porque cualquiera que la conozca puede escribir en el canal. Trata las URL de webhook como si fueran contraseñas.
- El contenido lo decides tú: se transmite lo que ponga la plantilla. Quien use solo el asunto y el remitente, solo eso comparte.
- Función Pro: los webhooks forman parte del conjunto Pro.