TOTP シークレットを生成
POST /v1/security/totp/generate:認証アプリに追加するための新しい TOTP シークレットを発行します。
POST /v1/security/totp/generate
認証アプリに追加するための新しい TOTP シークレットを発行します。qrCodeUrl は otpauth:// の URL、qrcode は事前描画された PNG データ URL、secret は手入力用の base32 文字列です。バックアップコードはありません。設定 → セキュリティの有効化ウィザードのステップ2であり、既存の紐付けを置き換える呼び出しでもあります。シークレットが残っているアカウントは、現在の認証アプリでオンに戻すこともできます。
| メソッド | POST |
| パス | /v1/security/totp/generate |
| 認証 | GATEWAY_AUTH_TOKEN が設定されている場合は Authorization: Bearer <token> が必要です |
| カテゴリ | auth |
レスポンス本文
{ "secret": "JBSWY3DPEHPK3PXP", "qrCodeUrl": "otpauth://totp/Minara:[email protected]?secret=JBSWY3DPEHPK3PXP&issuer=Minara", "qrcode": "data:image/png;base64,..." }注記
失敗時は { error, status, message } を返し、error が安定した機械可読コードです。第二要素の拒否は決まった値に対応します。invalid_totp、totp_required、invalid_email_code、email_code_required、verification_locked(メールコードの誤入力が多すぎる場合。待ち時間は message に入ります)、totp_state_conflict(アカウントがすでに要求された状態)、totp_not_provisioned(シークレット未生成)、rate_limited です。リクエスト本文が不正な場合は 400 を返し、error はエンドポイントごとに totp_code_required、totp_and_email_required、settings_payload_invalid のいずれかになります。ゲートウェイが分類できない失敗はそのエンドポイントの <action>_failed を保ち、汎用の文言を添えます。上流の原文はサーバーログにのみ残ります。