POST/api/auth/login

Connecte un utilisateur et délivre un JWT de session ainsi qu'un Refresh-Token. C'est le seul moyen d'obtenir un Token d'accès valide pour le tableau de bord — il n'existe pas de système distinct de clés API pour développeurs.

Authentification et sécurité

Aucune authentification requise

Limitation progressive des attaques par force brute par e-mail/nom d’utilisateur (authGuard) -- 10 tentatives échouées en 5 minutes entraînent un délai croissant, à partir de 30 un blocage.

Idempotent: Non

Paramètres

identifier(body, string, requis)Adresse e-mail ou nom d'utilisateur
password(body, string, requis)Mot de passe

Exemple de requête

{"identifier":"user@example.com","password":"VotreMotDePasse"}

Exemple de réponse

{"ok":true,"token":"<JWT, valable 12h>","refreshToken":"<Refresh-Token, valable 7 jours, à usage unique>","user":{"id":"...","tenant_id":"...","email":"user@example.com","role":"EMPLOYEE","roles":[],"permissions":[],"isMasterAdmin":false}}

Codes d'erreur

401 INVALID_CREDENTIALSL'e-mail/nom d'utilisateur ou le mot de passe est incorrect.
429 RATE_LIMIT_EXCEEDEDTrop de tentatives échouées pour cet identifiant ou cette adresse IP.

Preuve de test en direct

Succès (200, JWT + Refresh-Token réels) et cas négatif (401 en cas de mot de passe erroné) vérifiés en conditions réelles sur une pile de test isolée.

Authentification