Ottieni un dominio mittente email

GET /v1/email-sender-domains/{sender_domain_id} · autorizzazione email-sender-domains:read · tutti i piani

Restituisce un dominio mittente: il suo stato, i risultati dell'ultimo controllo DNS e i record DNS da pubblicare. L'header ETag riporta la versione; inviala come If-Match quando elimini il dominio.

Richiesta

Campo Tipo Obbligatorio Descrizione
sender_domain_id string sì ID del dominio mittente (sdom_…).

Nessun corpo della richiesta.

Risposta

200 OK con il dominio mittente e ETag impostato alla sua versione.

Campo Tipo Descrizione
id string ID del dominio mittente (sdom_…).
domain string Il dominio come A-label IDNA 2008, in minuscolo, senza punto finale.
status string pending_dns (in attesa dei record DNS), verified (pronto per l'invio), degraded (i record falliscono da 72 ore; l'ambiente è tornato all'invio della piattaforma) oppure disabled (disattivato dalla piattaforma).
active_selector string Selettore DKIM usato per la firma: akp1 oppure akp2.
dkim_status string o null Ultimo controllo dei due CNAME DKIM (il peggiore dei due): ok, missing, wrong_target oppure lookup_failed; null prima del primo controllo.
return_path_status string o null Ultimo controllo del CNAME return-path, con gli stessi codici; null prima del primo controllo.
dmarc_alignment string o null Esito DMARC dell'ultimo controllo: aligned, not_aligned, no_record, invalid_record oppure lookup_failed. DMARC non è obbligatorio.
last_checked_at string o null Momento dell'ultimo controllo.
failing_since string o null Primo controllo fallito di un dominio verified; quando raggiunge 72 ore il dominio diventa degraded.
degraded_since string o null Momento in cui il dominio è diventato degraded.
records array Record DNS da pubblicare: type (CNAME o TXT), name, value e required. I due CNAME DKIM e il CNAME return-path sono obbligatori; quando l'ultimo controllo non ha trovato un record _dmarc, viene aggiunto un suggerimento DMARC (v=DMARC1; p=none) con required: false.
version integer Versione del dominio, uguale all'ETag; aumenta a ogni scrittura, controlli inclusi.
created_at string Momento della creazione.
updated_at string Momento dell'ultima modifica.
{
  "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"
}

Errori

HTTP code Quando
404 not_found Il dominio mittente non esiste, appartiene a un altro ambiente oppure l'ID non è valido.
401 unauthenticated La credenziale manca, non è valida o è stata revocata.
403 insufficient_permissions La credenziale non ha l'autorizzazione richiesta.
429 rate_limited È stato superato il limite di richieste; riprova dopo il periodo indicato in Retry-After.
503 service_unavailable Una dipendenza è temporaneamente non disponibile; riprova dopo il periodo indicato in Retry-After.

Esempio

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

CLI: keenauth email-sender-domains get sdom_01k7r9m3q5t8v2w4x6y8z0a2b4