Example #1
0
 public static string CreateFromTemplate(AuthenticationDetails auth, string clientID,
                                         string subject, string name, string fromName, string fromEmail,
                                         string replyTo, List <string> listIDs, List <string> segmentIDs,
                                         string templateID, TemplateContent templateContent)
 {
     return(HttpHelper.Post <Dictionary <string, object>, string>(
                auth, string.Format("/campaigns/{0}/fromtemplate.json", clientID), null,
                new Dictionary <string, object>()
     {
         { "Subject", subject },
         { "Name", name },
         { "FromName", fromName },
         { "FromEmail", fromEmail },
         { "ReplyTo", replyTo },
         { "ListIDs", listIDs },
         { "SegmentIDs", segmentIDs },
         { "TemplateID", templateID },
         { "TemplateContent", templateContent }
     }));
 }
 public static string CreateFromTemplate(AuthenticationDetails auth, string clientID,
     string subject, string name, string fromName, string fromEmail,
     string replyTo, List<string> listIDs, List<string> segmentIDs,
     string templateID, TemplateContent templateContent)
 {
     return HttpHelper.Post<Dictionary<string, object>, string>(
         auth, string.Format("/campaigns/{0}/fromtemplate.json", clientID), null,
         new Dictionary<string, object>()
         {
             { "Subject", subject },
             { "Name", name },
             { "FromName", fromName},
             { "FromEmail", fromEmail },
             { "ReplyTo", replyTo },
             { "ListIDs", listIDs },
             { "SegmentIDs", segmentIDs },
             { "TemplateID", templateID },
             { "TemplateContent", templateContent }
         });
 }
Example #3
0
 public static string CreateFromTemplate(string clientID, string subject,
     string name, string fromName, string fromEmail, string replyTo,
     List<string> listIDs, List<string> segmentIDs, string templateID,
     TemplateContent templateContent)
 {
     return CreateFromTemplate(CreateSendOptions.ApiKey, clientID, subject, name,
         fromName, fromEmail, replyTo, listIDs, segmentIDs, templateID,
         templateContent);
 }
Example #4
0
        void CreateFromTemplate()
        {
            try
            {
                List<string> listIDs = new List<string>();
                listIDs.Add("List ID One");
                List<string> segmentIDs = new List<string>();
                segmentIDs.Add("Segment ID One");

                // Prepare the template content
                TemplateContent templateContent = new TemplateContent();

                List<EditableField> singlelines = new List<EditableField>();
                EditableField singleline = new EditableField();
                singleline.Content = "This is a heading";
                singleline.Href = "http://example.com/";
                singlelines.Add(singleline);
                templateContent.Singlelines = singlelines;

                List<EditableField> multilines = new List<EditableField>();
                EditableField multiline = new EditableField();
                multiline.Content = "<p>This is example</p><p>multiline <a href=\"http://example.com\">content</a>...</p>";
                multilines.Add(multiline);
                templateContent.Multilines = multilines;

                List<EditableField> images = new List<EditableField>();
                EditableField image = new EditableField();
                image.Content = "http://example.com/image.png";
                image.Alt = "This is alt text for an image";
                image.Href = "http://example.com/";
                images.Add(image);
                templateContent.Images = images;

                List<Repeater> repeaters = new List<Repeater>();
                Repeater repeater = new Repeater();
                List<RepeaterItem> items = new List<RepeaterItem>();
                RepeaterItem item = new RepeaterItem();
                item.Layout = "My layout";

                // Just using the same data for Singlelines, Multilines,
                // and Images as above in this example.
                item.Singlelines = singlelines;
                item.Multilines = multilines;
                item.Images = images;

                repeater.Items = items;
                repeaters.Add(repeater);
                templateContent.Repeaters = repeaters;

                // templateContent as defined above would be used to fill the content of
                // a template with markup similar to the following:
                // <html>
                // <head><title>My Template</title></head>
                // <body>
                //     <p><singleline>Enter heading...</singleline></p>
                //     <div><multiline>Enter description...</multiline></div>
                //     <img id="header-image" editable="true" width="500" />
                //     <repeater>
                //     <layout label="My layout">
                //         <div class="repeater-item">
                //         <p><singleline></singleline></p>
                //         <div><multiline></multiline></div>
                //         <img editable="true" width="500" />
                //         </div>
                //     </layout>
                //     </repeater>
                //     <p><unsubscribe>Unsubscribe</unsubscribe></p>
                // </body>
                // </html>

                string campaignID = Campaign.CreateFromTemplate(
                    auth,
                    "Your Client ID",
                    "Campaign Subject",
                    "Campaign Name",
                    "From Name",
                    "*****@*****.**",
                    "*****@*****.**",
                    listIDs,
                    segmentIDs,
                    "Template ID",
                    templateContent);

                Console.WriteLine("Campaign ID: " + campaignID);
            }
            catch (CreatesendException ex)
            {
                ErrorResult error = (ErrorResult)ex.Data["ErrorResult"];
                Console.WriteLine(error.Code);
                Console.WriteLine(error.Message);
            }
            catch (Exception ex)
            {
                // Handle some other failure
                Console.WriteLine(ex.ToString());
            }
        }