/// <summary> /// Retrieves a list of product ads with extended fields satisfying optional criteria. /// </summary> /// <param name="parameter"></param> /// <returns></returns> public List <ProductAdExInfo> ListProductAdsEx(ListProductAdsParameter parameter) { var queryData = string.Empty; if (parameter != null) { queryData = GenQueryData(parameter); } var url = $"{APIEndpoint.GetUrl(this.Marketplace)}/{this.ApiVersion}/productAds/extended?{queryData}"; return(this.HttpRequest <List <ProductAdExInfo> >(url)); }
private static string GenQueryData(ListProductAdsParameter parameter) { var queryData = new List <string>(); if (parameter.StartIndex.HasValue) { queryData.Add($"startIndex={parameter.StartIndex}"); } if (parameter.Count.HasValue) { queryData.Add($"count={parameter.Count}"); } if (!string.IsNullOrWhiteSpace(parameter.CampaignType)) { queryData.Add($"campaignType={parameter.CampaignType}"); } if (!string.IsNullOrWhiteSpace(parameter.Sku)) { queryData.Add($"sku={parameter.Sku}"); } if (!string.IsNullOrWhiteSpace(parameter.Asin)) { queryData.Add($"asin={parameter.Asin}"); } if (!string.IsNullOrWhiteSpace(parameter.AdGroupId)) { queryData.Add($"adGroupId={parameter.AdGroupId}"); } if (!string.IsNullOrWhiteSpace(parameter.StateFilter)) { queryData.Add($"stateFilter={parameter.StateFilter}"); } if (!string.IsNullOrWhiteSpace(parameter.CampaignIdFilter)) { queryData.Add($"campaignIdFilter={parameter.CampaignIdFilter}"); } if (!string.IsNullOrWhiteSpace(parameter.AdGroupIdFilter)) { queryData.Add($"adGroupIdFilter={parameter.AdGroupIdFilter}"); } if (!string.IsNullOrWhiteSpace(parameter.AdIdFilter)) { queryData.Add($"adIdFilter={parameter.AdIdFilter}"); } return(string.Join("&", queryData)); }