Webhooks: cuando el software te llama a ti
Cada puerta hasta ahora funciona en una sola dirección: tú llamas, el sistema responde. Pero algunas de las cosas más importantes del software son eventos que no puedes predecir. Los webhooks invierten la dirección — en lugar de que tú llames al servidor, el servidor te llama a ti.
Cada puerta hasta ahora hacía que tú llamaras al software. Un webhook lo invierte: el software te llama a ti, en el instante en que algo sucede.
Al terminar esta lección
Entenderás por qué el sondeo (polling) desperdicia llamadas y llega tarde, cómo un webhook arregla ambas cosas, por qué te convierte en el servidor por un momento, y el único paso de seguridad que nunca debes saltarte.
Supón que quieres saber en el instante en que un cliente paga. Sin webhooks, haces sondeo (polling): le preguntas al servicio de pagos “¿algún pago nuevo?” de forma periódica, digamos una vez por minuto. Casi todas esas preguntas vuelven sin nada, y la única que importa llega tarde — por todo el tiempo que dure tu intervalo. Estás haciendo mucho trabajo para oír casi siempre “no”. La diferencia se ve más fácil en un reloj:
Con un webhook registras una URL una vez. Cuando el pago llega, el servicio envía un POST HTTP a tu URL con el evento en el cuerpo. Sin llamadas desperdiciadas, sin retraso. Fíjate en lo que les ha pasado a los roles de la lección sobre las API: por ese instante, tú eres el servidor y el servicio de pagos es el cliente. Toda la relación se invirtió.
El único paso que nunca debes saltarte
Como tu URL de webhook es pública, cualquiera podría hacerle un POST — incluido alguien que falsifique un evento de “pago completado” que tú nunca recibiste. Por eso los proveedores serios firman sus webhooks. GitHub envía una cabecera X-Hub-Signature-256; Stripe envía una Stripe-Signature. Cada una es un sello criptográfico que solo el verdadero emisor podría producir. Verificas esa firma antes de confiar en un solo byte de la carga útil — sáltatelo, y tarde o temprano actuarás sobre un evento falsificado.
No sigas preguntando. Deja que el mundo te avise cuando cambie.
Por qué esto importa a continuación
Los webhooks son el latido de la automatización dirigida por eventos — el disparador que inicia una tubería en el instante en que el mundo cambia. Llega un pago, se dispara un webhook, y toda una secuencia se ejecuta sin que nadie esté mirando. Justo ahí es donde retoma el curso de Automation & Agents.
Basado en GitHub webhooks documentation (entrega y la cabecera X-Hub-Signature-256); Stripe webhooks (los POST de eventos y Stripe-Signature).
0
Toca para valorar
¿Te resultó útil este capítulo?
