Ir al contenido

API de notificaciones

Probara expone dos endpoints para la bandeja de notificaciones del usuario de sesión: un listado paginado por cursor y una acción de marcar-leído. Ambos requieren una sesión autenticada — inicia sesión en el navegador y envía la cookie de sesión más X-Organization-Id al llamar desde scripts propios. Ambos están limitados a la organización activa; no existe una superficie de token de portador (API token) para notificaciones.

GET/api/v1/notifications

Devuelve la bandeja del usuario de sesión para la organización activa, de más reciente a más antigua.

ParámetroTipoNotas
cursorULIDCuando se envía, devuelve filas posteriores a este cursor (página más antigua)
limitintegerTamaño de página. Por defecto 20. 0 es un valor explícito válido. Valores mayores a 100 son rechazados con 422 validation_failed
unreadOnlybooleantrue devuelve solo las filas no leídas
{
"items": [
{
"ulid": "01J…",
"kind": "defect.assigned",
"entityType": "defect",
"entityUlid": "01J…",
"actorLabel": "María López",
"eventCount": 1,
"createdAt": 1700000000000,
"readAt": null,
"payload": { "entity": { "title": "Login regression", "url": "/x" } }
}
],
"nextCursor": "01J…",
"unreadCount": 4
}

unreadCount refleja los mismos filtros de autorización y estado de lectura que items, así que ambos nunca pueden discrepar — no es una consulta separada.

Ventana de terminal
curl -sS \
-H "Cookie: $PROBARA_SESSION_COOKIE" \
-H "X-Organization-Id: $ORG_ULID" \
"https://app.probara.net/api/v1/notifications?limit=20&unreadOnly=true"
POST/api/v1/notifications/read
CampoRequeridoNotas
ulidsnoArray de ULIDs de notificaciones a marcar como leídas, limitado a las filas propias del solicitante sin importar el valor. Omitirlo o enviarlo vacío marca como leída cada fila visible. Como máximo 200 entradas

ulids tiene un límite de 200 entradas — un techo contra abuso, no un techo de producto. Enviar más de 200 responde 422 validation_failed nombrando el campo ulids; ninguna fila cambia su estado de lectura y el contador de no leídas queda sin cambios.

Omitir ulids por completo no se ve afectado por este límite: conserva su significado ya publicado de marcar-todo-lo-visible.

204 No Content en éxito. Marcar una fila ya leída (o repetir la misma solicitud) es una operación sin efecto.

Ejemplo — marcar como leídas todas las filas visibles

Sección titulada «Ejemplo — marcar como leídas todas las filas visibles»
Ventana de terminal
curl -sS -X POST \
-H "Cookie: $PROBARA_SESSION_COOKIE" \
-H "X-Organization-Id: $ORG_ULID" \
-H "Content-Type: application/json" \
--data-raw '{}' \
"https://app.probara.net/api/v1/notifications/read"

Ejemplo — marcar filas específicas como leídas

Sección titulada «Ejemplo — marcar filas específicas como leídas»
Ventana de terminal
curl -sS -X POST \
-H "Cookie: $PROBARA_SESSION_COOKIE" \
-H "X-Organization-Id: $ORG_ULID" \
-H "Content-Type: application/json" \
-d '{"ulids": ["01J...A", "01J...B"]}' \
"https://app.probara.net/api/v1/notifications/read"