
# Ottenere la bozza di branding

`GET /v1/branding` · permesso `branding:read`

Restituisce la bozza di branding dell'ambiente: token del tema, CSS personalizzato e modello di pagina. La bozza non è attiva; le pagine ospitate usano l'ultima versione pubblicata (`POST /v1/branding:publish`). Se non è stato ancora scritto nulla, il tema è vuoto, l'`ETag` è `"0"` e `updated_at` è `null`. Inviare l'`ETag` come `If-Match` alla scrittura successiva.

## Richiesta

Questa operazione non accetta campi di percorso, query o corpo. L'ambiente deriva dalla credenziale.

## Risposta

`200 OK` con la bozza dell'ambiente e il suo `ETag`. `theme` contiene solo i token impostati; gli altri ereditano il valore predefinito della piattaforma.

```json
{
  "theme": {"mode": "light", "light": {"color": {"primary": "#0a3d91"}}, "logo_height": 40},
  "css": null,
  "page_template": null,
  "updated_at": "2026-10-05T09:30:00.123456Z"
}
```

## Errori

| HTTP | code | Quando |
|---|---|---|
| 401 | `unauthenticated` | La credenziale manca, non è valida o è stata revocata. |
| 403 | `insufficient_permissions` | La credenziale non ha il permesso richiesto. |
| 429 | `rate_limited` | Il limite di frequenza è stato superato; riprovare dopo il periodo `Retry-After`. |
| 503 | `service_unavailable` | Una dipendenza è temporaneamente non disponibile; riprovare dopo il periodo `Retry-After`. |

## Esempio

```bash
curl https://api.eu.keenauth.com/v1/branding \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```
