private string GenListCampaignsQueryParameter(ListCampaignsParameter parameter) { var query = new List <string>(); if (string.IsNullOrWhiteSpace(parameter.CampaignType) == false) { query.Add($"campaignType={parameter.CampaignType}"); } if (parameter.StartIindex.HasValue) { query.Add($"startIndex={parameter.StartIindex.Value}"); } if (parameter.Count.HasValue) { query.Add($"count={parameter.Count.Value}"); } if (string.IsNullOrWhiteSpace(parameter.StateFilter) == false) { query.Add($"stateFilter={parameter.StateFilter}"); } if (string.IsNullOrWhiteSpace(parameter.Name) == false) { query.Add($"name={parameter.Name}"); } if (string.IsNullOrWhiteSpace(parameter.CampaignIdFilter) == false) { query.Add($"campaignIdFilter={parameter.CampaignIdFilter}"); } return(string.Join("&", query)); }
/// <summary> /// Retrieves a list of campaigns satisfying optional criteria. /// </summary> /// <param name="parameter"></param> /// <returns></returns> public IEnumerable <CampaignInfo> ListCampaigns(ListCampaignsParameter parameter = null) { var query = string.Empty; if (parameter != null) { query = this.GenListCampaignsQueryParameter(parameter); } var url = $"{APIEndpoint.GetUrl(this.Marketplace)}/{this.ApiVersion}/campaigns?{query}"; return(this.HttpRequest <IEnumerable <CampaignInfo> >(url)); }