Obtenir un utilisateur

GET /v1/users/{user_id} · autorisation users:read

Renvoie un utilisateur. Un utilisateur d'un autre environnement, un utilisateur inexistant et un utilisateur supprimé renvoient tous 404 ; l'existence d'un utilisateur n'est jamais révélée d'un environnement à l'autre.

Requête

Paramètre Dans Obligatoire Description
user_id path oui Identifiant de l'utilisateur, préfixé usr_.
include query non Définissez deleted pour obtenir une fiche de suppression pour un utilisateur supprimé au lieu d'un 404.

Avec include=deleted, un utilisateur supprimé renvoie 410 avec deleted_at, deletion_id, backups_purged_by (la date à laquelle les données sont purgées des sauvegardes) et, pour un utilisateur fusionné, merged_into ; un utilisateur qui n'a jamais existé renvoie toujours 404.

Réponse

200 OK. Le corps est l'objet utilisateur. L'en-tête ETag contient la version de l'utilisateur.

Les données personnelles sont masquées lorsque la clé ne dispose pas de l'autorisation users:read_pii : email devient a***@e***.com, phone_number ne conserve que ses 2 derniers chiffres (+**********67), name, given_name, family_name, middle_name et nickname deviennent des initiales (A. L.), username ne conserve que son premier caractère (a***), birthdate devient ****-**-** et address devient {"redacted": true}. user_metadata et app_metadata ne sont pas masqués.

{
  "id": "usr_0a1b2c3d4e5f6g7h8j9k0m1n2p",
  "kind": "regular",
  "status": "active",
  "external_id": null,
  "username": null,
  "name": "Ada Lovelace",
  "email": "ada@example.com",
  "email_verified": true,
  "phone_number": null,
  "phone_verified": false,
  "user_metadata": {},
  "app_metadata": {},
  "created_via": "admin_api",
  "created_at": "2026-01-15T09:30:00Z",
  "updated_at": "2026-01-15T09:30:00Z",
  "last_sign_in_at": null,
  "deletion_requested_at": null,
  "deletion_due_at": null
}

Erreurs

Chaque erreur est un corps application/problem+json avec un code stable.

HTTP code Quand
404 not_found L'utilisateur n'existe pas dans cet environnement (ou l'identifiant est mal formé).
410 user_deleted L'utilisateur a été supprimé et include=deleted a été demandé ; le corps contient deleted_at, deletion_id, backups_purged_by et, pour un utilisateur fusionné, merged_into.
401 unauthenticated La clé API est absente, invalide ou révoquée.
403 insufficient_permissions La clé ne dispose pas de l'autorisation users:read.
429 rate_limited La limite de débit a été dépassée ; respectez Retry-After.
503 service_unavailable Une dépendance est temporairement indisponible ; réessayez plus tard.

Exemple

curl https://api.eu.keenauth.com/v1/users/usr_0a1b2c3d4e5f6g7h8j9k0m1n2p \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"

Données personnelles

Ce point de terminaison traite des données personnelles : profil de l'utilisateur final. Données personnelles dans les API KeenAuth décrit ce qui est stocké, la durée de conservation et la manière dont elles sont supprimées. N'envoyez de catégories particulières de données personnelles (santé, données biométriques, religion, opinions politiques, orientation sexuelle) dans aucun champ.