Saltar al contenido principal

¿Qué es un webhook?

Un webhook te permite recibir una notificación cuando ocurren determinadas acciones del sistema mediante una llamada a una URL que tú proporcionas. Los webhooks también se conocen como “URL Callbacks” o “HTTP push calls”. Tu URL debe usar SSL y comenzar con HTTPS.

Acciones de webhook

Consulta las acciones disponibles para webhooks.

Entendiendo los webhooks de Ayrshare

Los webhooks se categorizan por la acción específica y se registran a nivel del Primary Profile o del User Profile. Cualquier actualización para el Primary o el User Profile se envía primero al webhook registrado para el User Profile. Si el User Profile no tiene un webhook registrado, la actualización se enviará al webhook registrado en el Primary Profile. Por ejemplo:
  • Si un User Profile tiene un webhook Social Action registrado y desvincula TikTok, se llamará a la URL del webhook Social Action registrado para el User Profile. El webhook del Primary Profile no se llamará.
  • Si un User Profile desvincula TikTok y no tiene un webhook Social Action registrado, pero el Primary Profile sí tiene un webhook registrado, se llamará a la URL del webhook Social Action registrado para el Primary Profile.

Registrar un webhook

Registra un webhook proporcionando una URL de endpoint y el tipo de acción al endpoint POST /hook/webhook. Cuando ocurra la acción, se enviará un mensaje HTTP POST a la URL proporcionada. Por ejemplo, registra una URL para recibir notificaciones del estado de un scheduled post. La URL de endpoint del webhook no debe usar redirecciones y debe ser la URL de destino final. Si solo registras el webhook del Primary Profile, los User Profiles heredarán automáticamente el webhook del Primary Profile. Para tener un webhook único para cada User Profile, debes registrar un webhook para cada User Profile.
Después de que tu webhook reciba el HTTP POST, tu servidor debe responder con un status HTTP 200 para marcar la llamada como correcta. Si tu servidor no responde en 10 segundos, se registrará una respuesta 503.
También puedes registrar webhooks en el Developer Dashboard.

Reintentos de webhook

Si la respuesta HTTP de tu servidor no está en el rango de éxito 200-299, el sistema reintentará automáticamente la llamada al webhook dos veces más. El primer reintento se realizará al cabo de 5 segundos y el segundo reintento 30 segundos después. Los reintentos tendrán el mismo hookId y se marcarán como reintentos.

Seguridad de webhook

Puedes optar por añadir seguridad adicional configurando autenticación HMAC como solicitud HTTP. Esto se hace a menudo para prevenir ataques de repetición. Ayrshare utiliza HMAC-SHA256 para hashear el cuerpo del mensaje e incluye el hash y el UNIX timestamp en la cabecera del POST.
Basándote en una secret key establecida al registrar tu webhook, puedes validar el POST comparando la cabecera X-Authorization-Content-SHA256 con el hash SHA256 del cuerpo del POST. La secret key se utiliza en todas las acciones de webhook, por lo que establecerla para una acción cambiará el secret para todas las acciones.

Logs de webhook

En el Ayrshare Dashboard, puedes ver los webhooks activos, consultar los detalles del webhook enviado, el estado de la respuesta de tu servidor y reenviar el webhook a la URL registrada. Cambia a un User Profile concreto para ver los logs de webhook de ese perfil.

Códigos de respuesta HTTP

La primera columna indica una respuesta HTTP correcta ✔️ (200, 300) del webhook o una respuesta fallida ✖️ (400, 500). Cambia a un user profile concreto para ver los logs de webhook de ese perfil.

Tasa de error

La “Error Rate” de los 1000 posts más recientes puede consultarse tanto en las páginas Actions como en Webhook Logs del dashboard. Cualquier respuesta del webhook de tu servidor entre 400 y 500 se considera un error.