Rendere primario un dominio personalizzato

POST /v1/custom-domains/{custom_domain_id}:make-primary · permesso custom-domains:write

Rende il dominio il dominio personalizzato primario dell'ambiente (i link di accesso ospitati lo usano); il primario precedente perde il ruolo nella stessa operazione. Il dominio deve essere active; rendere di nuovo primario il primario attuale non cambia nulla. Quando l'issuer dell'ambiente è su un dominio personalizzato, cambiare il dominio primario cambia l'issuer e deve essere pianificato come migrazione dell'issuer.

Richiesta

Campo Tipo Obbligatorio Descrizione
custom_domain_id string sì ID del dominio personalizzato (cdom_…).
Idempotency-Key header no Chiave opzionale (16-64 caratteri) che rende sicura una richiesta ritentata.
If-Match header no Facoltativo. Se indicato deve corrispondere all'ETag del dominio (altrimenti 412).

Nessun corpo della richiesta.

Risposta

200 OK con il dominio e un'intestazione ETag.

{
  "id": "cdom_01j9xk3m7q8r2s4t6v8w0y2z4a",
  "hostname": "login.example.com",
  "is_primary": true,
  "status": "active",
  "failure_reason": null,
  "dns_records": [
    {
      "type": "TXT",
      "name": "_akp-verify.login.example.com",
      "value": "idp-verify=3q2-7wEXAMPLEtokenQ9"
    },
    {
      "type": "CNAME",
      "name": "login.example.com",
      "value": "acme.eu.edge.keenauth.app"
    }
  ],
  "certificate_expires_at": "2027-01-04T09:31:12Z",
  "last_checked_at": "2026-10-05T09:31:00Z",
  "next_check_at": null,
  "activated_at": "2026-10-05T09:31:12Z",
  "degraded_since": null,
  "status_changed_at": "2026-10-05T09:31:12Z",
  "created_at": "2026-10-05T09:30:00.123456Z",
  "updated_at": "2026-10-05T09:31:12Z"
}

Errori

HTTP code Quando
404 not_found Il dominio personalizzato non esiste o appartiene a un altro ambiente.
409 custom_domain_state_conflict Il dominio non è active.
409 issuer_change_requires_schedule L'issuer dell'ambiente è su un dominio personalizzato; la modifica deve essere pianificata come migrazione dell'issuer.
412 precondition_failed If-Match non corrisponde alla versione attuale del dominio.
503 service_unavailable Le informazioni sull'issuer dell'ambiente sono temporaneamente non disponibili.
401 unauthenticated La credenziale manca, non è valida o è stata revocata.
403 insufficient_permissions La credenziale non ha il permesso richiesto.
429 rate_limited Limite di frequenza superato; riprova dopo il periodo Retry-After.

Esempio

curl -X POST https://api.eu.keenauth.com/v1/custom-domains/cdom_01j9xk3m7q8r2s4t6v8w0y2z4a:make-primary \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H 'If-Match: "4"'