Elenca i membri di un'organizzazione

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

Elenca le appartenenze di un'organizzazione, ordinate per ultima modifica, per una schermata del profilo dell'organizzazione. Gli inviti in sospeso non compaiono mai qui. Ogni riga indica l'utente solo tramite il suo identificatore usr_…; questo endpoint non restituisce nomi né indirizzi email. Richiede il cookie __Host-idp_session dell'utente autenticato; se il cookie manca, è scaduto o è stato revocato, restituisce 401 unauthenticated. Un'applicazione di prima parte su un'altra origin può invece inviare il proprio access token della front API (Authorization: DPoP <token> con una DPoP proof; vedi Front API access token). L'utente deve essere un membro attivo dell'organizzazione con l'autorizzazione idp_members:read. Un utente che non è membro riceve 404 not_found; un membro senza l'autorizzazione riceve 403 insufficient_permissions.

Con @keenauth/js: await keenauth.organizations.members(orgId, { status: "active" }).

Richiesta

Intestazioni:

Intestazione Obbligatoria Descrizione
Idp-Client sì Identificatore dell'SDK.

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

Parametri query:

Parametro Obbligatorio Descrizione
status no active, suspended o removed; tutti e tre se omesso.
role_id no Solo le appartenenze che hanno questo ruolo (rol_…).
after no Il valore next_after della pagina precedente (opaco).
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: id (mem_…), user_id (usr_…), status, roles (ciascuno con role_id e source, cioè l'origine dell'assegnazione, come admin_api o default), created_at, activated_at (o null), expires_at (o null), updated_at, version.

Errori

Stato Codice Quando
400 invalid_cursor after è malformato.
401 unauthenticated Nessun cookie di sessione valido.
403 insufficient_permissions L'utente non ha idp_members:read 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, role_id o limit non sono validi.
503 service_unavailable Temporaneamente non disponibile; riprova dopo Retry-After.

Esempio

curl "https://example.keenauth.app/fapi/v1/organizations/org_01jbz6x8kq3m2n4p5r6s7t8v9a/memberships?status=active&limit=2" \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -b cookies.txt
{
  "data": [
    {
      "id": "mem_01jbz6x8kq3m2n4p5r6s7t8v9b",
      "user_id": "usr_01jbz6x8kq3m2n4p5r6s7t8v9c",
      "status": "active",
      "roles": [{ "role_id": "rol_01jbz6x8kq3m2n4p5r6s7t8v9w", "source": "admin_api" }],
      "created_at": "2026-11-03T09:00:00Z",
      "activated_at": "2026-11-03T09:00:00Z",
      "expires_at": null,
      "updated_at": "2026-11-03T09:00:00Z",
      "version": 1
    }
  ],
  "next_after": "AAAYQ3dAgGUBmgAAAABwAIAAAAAAAADh"
}

Dati personali

Questo endpoint tratta dati personali: appartenenze alle organizzazioni e inviti. Dati personali nelle API di KeenAuth descrive cosa viene memorizzato, per quanto tempo viene conservato e come viene cancellato. Non inviare categorie particolari di dati personali (salute, dati biometrici, religione, opinioni politiche, orientamento sessuale) in nessun campo.