
# Elenca le connessioni

`GET /v1/connections` · autorizzazione `connections:read`

Elenca le connessioni dell'ambiente a cui appartiene la credenziale, dalla più recente, in pagine basate su cursore. L'ambiente proviene sempre dalla credenziale; le connessioni di altri ambienti non vengono mai restituite. Modificare `type` o `status` invalida i cursori emessi per un altro filtro (`400 invalid_cursor`).

## Richiesta

Parametri di query:

| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `limit` | integer | no | 1-100, predefinito 20. |
| `after / before` | string | no | Cursori opachi da `list_metadata`; si escludono a vicenda. |
| `order` | string | no | `asc` o `desc` (predefinito) in base alla data di creazione. |
| `type` | string | no | Filtra per tipo di connessione, ad esempio `social`. |
| `status` | string | no | Filtra per stato: `active` o `inactive`. |

## Risposta

`200 OK` con `data` (connessioni) e `list_metadata` (`before`, `after`; `null` quando non c'è un'ulteriore pagina in quella direzione). Non viene restituito alcun conteggio totale.

```json
{
  "data": [{
      "id": "conn_0k3v8m1q2x9dz4h7s5t6w0y1ab",
      "key": "google",
      "type": "social",
      "strategy": "google",
      "name": "Google",
      "display_name": "Sign in with Google",
      "status": "inactive",
      "org_id": null,
      "allowed_email_domains": [],
      "allow_external_domains": false,
      "jit_mode": null,
      "email_trust": null,
      "default_role_ids": [],
      "trust_idp_mfa": null,
      "allow_idp_initiated": null,
      "idp_initiated_default_application_id": null,
      "idp_initiated_allowed_application_ids": [],
      "settings": {},
      "created_at": "2026-10-05T09:30:00.123456Z",
      "updated_at": "2026-10-05T09:30:00.123456Z"
    }],
  "list_metadata": { "before": null, "after": "<cursor>" }
}
```

## Errori

| HTTP | codice | Quando |
|---|---|---|
| 400 | `invalid_cursor` | Il cursore è malformato o è stato emesso per un altro filtro. |
| 422 | `validation_failed` | Un parametro di query non è valido. |
| 401 | `unauthenticated` | La credenziale è mancante, non valida o revocata. |
| 403 | `insufficient_permissions` | La credenziale non ha l'autorizzazione richiesta. |
| 429 | `rate_limited` | È stato superato il limite di frequenza; riprova dopo il periodo indicato in `Retry-After`. |
| 503 | `service_unavailable` | Una dipendenza non è temporaneamente disponibile; riprova dopo il periodo indicato in `Retry-After`. |

## Esempio

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