Reimposta tutti i secondi fattori di un utente
POST /v1/users/{user_id}/authenticators:reset · autorizzazione user-credentials:write
Revoca tutti i secondi fattori dell'utente ed elimina i codici di recupero; l'utente registra di nuovo un fattore al successivo accesso. include_passkeys ha come predefinito true; con false le passkey (incluse quelle con ruolo both) vengono mantenute. I passaggi vengono eseguiti con la modalità best-effort e possono essere ripetuti; un errore di notifica non fa fallire la chiamata (notified). La risposta contiene conteggi, mai codici o segreti. Invia un header Idempotency-Key per rendere sicuri i tentativi ripetuti.
Richiesta
| Parametro | In | Obbligatorio | Descrizione |
|---|---|---|---|
user_id |
path | sì | ID utente, con prefisso usr_. |
Corpo facoltativo:
| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
include_passkeys |
boolean | no | true per impostazione predefinita: anche le passkey vengono revocate. Con false le passkey (incluse quelle con ruolo both) vengono mantenute. |
locale |
string | no | Tag di lingua BCP 47 della notifica, ad esempio tr. Il valore predefinito è la lingua dell'utente o dell'ambiente. |
Risposta
200 OK. Il corpo riporta il conteggio di ciò che è stato fatto.
{
"revoked_authenticators": 3,
"recovery_codes_deleted": true,
"notified": true
}
Errori
Ogni errore è un corpo application/problem+json con un code stabile.
| HTTP | code |
Quando |
|---|---|---|
| 400 | malformed_request, unknown_field |
Il corpo non è JSON valido oppure contiene un campo sconosciuto. |
| 415 | unsupported_media_type |
È stato inviato un corpo senza Content-Type: application/json. |
| 422 | validation_failed |
locale non è un tag di lingua BCP 47 valido, oppure un campo ha il tipo sbagliato. |
| 404 | not_found |
L'utente non esiste in questo ambiente (oppure l'ID è malformato). |
| 401 | unauthenticated |
La chiave API manca, non è valida o è stata revocata. |
| 403 | insufficient_permissions |
La chiave non ha l'autorizzazione user-credentials:write. |
| 429 | rate_limited |
È stato superato il limite di frequenza; rispetta Retry-After. |
| 503 | service_unavailable |
Una dipendenza non è temporaneamente disponibile; riprova più tardi. |
Esempio
curl -X POST https://api.eu.keenauth.com/v1/users/usr_0a1b2c3d4e5f6g7h8j9k0m1n2p/authenticators:reset \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"include_passkeys": false, "locale": "en"}'
Dati personali
Questo endpoint contiene dati personali: credenziali. 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.