Surface concernée
Cette page documente l’authentification de la console web : Elle ne concerne pas l’API publiquex-api-key.
Endpoints utilisés par la console
| Méthode | Endpoint | Usage |
|---|---|---|
POST | /api/auth/signup | Créer un compte |
POST | /api/auth/login | Ouvrir une session |
GET | /api/auth/google | Démarrer OAuth Google |
POST | /api/auth/resend-verification | Renvoyer le mail de vérification |
GET | /api/auth/verify-email/validate?token=... | Vérifier l’état d’un token |
POST | /api/auth/verify-email | Confirmer la vérification e-mail |
POST | /api/auth/forgot-password | Demander un lien de reset |
GET | /api/auth/reset-password/validate?token=... | Vérifier un lien de reset |
POST | /api/auth/reset-password | Définir un nouveau mot de passe |
Inscription par e-mail
POST /api/auth/signup ne connecte plus automatiquement l’utilisateur.
Réponse attendue :
- compte créé
- écran “Vérifiez votre e-mail”
- possibilité de renvoyer le lien
- retour vers la page de connexion
Connexion par e-mail
POST /api/auth/login renvoie toujours un JWT si la connexion réussit.
Cas métier important :
| Code | Sens côté UI |
|---|---|
UNAUTHORIZED | email ou mot de passe incorrect |
EMAIL_NOT_VERIFIED | afficher un message clair et proposer le renvoi du mail |
EMAIL_NOT_VERIFIED :
OAuth Google
Flux :- la console ouvre
GET /api/auth/google - le backend redirige vers Google
- Google revient sur
https://app.msgflash.com/auth/callback - le token JWT est lu depuis
?token=... - la console stocke le JWT puis redirige vers
/dashboard
?error=oauth_failed, la console renvoie l’utilisateur vers /login?error=oauth_failed.
Vérification e-mail
Page concernée :- lire
token - appeler
GET /api/auth/verify-email/validate?token=... - si valide, appeler
POST /api/auth/verify-email - afficher le résultat sans connexion automatique
validexpiredusedinvalidalready_verified
/login.
Mot de passe oublié
Flux :- formulaire
/forgot-password POST /api/auth/forgot-password- réception d’un lien
- page
/reset-password?token=... - validation du token
POST /api/auth/reset-password- retour vers
/login
Notes UX importantes
- L’inscription classique n’ouvre pas de session automatiquement.
- La vérification e-mail est obligatoire avant connexion.
- Le bouton “Renvoyer l’e-mail de vérification” doit rester disponible sur :
- l’écran après inscription
- l’écran de login quand
EMAIL_NOT_VERIFIEDest reçu - la page
/verify-emailquand le token est expiré ou invalide