Revocar una clave de API
POST /v1/api-keys/{key_id}:revoke · permiso api-keys:write · Idempotency-Key opcional
Revoca una clave de inmediato. La revocación no se puede deshacer; la clave se rechaza como máximo en 30 segundos. Una clave rotada cuyo solapamiento no ha terminado también se revoca de inmediato. Una clave creada en el panel de control, y cada clave rotada desde ella, solo puede revocarse a sí misma o en el panel de control (permission_escalation).
Solicitud
| Parámetro | En | Descripción |
|---|---|---|
key_id |
ruta | Identificador de la clave de API (key_…). |
Cuerpo:
El cuerpo es opcional; sin él se aplican todos los valores predeterminados.
| Campo | Tipo | Descripción |
|---|---|---|
reason |
string | Opcional. manual (predeterminado) o leaked. |
Respuesta
200 OK. El objeto de clave con revoked_at y revoke_reason establecidos.
{
"id": "key_0000000000000000000000001z",
"name": "ci",
"type": "restricted",
"permissions": ["users:read"],
"allowed_cidrs": [],
"last4": "xxxx",
"created_by": "key_…",
"created_at": "2026-10-01T10:00:00Z",
"expires_at": "2027-10-01T10:00:00Z",
"last_used_at": null,
"last_used_ip": null,
"rotated_from": null,
"revoked_at": "2026-10-02T10:00:00Z",
"revoke_reason": "leaked"
}
Errores
| HTTP | code |
Cuándo |
|---|---|---|
| 401 | unauthenticated |
Falta la clave, no es válida o está revocada. |
| 403 | insufficient_permissions |
La clave no tiene el permiso necesario. |
| 403 | permission_escalation |
La solicitud daría a una clave más permisos, un rango de red más amplio o una expiración más tardía de los que tiene la clave llamadora, una clave restricted intenta crear, rotar o revocar más allá de sus propios permisos, u otra clave intenta rotar o revocar una clave creada en el panel de control. |
| 404 | not_found |
La clave no existe en este entorno. |
| 409 | conflict |
La clave ya está revocada. |
| 422 | validation_failed |
El cuerpo no es válido: reason no es manual ni leaked. |
Ejemplo
curl -X POST "https://api.eu.keenauth.com/v1/api-keys/key_0000000000000000000000001z:revoke" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"reason":"leaked"}'