メールアドレスに認証メールを送信

POST /v1/users/{user_id}/emails/{email_id}:send-verification · 権限 users:write

ユーザーのメールアドレス 1 件に対して認証メールを送信します。email_id は内部 UUID(小文字、ハイフン区切り)です。レスポンスには認証リクエストの有効期限が含まれます。コードやリンクは返されません。任意のボディでは、メールの言語のみを選択できます。

リクエスト

パラメーター 指定場所 必須 説明
user_id path はい ユーザー ID。接頭辞は usr_。
email_id path はい メールアドレスのレコードの ID(内部 UUID、小文字、ハイフン区切り)。

任意のボディ:

フィールド 型 必須 説明
locale string いいえ メールの BCP 47 言語タグ(例: tr、pt-BR)。既定値はユーザーまたは環境の言語です。

レスポンス

200 OK。expires_at は認証リクエストの有効期限です。

{
  "expires_at": "2026-01-16T09:30:00Z"
}

エラー

すべてのエラーは、安定した code を含む application/problem+json のボディで返されます。

HTTP code 発生条件
400 malformed_request, unknown_field ボディが有効な JSON ではない、または未知のフィールドがある。
409 conflict メールアドレスはすでに認証済みです。
415 unsupported_media_type Content-Type: application/json を指定せずにボディを送信した。
422 validation_failed locale が有効な BCP 47 言語タグではない、またはフィールドの型が正しくない。
404 not_found ユーザーまたはメールアドレスのレコードがこの環境に存在しない、メールアドレスがこのユーザーのものではない、または ID の形式が正しくない。
401 unauthenticated API キーが未指定、無効、または取り消されている。
403 insufficient_permissions キーに users:write 権限がない。
429 rate_limited API のレート制限、またはユーザーごとのメール送信上限を超えた。Retry-After に従ってください。
503 service_unavailable 依存するサービスが一時的に利用できない。後で再試行してください。

例

curl -X POST https://api.eu.keenauth.com/v1/users/usr_0a1b2c3d4e5f6g7h8j9k0m1n2p/emails/0191f0a0-3333-7444-8555-666666666666:send-verification \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"locale": "en"}'

個人データ

このエンドポイントは個人データを扱います: エンドユーザーのプロフィール。KeenAuth API における個人データでは、保存される内容、保存期間、削除方法を説明しています。どのフィールドにも、特別な種類の個人データ(健康、生体データ、宗教、政治的意見、性的指向)を送信しないでください。