Webhooks

4 min de lectura

Webhooks

Los webhooks permiten que GoVista envíe notificaciones de eventos en tiempo real a tus sistemas cuando ocurre algo importante.

¿Qué son los webhooks?

En lugar de hacer polling a la API para comprobar cambios, los webhooks envían peticiones HTTP POST a tu servidor cuando ocurren eventos.

Eventos disponibles

Eventos de dispositivo:

  • device.online — El dispositivo se ha puesto online
  • device.offline — El dispositivo se ha quedado offline
  • device.paired — Nuevo dispositivo emparejado
  • device.removed — Dispositivo eliminado
  • device.alert — Se ha disparado una alerta de dispositivo

Eventos de contenido:

  • content.uploaded — Nuevo contenido subido
  • content.deleted — Contenido eliminado
  • content.approved — Contenido aprobado
  • content.rejected — Contenido rechazado

Eventos de lista de reproducción:

  • playlist.created — Nueva lista creada
  • playlist.deployed — Lista desplegada a dispositivos
  • playlist.updated — Lista modificada

Eventos de programación:

  • schedule.activated — Programación activada
  • schedule.deactivated — Programación desactivada

Crear un webhook

1. Ve a Ajustes > API > Webhooks 2. Haz clic en Crear webhook 3. Introduce la URL del endpoint (debe ser HTTPS) 4. Selecciona los eventos que quieres recibir 5. Opcionalmente, añade una clave secreta para verificación de firma 6. Guarda y activa

Payload del webhook

``json { "event": "device.offline", "timestamp": "2025-01-15T10:30:00Z", "data": { "device_id": "dev_abc123", "device_name": "Lobby Screen 1", "store": "NYC Downtown", "last_heartbeat": "2025-01-15T10:25:00Z" } } ``

Usa los webhooks para construir flujos automatizados. Por ejemplo, envía un mensaje a Slack cuando un dispositivo se quede offline, o actualiza tu panel de monitorización en tiempo real.

Verificación de firma

Si configuras una clave secreta, GoVista incluye una firma HMAC-SHA256 en la cabecera X-GoVista-Signature. Verifica esta firma para asegurarte de que el webhook procede de GoVista.

Lógica de reintentos

Si tu endpoint devuelve un código de estado no-2xx:

  • GoVista reintenta hasta 5 veces
  • Intervalos de reintento: 1 min, 5 min, 30 min, 2 horas, 12 horas
  • Tras agotar los reintentos, el webhook se marca como fallido

Registros de webhook

Consulta el historial de entrega de cada webhook:

  • Payload enviado
  • Respuesta recibida
  • Código de estado
  • Intentos de reintento

Tu endpoint de webhook debe responder en menos de 10 segundos. Los procesos largos deben gestionarse de forma asíncrona: acepta el webhook rápidamente y luego procésalo en segundo plano.

¿Te resultó útil este artículo?