認証コードを入力する

POST /fapi/v1/verifications/{verification_id}:attempt · 環境のサインインホストから呼び出し

認証コードを送信するでユーザーが受け取った 6 桁のコードを確認します。正しいコードであればメールアドレスが確認済みとなり、そのコードは使用済みになります。応答は 204 です。誤ったコードを入力すると、そのコードの試行回数が 1 回消費されます。誤り、期限切れ、使用済み、試行回数超過のコード、不明な ID、他のユーザーの ID はいずれも同じ 422 verification_invalid が返されます。この場合、ユーザーは新しいコードを要求する必要があります。認証済みユーザーの __Host-idp_session Cookie が必要です。Cookie が欠落、期限切れ、または取り消されている場合は、401 unauthenticated を返します。別オリジンのファーストパーティアプリは、代わりにフロント API のアクセストークン(DPoP 証明を添えた Authorization: DPoP <token>。フロント API アクセストークンを参照)を送信できます。

リクエスト

パスパラメーター:

パラメーター 説明
verification_id 送信時の応答にある id。

ヘッダー:

ヘッダー 必須 説明
Idp-Client はい SDK の識別子。
Origin はい 正確に https://<サインインホスト> である必要があります。
Content-Type はい application/json。

本文:

フィールド 型 必須 説明
code string はい メールに記載された 6 桁のコード。

レスポンス

204 No Content。メールアドレスは確認済みになります。

エラー

ステータス コード 発生条件
400 malformed_request 本文が有効な JSON ではない。
400 unknown_field 本文に code 以外のフィールドがある。
401 unauthenticated 有効なセッション Cookie がない。
403 origin_not_allowed Origin が欠落しているか、不正である。
403 test_feature_not_in_production コードが固定のテスト用コード 424242 であり、環境が本番環境である。この試行は誤ったコードと同様に消費されます。
413 payload_too_large 本文が大きすぎる。
415 unsupported_media_type Content-Type が application/json ではない。
422 validation_failed code が欠落している。
422 verification_invalid コードが誤っているか、期限切れか、使用済みか、試行回数を超えているか、または ID が不明である。

例

curl -X POST https://example.keenauth.app/fapi/v1/verifications/0190a5c4-1b2c-7d3e-8f40-5162738400ff:attempt \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -H "Origin: https://example.keenauth.app" \
  -H "Content-Type: application/json" \
  -b cookies.txt \
  -d '{"code": "123456"}'