Révoquer les sessions d'une organisation

POST /v1/organizations/{org_id}/sessions:revoke · autorisation sessions:write

Révoque toutes les sessions actives ouvertes dans le contexte de l'organisation, pour l'ensemble de ses utilisateurs, ainsi que les familles de jetons d'actualisation émises pour l'organisation ou liées à ces sessions. Les jetons d'accès émis pour l'organisation cessent d'être acceptés par l'introspection et par la vérification de révocation à partir de ce moment. Utilisez-le après un incident de sécurité ou lorsqu'une organisation quitte la plateforme ; pour déconnecter un seul utilisateur ou une seule session, utilisez Révoquer les sessions d'un utilisateur.

Le corps doit contenir un reason. Il n'est conservé que comme note sur l'enregistrement d'audit de gestion ; les sessions elles-mêmes se terminent avec le motif de révocation admin. Les sessions déjà révoquées ou expirées ne sont pas comptées, de sorte qu'un appel répété réussit avec des compteurs à zéro. Envoyez un en-tête Idempotency-Key pour rendre les nouvelles tentatives sûres.

Demande

Paramètre Dans Obligatoire Description
org_id chemin oui Identifiant d'organisation, préfixé org_.

Corps :

Champ Type Obligatoire Description
reason chaîne oui Votre note pour le journal d'audit : 1 à 256 caractères, sans caractères de contrôle ni sauts de ligne.

Réponse

200 OK.

{
  "revoked_sessions": 42,
  "revoked_token_families": 57
}
Champ Description
revoked_sessions Sessions révoquées par cet appel.
revoked_token_families Familles de jetons d'actualisation révoquées par cet appel.

Erreurs

Chaque erreur est un corps application/problem+json accompagné d'un code stable.

HTTP code Quand
400 malformed_request, unknown_field Le corps n'est pas du JSON valide ou contient un champ inconnu.
415 unsupported_media_type Un corps a été envoyé sans Content-Type: application/json.
422 validation_failed reason est absent ou vide (required), dépasse 256 caractères (too_long) ou contient un caractère de contrôle ou un saut de ligne (invalid_value).
404 not_found L'organisation n'existe pas dans cet environnement.
401 unauthenticated La clé d'API est absente, invalide ou révoquée.
403 insufficient_permissions La clé ne dispose pas de l'autorisation sessions:write.
429 rate_limited La limite de débit a été dépassée ; respectez l'en-tête Retry-After.
503 service_unavailable Une dépendance est temporairement indisponible ; réessayez plus tard.

Exemple

curl -X POST https://api.eu.keenauth.com/v1/organizations/org_0a1b2c3d4e5f6g7h8j9k0m1n2p/sessions:revoke \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"reason": "Security incident INC-1042"}'

CLI : keenauth organizations sessions revoke org_0a1b2c3d4e5f6g7h8j9k0m1n2p --reason "Security incident INC-1042" --yes