public async Task <IActionResult> ValidateTwoFactor([FromBody] string code) { if (!ModelState.IsValid) { return(BadRequest()); } try { var result = await _userSvc.ValidateTwoFactorCodeAsync(code); if (!result.IsValid) { return(Unauthorized(new { LoginError = result.ResponseMessage.Message, AttemptsRemaining = result.Attempts })); } var jwtToken = await _authSvc.GenerateNewToken(); if (jwtToken.ResponseInfo.StatusCode == HttpStatusCode.Unauthorized) { return(Unauthorized(new { LoginError = jwtToken.ResponseInfo.Message })); } if (jwtToken.ResponseInfo.StatusCode == HttpStatusCode.OK) { return(Ok(jwtToken)); } } catch (Exception ex) { Console.WriteLine(ex); } return(Unauthorized(new { LoginError = "You request cannot be completed" })); }