Saltar al contenido

Webhook

Última actualización:

Qué es un webhook

Un webhook también se conoce como callback HTTP o API inversa. Con una llamada normal a una API, tu programa pide datos a otro sistema. Con un webhook, registras una URL una sola vez, eliges los eventos que te interesan y el otro sistema llama a esa URL cada vez que ocurre uno de ellos. El mensaje suele ser una petición POST con un cuerpo JSON que describe el evento.

La alternativa es el polling: consultar una API cada pocos minutos en busca de cambios. El polling desperdicia peticiones cuando no ha pasado nada y retrasa las actualizaciones cuando sí. Los webhooks evitan ambas cosas.

Cómo funciona

En un webhook intervienen un emisor y un receptor:

  • El receptor crea un endpoint, una URL en su propio servidor que acepta peticiones por HTTPS.
  • En la configuración del emisor, registra esa URL y elige los eventos a los que quiere suscribirse.
  • Cuando ocurre un evento, el emisor envía a la URL un payload JSON con el tipo de evento y sus datos.
  • El receptor comprueba que la petición es auténtica, responde rápido con un código de estado 2xx y después procesa los datos. Si no recibe una respuesta correcta, el emisor suele reintentarlo más tarde.

Ejemplo

Una tienda online quiere que su programa de almacén conozca cada pedido nuevo. En lugar de que el programa consulte la tienda cada minuto, la tienda envía un webhook al endpoint del programa con cada pedido. El payload incluye el número de pedido, los artículos y la dirección de envío, y la preparación puede empezar en segundos.

Buenas prácticas para recibir webhooks

Un endpoint de webhook es una URL pública, así que trata cada petición entrante con cuidado:

  • Verifica la firma. Muchos emisores firman cada payload con un secreto compartido, a menudo mediante HMAC, para que puedas confirmar que la petición viene de ellos y no se ha modificado por el camino.
  • Usa HTTPS para que los payloads, que pueden contener datos personales, viajen cifrados.
  • Responde rápido. Devuelve un estado 2xx de inmediato y haz el trabajo lento en segundo plano, o el emisor puede dar el envío por fallido.
  • Cuenta con duplicados. Los reintentos pueden entregar el mismo evento dos veces, así que usa el ID del evento para procesarlo una sola vez. Esta propiedad se llama idempotencia.

Por qué importa en los chatbots para empresas

Los webhooks conectan un chatbot con el resto de la empresa sin que nadie tenga que vigilar un panel. Una plataforma de chatbot puede enviar un webhook cuando termina una conversación o se capta un lead, para que un CRM, una hoja de cálculo o una herramienta de automatización lo recoja al instante. Al comparar herramientas de chatbot, comprueba qué eventos pueden enviar y si los payloads van firmados.

Qué ofrece intoCHAT en su lugar

intoCHAT no envía webhooks ni tiene integración con Zapier o Make. Los leads nuevos te llegan de dos formas: un aviso por email de cada lead nuevo, que recibe el propietario y hasta 5 direcciones más, y la tabla de leads, donde puedes filtrarlos, abrir la conversación de cada uno y exportarlos en CSV para tu CRM o tu herramienta de email marketing.

Las acciones de API personalizadas de intoCHAT funcionan de otra manera. El agente llama a tu API HTTP durante el chat cuando la conversación lo necesita, por ejemplo para consultar un precio o la disponibilidad, no de forma automática ante un evento fijo. Sirven para llevar datos en tiempo real a las respuestas, no para enviar cada lead a otro sistema.

Preguntas frecuentes

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

Una API espera tu petición y la responde. Un webhook te envía datos por su cuenta cuando ocurre un evento. En la práctica funcionan juntos: el webhook avisa de que ha pasado algo y tu sistema puede llamar a la API para obtener más detalles.

¿Son seguros los webhooks?

Pueden serlo si el receptor hace su parte. Usa un endpoint HTTPS, verifica la firma que el emisor añade a cada payload y rechaza las peticiones que no superen la comprobación. Guarda el secreto compartido en el servidor y cámbialo si se filtra.

¿Qué pasa si mi endpoint de webhook no está disponible?

La mayoría de los emisores reintentan los envíos fallidos durante un tiempo, y algunos desactivan el webhook tras fallos repetidos. Como los reintentos pueden entregar el mismo evento varias veces, guarda los ID de evento y omite los que ya hayas procesado.

¿intoCHAT admite webhooks?

No. intoCHAT no envía webhooks ni tiene integración con Zapier o Make. Cada lead nuevo genera un aviso por email al propietario y hasta a 5 direcciones más, y puedes exportar los leads en CSV desde la tabla de leads.

Míralo responder con tu propia web

Pega la dirección de tu web y chatea con un agente creado a partir de tus páginas. Tarda alrededor de un minuto.

Crea tu agente gratis

Plan gratuito, sin tarjeta de crédito.