
# メール送信元ドメインを検証する

`POST /v1/email-sender-domains/{sender_domain_id}:verify` · 権限 `email-sender-domains:write` · すべてのプラン

現時点でドメインの DNS レコードを確認し、更新後のドメインを返します。プラットフォームでも同じルールで、すべてのドメインを毎日確認します:

- 2 つの DKIM CNAME と return-path CNAME がすべて正しいターゲットを指している場合、`pending_dns` または `degraded` のドメインは `verified` になります。
- `verified` のドメインが 72 時間にわたって失敗し続けると `degraded` になり、レコードが修正されるまで、その環境のメールはプラットフォームのドメインから送信されます。
- DMARC は `dmarc_alignment` に報告されますが、必須ではありません。`_dmarc` レコードが存在しない場合、`records` に推奨レコードが含まれます。

プラットフォームによって無効化されたドメインは確認できません。各環境では 1 時間に 20 回までチェックを実行できます。

## リクエスト

| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
| `sender_domain_id` | string | はい | 送信元ドメイン ID (`sdom_…`)。 |
| `Idempotency-Key` | header | いいえ | 同じキーでの繰り返しのリクエストに対して、同じレスポンスを再送します。 |

リクエストボディはありません。

## レスポンス

`200 OK` と、確認済みの送信元ドメイン、および新しいバージョンを設定した `ETag` を返します。フィールドは [送信元ドメインを取得する](get.md) で説明しています。

```json
{
  "id": "sdom_01k7r9m3q5t8v2w4x6y8z0a2b4",
  "domain": "mail.example.com",
  "status": "verified",
  "active_selector": "akp1",
  "dkim_status": "ok",
  "return_path_status": "ok",
  "dmarc_alignment": "no_record",
  "last_checked_at": "2026-10-19T09:30:00Z",
  "failing_since": null,
  "degraded_since": null,
  "records": [
    {
      "type": "CNAME",
      "name": "akp1._domainkey.mail.example.com",
      "value": "akp1.sdom_01k7r9m3q5t8v2w4x6y8z0a2b4.dkim.eu.keenauth.app",
      "required": true
    },
    {
      "type": "CNAME",
      "name": "akp2._domainkey.mail.example.com",
      "value": "akp2.sdom_01k7r9m3q5t8v2w4x6y8z0a2b4.dkim.eu.keenauth.app",
      "required": true
    },
    {
      "type": "CNAME",
      "name": "rp.mail.example.com",
      "value": "rp.eu.mail.keenauth.app",
      "required": true
    },
    {
      "type": "TXT",
      "name": "_dmarc.mail.example.com",
      "value": "v=DMARC1; p=none",
      "required": false
    }
  ],
  "version": 2,
  "created_at": "2026-10-19T09:00:00Z",
  "updated_at": "2026-10-19T09:30:00Z"
}
```

## エラー

| HTTP | code | 発生条件 |
|---|---|---|
| 404 | `not_found` | 送信元ドメインが存在しない、別の環境に属している、または ID の形式が不正です。 |
| 409 | `conflict` | ドメインがプラットフォームによって無効化されています。 |
| 429 | `rate_limited` | 環境が直近 1 時間に 20 回のチェックを実行した、または一般的なレート制限を超えました。`Retry-After` の期間を待ってから再試行してください。 |
| 401 | `unauthenticated` | 認証情報がないか、無効または取り消されています。 |
| 403 | `insufficient_permissions` | 認証情報に必要な権限がありません。 |
| 503 | `service_unavailable` | 依存先が一時的に利用できません。`Retry-After` の期間を待ってから再試行してください。 |

## 例

```bash
curl -X POST https://api.eu.keenauth.com/v1/email-sender-domains/sdom_01k7r9m3q5t8v2w4x6y8z0a2b4:verify \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```

CLI: `keenauth email-sender-domains verify sdom_01k7r9m3q5t8v2w4x6y8z0a2b4`
