private static async Task <string> RequestAsync(HttpRequestMessage request, RequestVersion requestVersion) { var shortUrl = request.RequestUri.OriginalString; //get FULL url request.RequestUri = new Uri(GetFullUrl(shortUrl, requestVersion)); logger.InfoStartRequest(request); //logging request.Headers.Add("User-Agent", AppName + " %40" + DevName); //%40 - @ if (IsAuthorized) { if (AutoRefreshToken && IsTokenExpired) { await RefreshTokenAsync().ConfigureAwait(false); } request.Headers.Add("Authorization", "Bearer " + OAuth2Token.AccessToken); } HttpResponseMessage response; using (client = new HttpClient()) { response = await client.SendAsync(request).ConfigureAwait(false); } if (response.IsSuccessStatusCode) { logger.InfoDoneRequest(request); //logging return(await response.Content.ReadAsStringAsync().ConfigureAwait(false)); } logger.WarnNotOkResponse(request, response); //logging return(null); }