Verificar código de acceso por 2FA
Endpoint: POST /auth/login/2fa
Este endpoint completa el proceso de login cuando el usuario tiene 2FA habilitado. Valida el código TOTP y, si es correcto, devuelve un access token de sesión.
📝 Cuerpo de la solicitud
{
"code": "123456",
"token": "session-token"
}
code(requerido): código TOTP de 6 dígitos generado por la app autenticadora.token(requerido): token de sesión temporal recibido en el paso previo del login.
✅ Respuesta exitosa
200 OK — 2FA verificado
{
"code": 1001,
"message": "Login successful.",
"data": {
"token": "access-token",
"user": {
"...": "user-data"
}
}
}
Notas:
data.tokenes el access token final (JWT).data.usercontiene información del usuario retornada por el backend.
❌ Errores
400 Bad Request — Datos inválidos (4006)
Ocurre si faltan campos o no cumplen formato (por ejemplo: code no es 6 dígitos).
{
"code": 4006,
"message": "Missing or invalid data"
}
401 Unauthorized — Token de sesión inválido o expirado (4015)
Ocurre si el token no existe en Redis o expiró.
{
"code": 4015,
"message": "Invalid or expired session token"
}
401 Unauthorized — Código 2FA inválido (4005)
Ocurre si el code es incorrecto.
{
"code": 4005,
"message": "Invalid 2FA code"
}
📝 Nota
Si tienes problemas con la verificación:
- Asegúrate de que el código sea el actual (los TOTP cambian cada ~30s).
- Verifica que el
tokende sesión no haya expirado.