Lister les appartenances d'un utilisateur
GET /v1/users/{user_id}/memberships · autorisation users:read
Liste les appartenances aux organisations de l'utilisateur, triées par identifiant d'organisation (ordre croissant). Seule la pagination vers l'avant est prise en charge ; suivez list_metadata.after jusqu'à ce qu'il vaille null. Le curseur est lié à l'utilisateur et au filtre status. Sans status, la liste contient les appartenances invited, active et suspended ; les appartenances supprimées ne sont incluses qu'avec status=removed. Un utilisateur inconnu renvoie 404.
Requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
user_id |
chemin | oui | Identifiant de l'utilisateur (usr_…). |
limit |
requête | non | De 1 à 100, 20 par défaut. |
after |
requête | non | Curseur provenant de list_metadata.after. |
status |
requête | non | invited, active, suspended ou removed. |
Réponse
200 OK avec une page d'appartenances.
{
"data": [
{
"id": "mem_01j9xn5p9s0t4v6w8x0y2z4a6c",
"organization_id": "org_01j9xk3m7q8r2s4t6v8w0y2z4a",
"user_id": "usr_01j9xh2k6p7q1r3s5t7v9w1x3y",
"status": "active",
"source": "admin_api",
"reason": null,
"roles": [
{
"role_id": "rol_01j9xr7s1t2w6x8y0z2a4b6c8e",
"source": "admin_api",
"assigned_at": "2026-10-12T09:31:00.123456Z"
}
],
"expires_at": null,
"created_at": "2026-10-12T09:31:00.123456Z",
"activated_at": "2026-10-12T09:31:00.123456Z",
"suspended_at": null,
"removed_at": null,
"updated_at": "2026-10-12T10:00:00Z",
"version": 2
}
],
"list_metadata": {
"before": null,
"after": null
}
}
Erreurs
| HTTP | code | Cas |
|---|---|---|
| 400 | invalid_cursor |
Le curseur est invalide ou appartient à un autre utilisateur ou à un autre filtre. |
| 404 | not_found |
L'utilisateur n'existe pas dans cet environnement. |
| 422 | validation_failed |
status ou limit est invalide ou répété, ou before ou un order autre que asc a été fourni. |
| 401 | unauthenticated |
L'identifiant est absent, invalide ou révoqué. |
| 403 | insufficient_permissions |
L'identifiant ne dispose pas de l'autorisation requise. |
| 429 | rate_limited |
La limite de débit a été dépassée ; réessayez après la durée indiquée dans Retry-After. |
| 503 | service_unavailable |
Une dépendance est temporairement indisponible ; réessayez après la durée indiquée dans Retry-After. |
Exemple
curl -i "https://api.eu.keenauth.com/v1/users/usr_01j9xh2k6p7q1r3s5t7v9w1x3y/memberships?status=active&limit=20" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
Données personnelles
Ce point de terminaison traite des données personnelles : appartenances et invitations aux organisations. Données personnelles dans les API KeenAuth décrit les données conservées, leur durée de conservation et leur suppression. N'envoyez de données sensibles (santé, données biométriques, religion, opinions politiques, orientation sexuelle) dans aucun champ.