Régénérer les codes de récupération
POST /fapi/v1/me/recovery-codes:regenerate · appelé depuis l'hôte de connexion de l'environnement
Remplace les codes de récupération de l'utilisateur par de nouveaux codes ; tous les anciens codes deviennent invalides. Les nouveaux codes ne sont affichés qu'une seule fois dans cette réponse, et une notification de sécurité est envoyée aux adresses e-mail de l'utilisateur. Nécessite le cookie __Host-idp_session de l'utilisateur authentifié ; si le cookie est absent, expiré ou révoqué, renvoie 401 unauthenticated. Une application de première partie sur une autre origine peut à la place envoyer son jeton d'accès à l'API front (Authorization: DPoP <token> avec une preuve DPoP ; voir Jeton d'accès à l'API front).
Requête
En-têtes :
| En-tête | Obligatoire | Description |
|---|---|---|
Idp-Client |
oui | Identifiant du SDK. |
Origin |
oui | Doit être exactement https://<sign-in host>. |
Corps :
{}
Réponse
200 OK :
{"recovery_codes": ["…", "…"]}
Erreurs
| Statut | Code | Quand |
|---|---|---|
| 401 | unauthenticated |
Aucun cookie de session valide. |
| 401 | step_up_required |
La session n'a pas été vérifiée au cours des 5 dernières minutes ; vérifiez à nouveau avec max_age=300 dans l'en-tête WWW-Authenticate. |
| 403 | origin_not_allowed |
Origin est absent ou incorrect. |
| 404 | not_found |
Les codes de récupération sont désactivés dans l'environnement. |
| 409 | conflict |
L'utilisateur n'a pas de second facteur ; codes de récupération non générés. |
Exemple
curl -X POST https://example.keenauth.app/fapi/v1/me/recovery-codes:regenerate \
-H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
-H "Origin: https://example.keenauth.app" \
-H "Content-Type: application/json" \
-d '{}' \
-b cookies.txt
Données personnelles
Ce point de terminaison traite des données personnelles : identifiants. Données personnelles dans les API KeenAuth décrit ce qui est stocké, combien de temps il est conservé et comment il est supprimé. N'envoyez pas de catégories particulières de données personnelles (santé, données biométriques, religion, opinions politiques, orientation sexuelle) dans aucun champ.