Webhooks

Un webhook avisa a un sistema tuyo en cuanto ocurre algo en goPrevina: se registra un incidente, se completa una sesión de formación o cambia el estado de un requisito de cumplimiento. goPrevina envía el evento a la URL que indiques, firmado con HMAC-SHA256 en la cabecera X-Webhook-Signature.

1. Qué hay en la pantalla

El bloque «Crear un webhook» con «Nombre», «URL de destino» y la lista de «Eventos» que se pueden enviar: «incident.created» (incidente registrado), «training.session.completed» (sesión de formación completada) y «compliance.status.changed» (cambio de estado de cumplimiento). Debajo, los webhooks creados; si no hay ninguno, dice «Todavía no hay webhooks.».

2. Crear un webhook

1. Escribe un «Nombre» y la «URL de destino» (la dirección HTTPS de tu sistema que recibirá los eventos).

2. Marca al menos un evento.

3. Pulsa «Crear un webhook».

4. Aparece la clave de firma con el aviso “Copia ahora esta clave de firma; no volverá a mostrarse:”. Guárdala en tu sistema: con ella comprueba que cada petición viene de goPrevina calculando el HMAC-SHA256 del cuerpo y comparándolo con la cabecera X-Webhook-Signature.

3. Comprobar las entregas y desactivar

Cada webhook de la lista tiene “Historial de entregas” (evento, estado, intentos, código de respuesta y fecha de cada envío), “Activar / desactivar” y “Eliminar”. Si tu URL falla 5 veces seguidas, goPrevina lo marca como “desactivado automáticamente” y deja de enviar: arregla tu sistema, mira el historial y vuelve a activarlo.

4. Qué recibe tu sistema

Cada evento llega como una petición POST con el cuerpo en JSON y dos cabeceras: X-Webhook-Event, con el nombre del evento, y X-Webhook-Signature, con la firma. Tu sistema tiene que responder con un código 2xx; cualquier otra respuesta cuenta como fallo, se reintenta y aparece en el “Historial de entregas”.