public static Result<string> Create(string apiKey, string clientID, string campaignName, string campaignSubject, string fromName, string fromEmailAddress, string replyToEmailAddress, string htmlContentURL, string textContentURL, List<string> listIDs, List<ListSegment> listSegments) { CampaignMonitorAPIWrapper.CampaignMonitorAPI.api _api = new CampaignMonitorAPI.api(); object o = _api.CreateCampaign(apiKey, clientID, campaignName, campaignSubject, fromName, fromEmailAddress, replyToEmailAddress, htmlContentURL, textContentURL, listIDs.ToArray(), listSegments.ConvertAll<CampaignMonitorAPI.List>( delegate(ListSegment segment) { CampaignMonitorAPI.List apiSegment = new CampaignMonitorAPI.List(); apiSegment.ListID = segment.ListID; apiSegment.Name = segment.SegmentName; return apiSegment; }).ToArray()); if (o is CampaignMonitorAPI.Result) return new Result<string>((CampaignMonitorAPI.Result)o, ""); else return new Result<string>(0, "Success", Convert.ToString(o)); }