veil

Sign out of an app

RP-initiated logout. With id_token_hint the tokens of that login end; the browser goes back only to an address the app registered exactly.

GET/oidc/logout
Access
Public access
Client
Local or server client

Parameters#

NameLocationMeaning
id_token_hintQueryAn ID token of this provider for the app, expired or not.
post_logout_redirect_uriQueryOne the app registered.
stateQueryReturned as is.
client_idQueryWithout id_token_hint, names the app.

Request examples#

cURL
curl -fsS 'https://veil.rip/oidc/logout'

Response#

HTTP 200text/html

A redirect to post_logout_redirect_uri with state, or a page that says the app's session ended.

Response headers#

HeaderValueMeaning
Cache-Controlno-storeNever cached.

Usage notes#

  • Veil keeps no session to end: a login is a signature. Logout ends the tokens.

Errors#

The OAuth callback renders an HTML return page, including when it fails. The codes below describe the failure shown on that page. Response and error guide

Shared request errors
HTTPCodeMeaning and next step
429rate_limited

An anonymous, signed-request or API-key allowance was exceeded.

Wait at least Retry-After seconds. Share a queue and retry budget across your workers.

500internal_error

An unexpected server error occurred. Internal details are not returned.

Retry reads with bounded backoff. Check write results before sending a new signed operation.

503busy

The application has reached a temporary concurrency or database limit.

Wait Retry-After seconds and retry with bounded backoff.