Creare un link di anteprima del branding
POST /v1/branding:preview-link · permesso branding:write
Crea un link che mostra la pagina di accesso ospitata con le bozze di branding correnti dell'ambiente, prima che vengano pubblicate. La pagina mostra sempre l'ultima bozza: modifichi una bozza e ricarichi la pagina per vedere la modifica. Un banner segnala che la pagina è un'anteprima e tutti i controlli di accesso sono disattivati. I testi di bozza che sostituiscono quelli predefiniti sono mostrati nella lingua della pagina; non possono modificare il banner di anteprima.
Il link è valido 10 minuti e non può essere revocato; dopo, restituisce 404. Chiunque abbia il link può vedere la bozza, quindi lo condivida solo con le persone che esaminano il design. Un ambiente può avere al massimo 20 link validi contemporaneamente.
Richiesta
Il corpo è facoltativo. Senza corpo, la pagina mostra solo la bozza dell'ambiente.
| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
application_id |
string | no | Applica anche la bozza di questa applicazione (app_…). |
org_id |
string | no | Applica anche la bozza di questa organizzazione (org_…): il suo logo e il colore principale. |
Risposta
200 OK. L'url è restituito solo in questa risposta, con Cache-Control: no-store. Una richiesta ripetuta con lo stesso Idempotency-Key non restituisce url, ma secret_redacted: true; crei invece un nuovo link.
{
"url": "https://acme.eu1.keenauth.app/u/preview?token=…",
"expires_at": "2026-10-19T12:10:00Z"
}
Errori
| HTTP | code | Quando |
|---|---|---|
| 400 | unknown_field |
Il corpo contiene un campo sconosciuto o non è un oggetto JSON. |
| 404 | not_found |
L'applicazione non esiste in questo ambiente. |
| 422 | validation_failed |
application_id o org_id non è un ID valido (invalid_value). |
| 401 | unauthenticated |
Le credenziali mancano, non sono valide o sono revocate. |
| 403 | insufficient_permissions |
Le credenziali non hanno il permesso richiesto. |
| 429 | rate_limited |
L'ambiente ha già 20 link validi oppure è stato superato il limite di frequenza; riprovi dopo il periodo indicato in Retry-After. |
| 503 | service_unavailable |
Una dipendenza non è disponibile temporaneamente; riprovi dopo il periodo indicato in Retry-After. |
Esempio
curl -X POST https://api.eu.keenauth.com/v1/branding:preview-link \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"application_id":"app_01jb…"}'
Con la CLI:
keenauth branding preview-link --application-id app_01jb…