Skip to main content
Un webhook saliente es un aviso que Asistian le manda a otro sistema en el momento en que algo pasa: se creó una conversación, un contacto se calificó, se agendó una reserva, se cerró una venta. Tu sistema recibe un POST con los datos en JSON y hace con ellos lo que necesites. En Asistian se arma con una automatización: el evento decide cuándo se envía y la acción Enviar Webhook decide a dónde y qué se envía.
¿Quieres lo contrario, que tu sistema le avise a Asistian? Eso es un webhook entrante.

Antes de empezar

  • Una URL pública (https://…) que acepte un POST con JSON. Si usas Zapier, Make o n8n, es la URL que te da su disparador de tipo Webhook.
  • Si todavía no tienes servidor, usa webhook.site: te da una URL de prueba y te muestra todo lo que le llega.

Crear el webhook

1

Crea la automatización

Ve a Configuración → Automatizaciones → Crear Automatización.
2

Elige cuándo se envía

En el nodo del evento, abre Tipo de Evento y elige qué tiene que pasar. Sirve cualquiera de los eventos de la lista completa. Los más usados para avisar a otro sistema:Si solo te interesan algunos casos (por ejemplo, un buzón o una etapa en particular), agrega condiciones.
3

Agrega la acción Enviar Webhook

Haz clic en el + de la línea que une el evento con Fin, escribe webhook en el buscador y elige Enviar Webhook.
4

Llena los datos del envío

5

Prueba la conexión

En Probar Webhook, haz clic en Test. Asistian manda un envío de prueba a tu URL, con la misma firma y el mismo cuerpo que un envío real, y te muestra el código HTTP que respondió tu sistema y su respuesta.Tres diferencias con un envío real: las variables ({{…}}) viajan sin reemplazar, porque todavía no hay un evento del que sacar los datos; sin payload personalizado, data trae datos de ejemplo en lugar del evento; y la prueba espera la respuesta 10 segundos (el envío real, 30).
6

Guarda y activa

Guarda la automatización y revisa que esté activa. Desde ese momento, cada vez que ocurra el evento se manda el webhook.

Qué recibe tu sistema

Encabezados

El cuerpo por defecto

Si no escribes un payload personalizado, Asistian manda el evento completo:
  • event es el Nombre del Evento y timestamp, la hora del envío.
  • data trae la conversación, el contacto, el agente, la etapa y el canal, más el objeto propio del evento cuando aplica: booking en reservas, sale en ventas, deal en oportunidades, ticket en tableros. Lo que trae cada evento está en la columna Datos que trae de la lista de eventos.
  • Los mismos datos también llegan con su nombre anterior (lead, client, source, sender) para no romper integraciones viejas. Usa los nuevos.
El cuerpo por defecto es grande y trae datos que tu sistema probablemente no necesita. Para una integración en producción, usa un payload personalizado con solo los campos que vas a leer: es más fácil de mantener y no comparte datos de más.

Payload personalizado

Escribe el JSON que quieres recibir y usa {{variable}} donde va un dato:
El JSON que escribes es el cuerpo que se envía, tal cual: no se envuelve en event, timestamp y data. Si los necesitas, agrégalos tú ("evento": "{{event_type}}", "fecha": "{{timestamp}}"). Variables más usadas: Cada evento trae además sus propios datos (la etapa anterior en un cambio de etapa, el formulario en Formulario contestado, el horario anterior en una reserva reprogramada…). Están en la lista de eventos. Cómo se reemplazan:
  • Las variables funcionan en los valores, no en los nombres de los campos.
  • El resultado siempre es texto: "{{lead.id}}" llega como "7788", no como número.
  • Si la variable no existe para ese evento (por ejemplo, {{booking.id}} en un evento de conversación), llega tal cual, con las llaves. Si ves {{…}} en lo que recibes, esa es la causa.
Si el JSON tiene un error (una coma de más, una comilla o una llave faltante), el editor lo marca en rojo y no te deja probar ni guardar hasta que lo corrijas.

Verificar la firma

Si configuraste un Secreto, cada envío trae el encabezado X-Webhook-Signature con el formato sha256=<firma>. La firma es un HMAC-SHA256 del cuerpo crudo de la petición, usando tu secreto como llave, en hexadecimal. Tu sistema la calcula igual y compara:
Calcula la firma sobre el cuerpo tal como llegó. Si primero lo conviertes a objeto y luego otra vez a texto, el orden o los espacios cambian y la firma ya no coincide.

Si tu sistema falla

  • Asistian espera la respuesta hasta 30 segundos.
  • Cualquier respuesta 2xx cuenta como entregado. Cualquier otro código, un error de red o pasarse del tiempo cuenta como fallo.
  • Un envío fallido no se reintenta. Si tu servidor estaba caído en ese momento, ese aviso se pierde: diseña tu integración para poder ponerse al día (por ejemplo, con una revisión periódica).
  • Responde 200 en cuanto recibas el envío y procesa después, en segundo plano. Un sistema que tarda más de 30 segundos se ve como caído aunque al final termine bien.
Cuando un envío falla, la ejecución queda marcada con error en el Historial de la automatización y te avisamos en la campanita (como máximo un aviso por automatización cada 24 horas). En Configuración → Automatizaciones → Avisos de fallo puedes activar Enviarme también un correo.
La URL tiene que ser pública. Asistian no envía a localhost, a direcciones de red privada ni a URLs con usuario y contraseña escritos dentro (https://usuario:clave@…).

Ver lo que se envió

  • Historial de la automatización (en su tarjeta, en Configuración → Automatizaciones): cada ejecución, si salió bien y, si falló, el motivo (por ejemplo, HTTP 404).
  • Configuración → Integraciones → Webhooks → Gestionar, pestaña Registros de Ejecución: los últimos envíos y recepciones de webhooks de tu cuenta, con su estado y tiempo de respuesta.

Que tu asistente de IA lo dispare

Además de un evento, tu asistente de IA puede ejecutar la automatización en medio de una conversación, por ejemplo para mandar los datos del cliente a tu sistema cuando confirma un pedido.
1

Crea la automatización con la acción Enviar Webhook

Igual que arriba. Déjala activa.
2

Dale la habilidad al asistente

En la configuración del asistente, activa la habilidad avanzada Ejecutar Automatización y elige esa automatización.
3

Dile cuándo usarla

En sus instrucciones, describe el momento: “Cuando el cliente confirme su pedido, ejecuta la automatización para enviarlo al sistema de pedidos”.
Cuando el asistente la ejecuta, la automatización corre sobre la conversación en la que está: las variables ({{client.email}}, {{lead.id}}…) toman los datos de esa conversación. Las condiciones del evento no se revisan en ese caso: el asistente decide cuándo, según sus instrucciones. Cada ejecución queda en el Historial de la automatización.

Preguntas frecuentes

Sí. En tu herramienta, crea un flujo cuyo disparador sea un webhook (en Zapier, Webhooks by Zapier → Catch Hook), copia la URL que te da y pégala en URL del Webhook.
La acción no tiene campo para encabezados propios. Usa el Secreto y valida la firma, o pide a tu sistema una URL que ya incluya su token (por ejemplo, https://api.tusistema.com/hooks/asistian?token=…).
Sí: agrega dos acciones Enviar Webhook en la misma automatización, una por URL. Cada una se envía y se registra por separado.
La variable no existe para ese evento, o está mal escrita. Revisa la tabla de variables y el evento que elegiste.