
# 이메일 발신 도메인 확인

`POST /v1/email-sender-domains/{sender_domain_id}:verify` · 권한 `email-sender-domains:write` · 모든 요금제

도메인의 DNS 레코드를 지금 확인하고 업데이트된 도메인을 반환합니다. 플랫폼은 같은 규칙으로 모든 도메인을 매일 확인합니다.

- DKIM CNAME 두 개와 return-path CNAME이 모두 올바른 대상을 가리키면 `pending_dns` 또는 `degraded` 상태의 도메인이 `verified`가 됩니다.
- `verified` 도메인이 72시간 동안 계속 실패하면 `degraded`가 되며, 레코드가 수정될 때까지 환경의 이메일은 플랫폼 도메인에서 발송됩니다.
- DMARC는 `dmarc_alignment`에 보고되지만 필수는 아닙니다. `_dmarc` 레코드가 없으면 `records`에 권장 레코드가 포함됩니다.

플랫폼이 비활성화한 도메인은 확인할 수 없습니다. 각 환경은 시간당 20회까지 확인을 실행할 수 있습니다.

## 요청

| 필드 | 유형 | 필수 | 설명 |
|---|---|---|---|
| `sender_domain_id` | string | 예 | 발신 도메인 ID(`sdom_…`)입니다. |
| `Idempotency-Key` | header | 아니요 | 같은 키로 반복된 요청에 동일한 응답을 다시 반환합니다. |

요청 본문은 없습니다.

## 응답

확인된 발신 도메인과 새 버전을 나타내는 `ETag`가 포함된 `200 OK`를 반환합니다. 필드에 대한 설명은 [이메일 발신 도메인 조회](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`
