
# Se déconnecter d'une session

`POST /fapi/v1/me/sessions/{session_id}:revoke` · appelé depuis l'hôte de connexion de l'environnement

Met fin à l'une des autres sessions de l'utilisateur authentifié. Ses jetons d'actualisation sont révoqués, les jetons d'accès qu'elle a émis sont refusés, et les applications connectées par son intermédiaire sont notifiées. La session qui effectue la requête ne peut pas être terminée ici ; pour vous déconnecter depuis ce navigateur, utilisez le point de terminaison de déconnexion (`/oauth2/logout`), qui supprime également le cookie. Nécessite le cookie `__Host-idp_session` de l'utilisateur authentifié ; si le cookie est absent, expiré ou révoqué, renvoie `401 unauthenticated`. Une application de première partie sur une autre origine peut à la place envoyer son jeton d'accès à l'API front (`Authorization: DPoP <token>` avec une preuve DPoP ; voir [Jeton d'accès à l'API front](/docs/api/fapi/front-api-token)). La session doit avoir été vérifiée au cours des 300 dernières secondes ; sinon, la réponse est `401 step_up_required` avec un challenge `WWW-Authenticate` conforme à la RFC 9470 (`max_age=300`), et rien ne change. Reconnectez-vous (par exemple avec `max_age=0` ou `prompt=login`) puis réessayez. Une session de l'utilisateur déjà terminée renvoie `204` et rien ne change.

## Requête

En-têtes :

| En-tête | Obligatoire | Description |
| --- | --- | --- |
| `Idp-Client` | oui | Identifiant du SDK. |
| `Origin` | oui | Doit être exactement `https://<sign-in host>`. |

`session_id` : l'identifiant de session renvoyé par `GET /fapi/v1/me/sessions` (`ses_…`).

Aucun corps.

## Réponse

`204 No Content`.

## Erreurs

| Statut | Code | Quand |
| --- | --- | --- |
| 401 | `unauthenticated` | Aucun cookie de session valide. |
| 401 | `step_up_required` | La session a été vérifiée il y a plus de 300 secondes. |
| 403 | `origin_not_allowed` | `Origin` est absent ou incorrect. |
| 404 | `not_found` | Aucune session de cet utilisateur ne correspond (un identifiant inconnu, mal formé ou appartenant à un autre utilisateur donne la même réponse). |
| 409 | `conflict` | L'identifiant correspond à la session qui effectue la requête. |

## Exemple

```bash
curl -X POST https://example.keenauth.app/fapi/v1/me/sessions/ses_01jbz6x8kq3m2n4p5r6s7t8v9w:revoke \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -H "Origin: https://example.keenauth.app" \
  -b cookies.txt
```
