
# E-posta gönderen alan adı ekle

`POST /v1/email-sender-domains` · izin `email-sender-domains:write` · tüm planlar

Ortamınızın e-postalarının gönderilebileceği, DKIM ile imzalanmış bir alan adı ekler. Alan adı `pending_dns` durumunda başlar; döndürülen `records` kayıtlarını DNS'inizde yayımlayın ve alan adını [doğrulayın](verify.md).

Gönderen alan adları yalnızca `production` ortamlarında eklenebilir; ortam başına en fazla 10 tane. Ad, bir IDNA 2008 A-etiketine dönüştürülür ve sondaki nokta kaldırılır.

İki DKIM CNAME kaydı (`akp1`, `akp2`), platformun tuttuğu anahtarlara işaret eder; bu nedenle anahtar döndürme işlemi sizin tarafınızda hiçbir DNS değişikliği gerektirmez. Return-path CNAME kaydı, geri dönen iletileri platforma yönlendirir.

## İstek

| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| `domain` | string | evet | Gönderim yapılacak alan adı veya alt alan adı (Unicode kabul edilir), en fazla 253 karakter. |
| `Idempotency-Key` | header | hayır | Aynı anahtarla yapılan tekrarlanan istekte aynı yanıtı yeniden döndürür. |

```json
{
  "domain": "mail.example.com"
}
```

## Yanıt

`201 Created` ile yeni gönderen alan adı ve sürümüne eşit `ETag` döner. Alanlar [E-posta gönderen alan adını al](get.md) sayfasında açıklanmıştır.

```json
{
  "id": "sdom_01k7r9m3q5t8v2w4x6y8z0a2b4",
  "domain": "mail.example.com",
  "status": "pending_dns",
  "active_selector": "akp1",
  "dkim_status": null,
  "return_path_status": null,
  "dmarc_alignment": null,
  "last_checked_at": null,
  "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
    }
  ],
  "version": 1,
  "created_at": "2026-10-19T09:00:00Z",
  "updated_at": "2026-10-19T09:00:00Z"
}
```

## Hatalar

| HTTP | code | Ne zaman |
|---|---|---|
| 409 | `conflict` | Alan adı bu ortama zaten eklenmiş. |
| 409 | `domain_limit_reached` | Ortamın zaten 10 gönderen alan adı var. |
| 422 | `validation_failed` | `/domain required`: alan adı yok. `/domain invalid`: bir IP adresi, tek etiket, kamu son eki (örneğin `co.uk`), platform alan adı (`keenauth.com`, `keenauth.app` ve alt alan adları) veya DKIM kayıt adı 253 oktetı aşacak kadar uzun bir ad. `/domain production_only`: ortam `production` değil. |
| 422 | `idempotency_key_reuse` | `Idempotency-Key` farklı bir istekle kullanıldı. |
| 401 | `unauthenticated` | Kimlik bilgisi eksik, geçersiz veya iptal edilmiş. |
| 403 | `insufficient_permissions` | Kimlik bilgisi gerekli izne sahip değil. |
| 429 | `rate_limited` | Hız sınırı aşıldı; `Retry-After` süresinden sonra yeniden deneyin. |
| 503 | `service_unavailable` | Bir bağımlılık geçici olarak kullanılamıyor; `Retry-After` süresinden sonra yeniden deneyin. |

## Örnek

```bash
curl -X POST https://api.eu.keenauth.com/v1/email-sender-domains \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 5f1c2e8a-7d3b-4c9e-a1f0-2b6d8e4c7a90" \
  -d '{"domain":"mail.example.com"}'
```

CLI: `keenauth email-sender-domains create --domain mail.example.com`
