Habilitar o deshabilitar una aplicación en una organización

PUT /v1/organizations/{org_id}/applications/{application_id} · permiso organizations:write

Establece el estado de la aplicación en la organización. Volver a escribir el estado actual no tiene efecto y conserva la versión. If-Match es opcional; si se envía, debe coincidir con el ETag actual. Deshabilitar conserva las asignaciones; estas vuelven a aplicarse cuando la aplicación se vuelve a habilitar. Las escrituras se registran en el registro de auditoría de gestión como organization_application.enabled u organization_application.disabled.

Solicitud

Campo Tipo Obligatorio Descripción
org_id path sí ID de la organización (org_…).
application_id path sí ID de la aplicación (app_…).
If-Match header no Opcional. El ETag actual ("0" para una fila que nunca se escribió); si no coincide, 412.
status string sí enabled o disabled.

Respuesta

200 OK con la fila de acceso y su nuevo ETag.

{
  "organization_id": "org_01j9xk3m7q8r2s4t6v8w0y2z4a",
  "application_id": "app_01j9xm4n8r9s3t5v7w9x1y3z5b",
  "status": "enabled",
  "enabled_at": "2026-10-12T09:30:00.123456Z",
  "updated_at": "2026-10-12T09:30:00.123456Z",
  "version": 1
}

Errores

HTTP code Cuándo
404 not_found La organización o la aplicación no existe en este entorno.
409 organization_pending_deletion Habilitar en una organización pendiente de eliminación.
412 precondition_failed If-Match no coincide con la versión actual; con "0", otra solicitud escribió primero la fila.
422 validation_failed status falta o no es enabled/disabled.
401 unauthenticated La credencial falta, no es válida o está revocada.
403 insufficient_permissions La credencial no tiene el permiso requerido.
429 rate_limited Se superó el límite de tasa; reintenta después del periodo Retry-After.
503 service_unavailable Una dependencia no está disponible temporalmente; reintenta después del periodo Retry-After.

Ejemplo

curl -i -X PUT "https://api.eu.keenauth.com/v1/organizations/org_01j9xk3m7q8r2s4t6v8w0y2z4a/applications/app_01j9xm4n8r9s3t5v7w9x1y3z5b" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -H 'If-Match: "0"' \
  -d '{"status":"enabled"}'