
# Elencare gli inviti di un'organizzazione

`GET /fapi/v1/organizations/{org_id}/invitations` · chiamato dall'host di accesso dell'ambiente

Elenca gli inviti di un'organizzazione nell'ordine in cui sono stati creati, per una schermata del profilo dell'organizzazione. Un invito in attesa mostra l'indirizzo invitato solo se hai anche `idp_members:read`; altrimenti `email` è `null`. Gli inviti accettati, revocati o scaduti non riportano mai un indirizzo.

Richiede il cookie `__Host-idp_session` dell'utente autenticato, oppure un access token della API frontend di un'applicazione first-party (`Authorization: DPoP <token>` con una prova DPoP; vedi [Access token della API frontend](/docs/api/fapi/front-api-token)). L'utente deve essere un membro attivo dell'organizzazione con l'autorizzazione `idp_members:invite`. Un utente che non è membro riceve `404 not_found`; un membro senza l'autorizzazione riceve `403 insufficient_permissions`.

Con `@keenauth/js`: `await keenauth.organizations.invitations(orgId, { status: "pending" })`.

## Richiesta

Header:

| Header | Obbligatorio | Descrizione |
| --- | --- | --- |
| `Idp-Client` | sì | Identificatore dell'SDK. |

`org_id`: l'identificatore dell'organizzazione (`org_…`).

Parametri di query:

| Parametro | Obbligatorio | Descrizione |
| --- | --- | --- |
| `status` | no | `pending`, `accepted`, `revoked` o `expired`; tutti e quattro se omesso. |
| `after` | no | Il valore `next_after` della pagina precedente. |
| `limit` | no | Da 1 a 100, predefinito 20. |

Nessun body.

## Risposta

`200 OK` con `{"data": [...], "next_after": "..."}`; `next_after` è assente nell'ultima pagina. Ogni elemento ha i campi di [un invito](/docs/api/fapi/organizations/invitations/create).

## Errori

| Stato | Codice | Quando |
| --- | --- | --- |
| 400 | `invalid_cursor` | `after` è malformato. |
| 401 | `unauthenticated` | Nessun cookie di sessione o token valido. |
| 403 | `insufficient_permissions` | L'utente non ha `idp_members:invite` nell'organizzazione. |
| 404 | `not_found` | Nessuna organizzazione del genere per questo utente; un identificatore sconosciuto, malformato o di un altro utente riceve la stessa risposta. |
| 422 | `validation_failed` | `status` o `limit` non sono validi. |
| 503 | `service_unavailable` | Temporaneamente non disponibile; riprova dopo `Retry-After`. |

## Esempio

```bash
curl "https://example.keenauth.app/fapi/v1/organizations/org_01jbz6x8kq3m2n4p5r6s7t8v9a/invitations?status=pending&limit=1" \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -b cookies.txt
```

```json
{
  "data": [
    {
      "id": "inv_01jbz6x8kq3m2n4p5r6s7t8v9d",
      "email": "new.member@example.com",
      "role_ids": ["rol_01jbz6x8kq3m2n4p5r6s7t8v9w"],
      "delivery": "email",
      "delivery_status": "sent",
      "status": "pending",
      "send_count": 1,
      "last_sent_at": "2026-11-03T10:00:00Z",
      "expires_at": "2026-11-10T10:00:00Z",
      "accepted_user_id": null,
      "accepted_at": null,
      "revoked_at": null,
      "created_at": "2026-11-03T10:00:00Z",
      "updated_at": "2026-11-03T10:00:00Z",
      "version": 1
    }
  ],
  "next_after": "inv_01jbz6x8kq3m2n4p5r6s7t8v9d"
}
```

## Dati personali

Questo endpoint contiene dati personali: appartenenze alle organizzazioni e inviti. [Dati personali nelle API di KeenAuth](/docs/policies/personal-data) descrive cosa viene memorizzato, per quanto tempo viene conservato e come viene cancellato. Non inviare dati personali particolari (salute, dati biometrici, religione, opinioni politiche, orientamento sessuale) in nessun campo.
