/// <summary> /// 2.0 ---- /// </summary> /// <param name="apiKey"></param> /// <param name="listId"></param> /// <param name="subject"></param> /// <param name="fromEmail"></param> /// <param name="fromName"></param> /// <param name="toName"></param> /// <param name="htmlContent"></param> /// <param name="textContent"></param> /// <param name="type"></param> /// <returns></returns> public static string CreateCampaign(string apiKey, string listId, string subject, string fromEmail, string fromName, string toName, string htmlContent, string textContent = "", TypeCompaign type = TypeCompaign.regular) { var mailchimpCampaign = new MailchimpCreateCampaignObject { apikey = apiKey, type = type.ToString(), options = new MailchimpCreateCampaignObjectOptions { list_id = listId, subject = subject.Length > 150 ? subject.Substring(0, 149) : subject, from_email = fromEmail, from_name = fromName, to_name = toName }, content = new MailchimpCreateCampaignObjectContent { html = htmlContent } }; var responseString = PostRequest("campaigns/create", JsonConvert.SerializeObject(mailchimpCampaign)); var campaign = JsonConvert.DeserializeObject <MailchimpCampaign>(responseString); if (campaign != null) { return(campaign.id); } return(string.Empty); }
/// <summary> /// /// </summary> /// <param name="apiKey"></param> /// <param name="listId"></param> /// <param name="subject"></param> /// <param name="fromEmail"></param> /// <param name="fromName"></param> /// <param name="toName"></param> /// <param name="htmlContent"></param> /// <param name="textContent"></param> /// <param name="type"></param> /// <returns></returns> public static string CreateCampaign(string apiKey, string listId, string subject, string fromEmail, string fromName, string toName, string htmlContent, string textContent = "", TypeCompaign type = TypeCompaign.regular) { if (apiKey.IsNullOrEmpty() || listId.IsNullOrEmpty()) { return(string.Empty); } var dc = GetApiDc(apiKey); if (dc.IsNullOrEmpty()) { return(string.Empty); } //Added by Evgeni to change to in Mailchimp Name fromName = @"ООО ''НесТулс'' и bosch-opt.by"; // var compaignId = string.Empty; var request = (HttpWebRequest)WebRequest.Create( string.Format("http://{0}.api.mailchimp.com/1.3/?method=campaignCreate&apikey={1}&type={2}&options[list_id]={3}&options[subject]={4}&options[from_email]={5}&options[from_name]={6}&options[to_name]={7}&content[html]={8}&content[text]={9}", dc, apiKey, type.ToString().ToLower(), listId, subject, fromEmail, fromName, toName, HttpContext.Current.Server.UrlEncode(htmlContent), textContent)); request.KeepAlive = false; request.Method = "POST"; try { var stream = request.GetResponse().GetResponseStream(); if (stream != null) { compaignId = (new StreamReader(stream).ReadToEnd()); } } catch (Exception) { } return(compaignId); }