如何获取通过mandrill api发送邮件的所有电子邮件地址列表

时间:2015-08-12 10:39:58

标签: javascript email-integration mandrill

您好我正在使用mandrill API向多个电子邮件ID发送电子邮件。我得到了打开,unique_opens,点击,unique_clicks,跳出等的计数。我想要捕获的是打开并点击通过mandrill API发送的邮件的人员的电子邮件ID。和here是链接,可以获取发送,打开和点击的邮件的计数。

2 个答案:

答案 0 :(得分:0)

您找到的users/info API提供了帐户级摘要信息,就像您在Mandrill的信息中心上看到的那样。我认为有两种方法可以获得Mandrill点击/打开个人收件人地址的数据:

第一种方法是使用Mandrill的exports/activity API生成摘要CSV,基本上与您在Mandrill outbound activity dashboard上看到的信息相同:对于每封已发送的消息,收件人地址,状态,打开计数,点击计数等 - 正是您正在寻找的信息,在一个大文件中。

一个缺点是,出口/活动不同步。你调用它,发起一个请求来生成导出,然后你必须继续轮询以查看它是否已完成。然后下载生成的压缩CSV,解压缩并解析CSV。 (所以,你必须写一些代码。)

第二种方法是使用Mandrill的messages/info API获取特定消息的最新信息。结果不仅包括该消息的打开和点击次数,还包括关于打开和点击的令人难以置信的丰富详细信息:用户的IP,位置和用户代理,他们点击的URL等等:

{
    "_id": "abc123abc123abc123abc123",
    "email": "recipient.email@example.com",
    "clicks": 42,
    "clicks_detail": [
        {
            "ts": 1365190001,
            "url": "http://www.example.com",
            "ip": "55.55.55.55",
            "location": "Georgia, US",
            "ua": "Linux/Ubuntu/Chrome/Chrome 28.0.1500.53"
        },
        ... for each click
    ],
    "opens": 42,
    "opens_detail": [ ... similar to clicks_detail ... ],
    ...
}

消息/信息的缺点是,您必须为每个发送的消息调用一次 - 这意味着您还需要跟踪_id Mandrill在您发送消息时分配消息(在messages/send回复)。 (再次,你必须写一些代码。)

无论采用哪种方法,您都需要在运行查询时尝试使用。在大多数打开和点击发送消息后,您需要等待足够长的时间。但是,Mandrill stores the detailed data只有30天(我认为) - 所以,你不会想等太久。

答案 1 :(得分:0)

如果您正在寻找更多信息,例如点击电子邮件中的哪些URL,哪个浏览器等,我建议使用/messages/search.json,这将返回最多3个月的数据。 search API返回与info api相同的信息,但它跨越查询指定的多条消息。为您发送的每封电子邮件发送信息消息效率更高。

每个搜索查询也有1000条消息的限制。因此,您必须在搜索查询ts中相应调整时间窗口的大小:[START_TIME TO STOP_TIME]

希望这有帮助,