Skip to content

Cut a principal off immediately: revoke every one of its live sessions.

DELETE
/admin/principals/{id}/sessions
curl --request DELETE \
--url http://localhost:3001/admin/principals/00000000-0000-0000-0000-000000000000/sessions \
--header 'Authorization: Bearer <token>'

Effective on the very next request from any of them — lookup_session only resolves a session while revoked_at IS NULL, so there is nothing to invalidate beyond the row itself (no cache sits in front of it).

id
required
string format: uuid

Principal ID

OK

Media typeapplication/json

How many of a principal’s sessions were just revoked.

Not itself proof the principal has no other way in — a revoked session only stops resolving on its next lookup_session (see sessions::lookup_session’s revoked_at IS NULL filter); this endpoint does not touch API keys.

object
revoked
required
integer format: int64

Example generated

{
"revoked": 1
}