Obtener una exportación de auditoría
GET /v1/audit-exports/{export_id} · permiso audit-exports:read
Devuelve un trabajo de exportación y su estado: queued, running, completed, failed o expired.
Solicitud
| Parámetro | En | Obligatorio | Descripción |
|---|---|---|---|
export_id |
path | sí | Identificador del trabajo de exportación, con el prefijo aex_. |
Respuesta
200 OK y el trabajo. Los campos vacíos son null.
record_count,fileymanifest_sha256solo se rellenan en trabajoscompletedyexpired.filedescriberecords.ndjson.gzdentro del paquete (sha256es hexadecimal).failure_reasonsolo se rellena en trabajosfailed:too_many_records,checkpoint_unavailable,integrity_erroroattempts_exhausted.- El archivo se elimina en
expires_at(completed_atmás 7 días); el trabajo pasa entonces aexpiredy ya no se puede descargar.
{
"id": "aex_01j9xk3m7q8r2s4t6v8w0y2z4e",
"status": "completed",
"filter": {
"stream": "admin",
"from": "2026-07-01T00:00:00Z",
"to": "2026-10-01T00:00:00Z",
"action": "user.",
"category": null,
"actor_type": null,
"actor_id": null,
"target_type": null,
"target_id": null,
"org_id": null,
"outcome": null,
"request_id": null,
"correlation_id": null,
"agent_only": false
},
"include_ip": false,
"record_count": 18240,
"file": {
"name": "records.ndjson.gz",
"sha256": "9f2c4b8e1d7a3f6c0b5e8d2a4c7f1e3b6a9d0c2e5f8b1a4d7c0e3f6a9b2c5d8e",
"size": 2381904
},
"manifest_sha256": "3b7e1f9c2d5a8e0b4f6c1a3d7e9b2f5c8a0d4e6b1c3f7a9e2d5b8c0f4a6e1d3b",
"failure_reason": null,
"created_at": "2026-10-19T09:00:00Z",
"started_at": "2026-10-19T09:00:02Z",
"completed_at": "2026-10-19T09:01:10Z",
"expires_at": "2026-10-26T09:01:10Z",
"recorded_before": "2026-10-19T09:00:00Z",
"requested_by": {"type": "api_key", "id": "key_01j9xk3m7q8r2s4t6v8w0y2z4d"}
}
Errores
Todo error es un cuerpo application/problem+json con un code estable.
| HTTP | code |
Cuándo |
|---|---|---|
| 401 | unauthenticated |
Falta la clave de API, no es válida o ha sido revocada. |
| 403 | insufficient_permissions |
La clave no tiene audit-exports:read. |
| 404 | not_found |
El trabajo no existe, pertenece a otro entorno o el identificador tiene un formato incorrecto. |
| 429 | rate_limited |
Se superó el límite de frecuencia; respete Retry-After. |
| 503 | service_unavailable |
Una dependencia no está disponible temporalmente; reintente más tarde. |
Ejemplo
curl https://api.eu.keenauth.com/v1/audit-exports/aex_01j9xk3m7q8r2s4t6v8w0y2z4e \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
keenauth audit-exports get aex_01j9xk3m7q8r2s4t6v8w0y2z4e
Datos personales
Este endpoint contiene datos personales: eventos de auditoría. Datos personales en las API de KeenAuth describe qué se almacena, cuánto tiempo se conserva y cómo se elimina. No envíe categorías especiales de datos personales (salud, datos biométricos, religión, opiniones políticas, orientación sexual) en ningún campo.