internal async Task <SearchListResponse> List(string query, string pageToken, ErrorDelegate errorDelegate) { var requestUri = ApiAddress + Resource + "?part=snippet&type=video&maxResults=5&key=" + _apiKeyProvider.getKey() + "&q=" + query; if (pageToken != null) { requestUri += "&pageToken=" + pageToken; } var response = await _httpClient.GetAsync(requestUri); var content = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { return(JsonConvert.DeserializeObject <SearchListResponse>(content)); } else { errorDelegate(); return(new SearchListResponse()); } }