
# メールアドレスをプライマリに設定

`POST /fapi/v1/me/emails/{email_id}:set-primary` · 環境のサインインホストから呼び出します

認証済みユーザーの確認済みメールアドレスのいずれかをプライマリに設定します。未確認のアドレスはプライマリにできません。先に確認してください。変更後、以前のプライマリアドレスとユーザーのその他の確認済みアドレスには、セキュリティ通知が送信されます。通知には、アカウント復旧を開く「心当たりがない」リンクが含まれます。アドレスがすでにプライマリの場合も応答は `204` で、変更や通知は行われません。`__Host-idp_session` Cookie が必要です。Cookie がない、期限切れ、または取り消されている場合は `401 unauthenticated` を返します。別オリジンのファーストパーティアプリでは、代わりにフロント API アクセストークン（DPoP 証明付きの `Authorization: DPoP <token>`）を送信できます。詳細は [フロント API アクセストークン](/docs/api/fapi/front-api-token) を参照してください。

セッションは直近 5 分以内に検証されている必要があります。ユーザーに第 2 要素がある場合は、セッションが第 2 要素（`urn:idp:acr:mfa`）を使って開始されている必要もあります。

## リクエスト

ヘッダー:

| ヘッダー | 必須 | 説明 |
| --- | --- | --- |
| `Idp-Client` | はい | SDK の識別子。 |
| `Origin` | はい | 正確に `https://<sign-in host>` である必要があります。 |

`email_id`: メールアドレス識別子。管理 API の `/v1/users/{user_id}/emails` エンドポイントで使用される値と同じです（小文字の UUID）。

ボディはありません。

## レスポンス

`204 No Content`。

## エラー

| ステータス | コード | 発生条件 |
| --- | --- | --- |
| 401 | `unauthenticated` | 有効なセッション Cookie がありません。 |
| 401 | `step_up_required` | セッションが直近 5 分以内に検証されていないか、第 2 要素が必要です。`WWW-Authenticate` ヘッダーで `max_age=300`（該当する場合は `acr_values`）を指定して再認証してください。 |
| 403 | `origin_not_allowed` | `Origin` がないか、誤っています。 |
| 404 | `not_found` | このユーザーにそのメールアドレスは存在しません。 |
| 409 | `primary_requires_verified` | そのメールアドレスは確認されていません。 |

## 例

```bash
curl -X POST https://example.keenauth.app/fapi/v1/me/emails/0190a5c4-1b2c-7d3e-8f40-516273849abc:set-primary \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -H "Origin: https://example.keenauth.app" \
  -b cookies.txt
```

## 個人データ

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