セッションをサインアウト

POST /fapi/v1/me/sessions/{session_id}:revoke · 環境のサインインホストから呼び出します

認証済みユーザーの他のセッションのうち 1 つを終了します。そのセッションのリフレッシュトークンは取り消され、発行されたアクセストークンは拒否され、そのセッションを通じてサインインしていたアプリケーションには通知されます。リクエストを行っているセッション自体はここでは終了できません。このブラウザからサインアウトするには、ログアウトエンドポイント(/oauth2/logout)を使用してください。これは Cookie も削除します。認証済みユーザーの __Host-idp_session Cookie が必要です。Cookie がない、期限切れである、または取り消されている場合は 401 unauthenticated を返します。別のオリジンにある自社アプリは、代わりにフロント API アクセストークン(DPoP 証明付きの Authorization: DPoP <token>。フロント API アクセストークンを参照)を送信できます。セッションは直近 300 秒以内に検証されている必要があります。そうでない場合は、RFC 9470 の WWW-Authenticate チャレンジ(max_age=300)を伴う 401 step_up_required を返し、何も変更されません。再度サインインし(例: max_age=0 または prompt=login)、リトライしてください。そのユーザーの、すでに終了しているセッションを指定した場合は 204 を返し、何も変更されません。

リクエスト

ヘッダー:

ヘッダー 必須 説明
Idp-Client はい SDK の識別子です。
Origin はい https://<サインインホスト> と完全に一致している必要があります。

session_id: GET /fapi/v1/me/sessions が返すセッション識別子(ses_…)です。

ボディはありません。

レスポンス

204 No Content。

エラー

ステータス コード 発生条件
401 unauthenticated 有効なセッション Cookie がありません。
401 step_up_required セッションが 300 秒より前に検証されています。
403 origin_not_allowed Origin がないか、誤っています。
404 not_found このユーザーの該当セッションがありません(存在しない識別子、形式が不正な識別子、他のユーザーの識別子はいずれも同じ応答になります)。
409 conflict 指定された識別子が、リクエストを行っているセッション自体です。

例

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