public async Task <Result <UserAuth> > Auth(string login, string password, string?sessionId = null) { this.logger.LogDebug("Auth"); try { var res = await client.GetSessionId(login, password, sessionId); var isAuthorized = CheckAuthorization(res.Item2); if (!isAuthorized) { return(Result <UserAuth> .Failure(new UnauthorizedAccessException())); } return(Result <UserAuth> .Success(converter.PasrseAuth(res.Item2, res.Item1))); } catch (Exception e) { this.logger.LogError(e, "Auth"); return(Result <UserAuth> .Failure(e)); } }