Volver a herramientas

Cómo generar una URL de webhook

1

Selecciona la plataforma

Elige Slack, Discord o Microsoft Teams como plataforma para tu webhook.

2

Ingresa la URL base

Pega la URL del webhook proporcionada por la plataforma (Slack Incoming Webhook o Discord Webhook URL).

3

Personaliza el mensaje

Configura texto, canal, nombre de usuario, emoji o avatar para el mensaje de tu webhook.

4

Genera y usa

Haz clic en generar para crear la URL completa del webhook y úsala en tus scripts o servicios.

¿Qué es un webhook?

Un webhook es un método de desarrollo web que permite modificar o ampliar el comportamiento de una aplicación mediante callbacks personalizados definidos por el usuario. El término fue acuñado por Jeff Lindsay en 2007 a partir del concepto de hook en programación. A diferencia de las APIs tradicionales donde el cliente consulta al servidor, los webhooks funcionan al revés: el servidor notifica al cliente cuando ocurre un evento específico.

Cuando ocurre el evento, la plataforma origen realiza una petición HTTP (generalmente POST) a la URL configurada para el webhook. Esto permite integrar servicios sin necesidad de infraestructura adicional, simplemente recibiendo datos en un endpoint público.

Plataformas soportadas

  • Slack: Incoming Webhooks, puedes agregar parámetros como text, channel, username e icon_emoji
  • Discord: Discord Webhooks, soporta embeds y personalización de avatar
  • Microsoft Teams: Incoming Webhooks con formato de tarjetas adaptativas
  • Personalizado: Cualquier URL de webhook con parámetros query string

Casos de uso comunes

  • Integración y despliegue continuo (CI/CD): Plataformas como GitHub y GitLab envían webhooks a Jenkins, GitHub Actions u otros sistemas para disparar builds automáticos al hacer push al repositorio.
  • Notificaciones en tiempo real: Slack, Discord y Microsoft Teams reciben webhooks para enviar alertas de monitoreo, notificaciones de ventas o avisos de errores directamente en canales de equipo.
  • Sincronización de datos entre servicios: Conectar aplicaciones como Stripe, Shopify o Salesforce para actualizar registros automáticamente cuando ocurren eventos como pagos, pedidos o cambios de estado.
  • Autenticación de webhooks: Los webhooks pueden autenticarse mediante firmas HMAC, tokens compartidos o autenticación básica HTTP para verificar que la petición proviene de la fuente legítima y evitar ataques de suplantación o repetición.

Preguntas frecuentes

¿Qué es un webhook y cómo funciona?

Un webhook es un callback HTTP que permite a una aplicación enviar datos en tiempo real a otra cuando ocurre un evento específico. Funciona al revés que una API tradicional: en lugar de polling, el webhook notifica automáticamente a tu endpoint vía HTTP POST. El término fue acuñado por Jeff Lindsay en 2007 y hoy se usa en integraciones como pagos de Stripe, pushes de GitHub o alertas de monitorización.

¿Qué diferencia hay entre un webhook y una API?

La diferencia principal es quién inicia la comunicación. En una API tu aplicación hace peticiones (pull) preguntando "¿hay datos nuevos?". En un webhook, el servidor envía los datos (push) automáticamente cuando ocurre el evento, sin necesidad de polling. Los webhooks son más eficientes y rápidos para notificaciones en tiempo real, pero requieren un endpoint público y manejo de seguridad como firmas HMAC.

¿Cómo crear un webhook en Slack o Discord?

En Slack: Ve a tu canal > Integraciones > Incoming Webhooks > Activar y copia la URL. En Discord: Abre configuración del canal > Integraciones > Webhooks > Nuevo webhook y copia la URL. Nuestro generador te ayuda a construir la URL completa con parámetros como texto, canal, nombre de usuario y emojis, lista para enviar desde cualquier script.

¿Qué ejemplos prácticos de webhook existen?

Casos de uso comunes: 1) CI/CD: GitHub envía un webhook a Jenkins al hacer push para disparar un build, 2) Pagos: Stripe notifica a tu backend cuando un pago se completa o falla, 3) Monitorización: Prometheus alerta a Slack cuando un servidor se cae, 4) Automatización: Un webhook de Shopify actualiza tu ERP cuando se crea un nuevo pedido, 5) ChatOps: Un bot envía notificaciones de despliegue a Discord con el resultado.

¿Cómo firmar un webhook con HMAC para verificar su autenticidad?

La firma HMAC (Hash-based Message Authentication Code) protege tu webhook contra suplantación. El emisor calcula un hash HMAC del payload usando un secreto compartido y lo envía en un header (X-Hub-Signature, X-Slack-Signature, etc.). Tu servidor recalcula el hash y lo compara. Si coinciden, la petición es legítima. Para probarlo, genera un webhook firmado con nuestro Generador de Firmas HMAC, usando SHA256 y tu secreto compartido.

¿Qué es un webhook retry y cómo funciona?

Un webhook retry es el reintento automático que hace el emisor cuando tu endpoint no responde (timeout) o devuelve un error (código 5xx). Por ejemplo, Stripe reintenta hasta 3 veces con espera exponencial (1 min, 10 min, 100 min). GitHub reintenta hasta 6 veces en 30 minutos. Es importante que tu endpoint sea idempotente — capaz de manejar el mismo webhook múltiples veces sin duplicar acciones — usando un ID único (X-Request-ID) para detectar duplicados.