如何在 mailchimp api v3 中安排活动?

Posted

技术标签:

【中文标题】如何在 mailchimp api v3 中安排活动?【英文标题】:How to schedule a campaign in mailchimp api v3? 【发布时间】:2016-05-02 02:13:17 【问题描述】:

我正在尝试使用 MailChimp API v3 来安排活动,但我在 API 文档中看不到任何方法。

http://developer.mailchimp.com/documentation/mailchimp/reference/overview/

有人知道如何在 v3 上进行调度吗?

【问题讨论】:

【参考方案1】:

要将邮件发送到列表,首先您需要创建一个列表和一个活动。

如果您已经创建了这些,您可以将带有 HTTP 请求的预定邮件发送到以下地址。

https://SERVER.api.mailchimp.com/3.0/campaigns/CAMPAIGNID/actions/schedule

SERVER:MailChimp 分配给您的服务器,您可以通过登录了解。您的仪表板 url 将类似于 https://us6.admin.mailchimp.com/

在上述情况下,SERVERus6

这些是 MailChimp v3 文档中要求的参数。

请求正文参数

schedule_time

类型:Schedule_time 标题:计划时间 只读:错误

用于安排投放活动的 UTC 日期和时间。

时间扭曲

类型:布尔值 标题:时间扭曲 只读:错误

选择发送时活动是否应使用 Timewarp。使用 Timewarp 安排的活动会根据收件人的时区进行本地化。例如,schedule_time 为 13:00 的 Timewarp 活动将在当地时间下午 1:00 发送给每个收件人。对于使用 Batch Delivery 的广告系列,无法设置为 true。

batch_delivery

类型:对象 标题:批量交付 只读:错误

选择广告系列是否应使用批量投放。对于使用 Timewarp 的广告系列,无法设置为 true。

【讨论】:

能把这个的文档链接放上来吗? 如何指定时间?我也对文档感兴趣 这个答案指出它不适用于 api v3 github.com/shahriarhossain/MailChimp.Api.Net/wiki/…【参考方案2】:

这个聚会有点晚了,完整的链接是(http://developer.mailchimp.com/documentation/mailchimp/reference/campaigns/#action-post_campaigns_campaign_id_actions_schedule),因为我找不到完整的代码,这里是一个使用(https://github.com/brandonseydel/MailChimp.Net)的简单示例:

public bool CampaignCreate(string campaignName, string subject, string emailText,
        string emailSender, string emailSenderName, DateTime sendTime,
        int templateID, string listID, ref string campaignID)
    
        MailChimpManager mgr = new MailChimpManager(_apiKey);
        try
        
            if (String.IsNullOrWhiteSpace(campaignID))
                CampaignExists(campaignName, out campaignID);

            // convert to utc and round up to nearest 15 mins
            if (sendTime.Kind != DateTimeKind.Utc)
                sendTime = sendTime.ToUniversalTime();

            sendTime = sendTime.RoundUp(TimeSpan.FromMinutes(15));

            Models.Campaign newCampaign = new Models.Campaign();
            newCampaign.Id = campaignID;
            newCampaign.Type = CampaignType.Regular;
            newCampaign.Settings = new Models.Setting();
            newCampaign.Settings.Title = campaignName;
            newCampaign.Settings.SubjectLine = subject;
            newCampaign.Recipients = new Models.Recipient();
            newCampaign.Recipients.ListId = listID;
            newCampaign.Settings.FromName = emailSenderName;
            newCampaign.Settings.ReplyTo = emailSender;
            newCampaign.Settings.TemplateId = templateID;

            newCampaign = mgr.Campaigns.AddOrUpdateAsync(newCampaign).Result;

            campaignID = newCampaign.Id;
            ContentRequest content = new ContentRequest();
            content.html = emailText;

            mgr.Content.AddOrUpdateAsync(campaignID, content);

            mgr.Campaigns.ScheduleAsync(newCampaign.Id, new CampaignScheduleRequest()
             ScheduleTime = sendTime.ToString("o")  );

            mgr.Campaigns.SendAsync(campaignID);

            return (!String.IsNullOrWhiteSpace(campaignID));
        
        finally
        
            mgr = null;
        
    

【讨论】:

以上是关于如何在 mailchimp api v3 中安排活动?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 API v3 从 mailchimp 受众获取所有标签?

如何在 mailchimp API v3.0 上获取具有特定标签的成员总数?

如何使用 Mailchimp API v3 创建具有地址的列表成员

如何获取 mailchimp API v3.0 上的所有列表?

使用 Mailchimp 的 API v3 将订阅者添加到列表

只需一次调用 MailChimp API v3 即可获取所有 mailchimp 活动的详细信息