Ottieni un utente

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

Restituisce un utente. Un utente di un altro ambiente, un utente che non esiste e un utente che è stato eliminato restituiscono tutti 404; l'esistenza non viene mai rivelata tra ambienti.

Richiesta

Parametro In Obbligatorio Descrizione
user_id path sì ID utente, con prefisso usr_.
include query no Imposta deleted per ottenere un tombstone per un utente eliminato invece di 404.

Con include=deleted, un utente eliminato restituisce 410 con deleted_at, deletion_id, backups_purged_by (la data entro cui i dati vengono rimossi dai backup) e, per un utente unito, merged_into; un utente che non è mai esistito restituisce comunque 404.

Risposta

200 OK. Il body è l'oggetto utente. L'header ETag contiene la versione dell'utente.

I dati personali vengono mascherati quando la chiave non ha l'autorizzazione users:read_pii: email diventa a***@e***.com, phone_number mantiene solo le ultime 2 cifre (+**********67), name, given_name, family_name, middle_name e nickname diventano iniziali (A. L.), username mantiene solo il primo carattere (a***), birthdate diventa ****-**-** e address diventa {"redacted": true}. user_metadata e app_metadata non vengono mascherati.

{
  "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
}

Errori

Ogni errore è un corpo application/problem+json con un code stabile.

HTTP code Quando
404 not_found L'utente non esiste in questo ambiente (oppure l'ID non è valido).
410 user_deleted L'utente è stato eliminato e include=deleted è stato richiesto; il body contiene deleted_at, deletion_id, backups_purged_by e, per un utente unito, merged_into.
401 unauthenticated La chiave API manca, non è valida o è stata revocata.
403 insufficient_permissions La chiave non ha l'autorizzazione users:read.
429 rate_limited È stato superato il limite di richieste; rispetta Retry-After.
503 service_unavailable Una dipendenza è temporaneamente non disponibile; riprova più tardi.

Esempio

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

Dati personali

Questo endpoint gestisce dati personali: profilo dell'utente finale. Dati personali nelle API di KeenAuth descrive cosa viene memorizzato, per quanto tempo viene conservato e come viene eliminato. Non inviare categorie particolari di dati personali (salute, dati biometrici, religione, opinioni politiche, orientamento sessuale) in nessun campo.