Endpoints / Alertas

GET

Listar eventos de alerta

Abre una conexión de eventos en tiempo real para recibir cambios de alertas de la empresa del usuario autenticado.

GET/alerts/events

Caso de Uso

Se usa cuando la aplicación necesita mostrar alertas nuevas, actualizadas o resueltas sin consultar repetidamente el listado de alertas. Al consumirlo, el usuario recibe eventos en tiempo real mientras la conexión permanezca abierta.

Autenticación

Requiere token JWT en el header Authorization: Bearer <token>.

Parámetros de ruta

Este endpoint no recibe parámetros de ruta.

Body

No aplica.

Reglas de negocio

1

Solo se envían alertas de la empresa del usuario autenticado.

2

La empresa del usuario autenticado debe estar activa.

3

El usuario autenticado debe estar activo.

4

El usuario autenticado debe tener rol administrador, jefe o empleado.

5

La conexión se mantiene abierta hasta que el cliente la cierre.

6

El servidor revisa cambios de alertas cada 5 segundos.

7

El servidor envía un evento connected al abrir la conexión.

8

El servidor puede enviar eventos alert-created, alert-updated o alert-resolved.

9

El servidor envía señales de mantenimiento :keepalive para conservar activa la conexión.

Errores esperados

401No autorizado

No se envió un token JWT válido o el token no contiene información válida del usuario.

404La empresa no existe

La empresa asociada al usuario autenticado no fue encontrada.

404El usuario no existe

El usuario autenticado no fue encontrado dentro de su empresa.

403La empresa no está activa

La empresa asociada al usuario autenticado está inactiva.

403El usuario no pertenece a la empresa

El usuario autenticado no pertenece a la empresa indicada por su sesión.

403El usuario no puede acceder a otra empresa

El usuario autenticado intentó acceder a información de una empresa distinta a la suya.

403El usuario no es jefe, empleado o administrador

El rol del usuario no tiene permiso para escuchar eventos de alertas.

403El usuario no está activo

El usuario autenticado está inactivo y no puede usar el sistema.

Notas de uso

1

Este endpoint usa Server-Sent Events, por lo que la respuesta tiene formato text/event-stream.

2

Usa una conexión persistente y ciérrala cuando el usuario salga de la pantalla o cierre sesión.

3

Para pruebas con cURL, usa -N para ver los eventos a medida que llegan.

4

Si el token expira, abre una nueva conexión después de renovar la sesión.

5

El evento connected confirma que la suscripción quedó abierta correctamente.