public async Task <IRtmUser> GetAutheticatedUserAsync() { if (string.IsNullOrEmpty(_frob)) { throw new InvalidOperationException("You must generate an authentication URL before requesting a token."); } var getTokenUrl = _urlFactory.CreateGetTokenUrl(_frob); var response = await _apiClient.GetAsync <GetTokenResponseData>(getTokenUrl).ConfigureAwait(false); var token = response.AuthenticationToken; return(_userFactory.CreateNewUser(token)); }