Token revocation (RFC 7009)

Revokes an access token or a refresh token, per OAuth 2.0 RFC 7009.

Both token planes are supported. RFC 7009 §2 makes refresh-token revocation the
mandatory half. A JWT access token is blacklisted by its jti until it expires; an
opaque refresh token is deleted outright. The optional token_type_hint only
reorders the search and never ends it (§2.1), so a wrong hint still revokes; an
unrecognized or empty hint is treated as absent and is never an error.

Authorization is OWNERSHIP, not a scope. Any authenticated caller may reach this
endpoint, and may revoke only a token issued to itself (§2.1). A token belonging to
another principal is silently left alone — including for a platform administrator, who
gains no privilege here. DELETE /api/v3/auth/token/s/{tokenId} remains the only
administrative revocation path.

Request formatapplication/x-www-form-urlencoded, as RFC 7009 §2.1 specifies.
A JSON body is answered 400 carrying the RFC 6749 §5.2 error object, not 415 — see
the 400 response below.

Outcomes — per §2.2 the response is 200 with an empty body when the token was
revoked, was already gone, never existed, was not the caller's, or was not parseable.
These are byte-identical on purpose: a distinguishable refusal would let any caller use
this endpoint to discover whether a token value exists and whom it belongs to.

The one exception is 503, returned when the revocation store is unavailable. RFC
7009 §2.2: on a 503 the client must assume the token still exists. It is decided before
any per-token outcome is known, so it discloses nothing — and answering 200 there would
report a revocation that did not happen.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Form Data

Form-encoded revocation request (RFC 7009 §2.1)

OAuth 2.0 token revocation request (RFC 7009). Submitted as application/x-www-form-urlencoded per RFC 7009 section 2.1 - this schema documents the FORM FIELDS, not a JSON body.

string
required
length ≥ 1

Token to revoke - a JWT access token or an opaque refresh token. A refresh token is NOT a JWT: it is an opaque Base64URL value, and revoking one is the RFC 7009 section 2 mandatory half.

string
enum

Optional hint about token type (access_token or refresh_token)

Allowed:
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses
200

Token revocation processed (always returns 200 per RFC 7009)

503

The revocation store is unavailable. Empty body. Per RFC 7009 §2.2 the client must assume the token still exists and retry.

Language
Credentials
Bearer
JWT
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
application/problem+json