
# Elenca i client di gestione

`GET /v1/management-clients` · permesso `management-clients:read`

Restituisce i record dei client di gestione dell'ambiente in pagine a cursore, ordinati per `application_id` (in ordine decrescente per impostazione predefinita). Un record appartiene a un'applicazione di tipo `management` e contiene il limite massimo di permessi e la lista di IP consentiti per l'API di gestione. Le chiavi di firma del client non fanno parte di questa risorsa: gestiscile con `/v1/applications/{application_id}/credentials`. Solo una chiave API può chiamare questo endpoint; l'ambiente è ricavato dalla chiave.

## Richiesta

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `limit` | integer | no | Da 1 a 100, predefinito 20. |
| `after` | string | no | Cursore da `list_metadata.after`. Esclusivo con `before`. |
| `before` | string | no | Cursore da `list_metadata.before`. |
| `order` | string | no | `asc` o `desc` (predefinito). Un cursore è valido solo con lo stesso `order`. |

## Risposta

`200 OK`

```json
{
  "data": [
    {
      "application_id": "app_01h455vb4pex5vsknk084sn02q",
      "permissions": ["users:read", "users:write"],
      "allowed_cidrs": ["203.0.113.0/24"]
    }
  ],
  "list_metadata": { "before": null, "after": null }
}
```

Un cursore `null` significa che non ci sono altri record in quella direzione. Non viene restituito alcun conteggio totale. L'eliminazione di un'applicazione rimuove il suo record; un record la cui applicazione non esiste più non viene mai elencato ed è rimosso quando una pagina lo raggiunge, quindi una pagina può contenere meno record di `limit` anche se `after` è valorizzato. Continua a seguire il cursore.

## Errori

| HTTP | code | Quando |
|---|---|---|
| 400 | `invalid_cursor` | Il cursore è malformato, alterato, o è stato emesso per un altro ambiente o un altro `order`. |
| 403 | `insufficient_permissions` | La credenziale non ha `management-clients:read`, oppure non è una chiave API. |
| 422 | `validation_failed` | Un parametro della query non è valido. |

## Esempio

```bash
curl "https://api.eu.keenauth.com/v1/management-clients?limit=20" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```

CLI: `keenauth management-clients list --limit 20`
