---
title: "Revoke User Sessions"
method: POST
path: "/api/tenants/{tenant_id}/users/{user_id}/revoke-sessions"
tags: ["tenants"]
---

# Revoke User Sessions

`POST /api/tenants/{tenant_id}/users/{user_id}/revoke-sessions`

## Request

- Base URL: `https://pozeidon.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://pozeidon.ai/api/tenants/{tenant_id}/users/{user_id}/revoke-sessions`
- Auth: none declared. Required headers: `x-admin-secret`

Force-logout a user from every OIDC client (all copilots + pozeidon).

Bumps ``session_epoch`` and revokes the user's outstanding refresh-token
families. The OIDC refresh path (``oauth_provider/grants.py``) re-checks
the live epoch on every refresh, so the next refresh from any client is
denied (``session revoked``) — no copilot-side coordination needed. The
user's current access token still lives out its short TTL.

## Path parameters

- `tenant_id` string, required
- `user_id` string, uuid, required

## Headers

- `x-admin-secret` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/pozeidon/apis/pozeidon-demo.md) · [All operations](https://skmtc.dev/pozeidon/apis/pozeidon-demo/llms.txt) · [OpenAPI document](https://skmtc.dev/pozeidon/apis/pozeidon-demo/revisions/de288dc26752?raw)
