public async Task <IActionResult> Authenticate(UserLoginDto userLoginDto) { ApiTokenResponse response; var userLogin = _mapper.Map <UserLoginDto, UserLogin>(userLoginDto); var resultUserLogin = await _userLoginService.GetByCredentials(userLogin); userLogin = resultUserLogin.Value; if (resultUserLogin.Status == ResultStatus.Error) { response = new ApiTokenResponse { Title = nameof(HttpStatusCode.InternalServerError), Errors = resultUserLogin.Errors, Satatus = (int)HttpStatusCode.InternalServerError }; return(StatusCode(StatusCodes.Status500InternalServerError, response)); } if (userLogin == null) { response = new ApiTokenResponse { Title = nameof(HttpStatusCode.NotFound), Satatus = (int)HttpStatusCode.NotFound }; return(NotFound(response)); } response = new ApiTokenResponse { Token = _tokenService.GenerateToken(userLogin.User), Title = nameof(HttpStatusCode.OK), Satatus = (int)HttpStatusCode.OK }; return(Ok(response)); }