Mandrill API - 获取电子邮件的所有收件人

Posted

技术标签:

【中文标题】Mandrill API - 获取电子邮件的所有收件人【英文标题】:Mandrill API - Get all recipients of an email 【发布时间】:2015-04-19 23:58:58 【问题描述】:

我一直在使用 Mandrill API 发送交易电子邮件。

我想使用 API 在 Web 应用程序中显示电子邮件(“电子邮件”是发送给多个收件人的一条消息)的总统计信息。 (收件人、退回、打开、点击)。

问题是 Mandrill 会为每条发送的消息返回一个 ID。因此,如果我向 100 个人发送电子邮件,我将获得 100 个消息 ID。查找每条消息、获取每条消息的退回、打开和点击并将它们汇总在一起会非常昂贵。

我一遍又一遍地阅读文档,似乎找不到从一封“电子邮件”中获取所有信息的方法。 Mandrill 将一封发给 100 人的电子邮件视为 100 封电子邮件,但我将其视为一封发给 100 人的电子邮件。

有没有更便宜的方法来收集这些信息?

是否有使用元数据的复杂方法?

【问题讨论】:

【参考方案1】:

您是对的 - Mandrill 将每个电子邮件收件人视为一封电子邮件。单独跟踪每个收件人的打开、点击、退回和其他活动,为此,必须向每个收件人发送单独的特定电子邮件。当您向每个收件人发送相同的内容时,基于​​每个收件人的跟踪必然需要为每个收件人创建单独的电子邮件。

您有几个选择 - 无论如何,您可能希望使用 webhook 将打开、点击等数据传回给您,而不是每次要显示有关消息的信息时都查找该数据。 Webhook 将允许您获取数据、添加计数并缓存该数据,除非/直到有额外的打开/点击记录。在不添加任何元数据的情况下,您可以为一系列收件人或系统中的特定“消息”使用该唯一消息 ID 来增加您的计数器。

如果您愿意,您还可以在 Mandrill 中使用自定义元数据字段,在您发送消息时传递一些唯一标识符,以将这 100 封电子邮件/收件人与系统中的单个消息相关联。元数据存储/跟踪 30 天,并且还包含在 webhook 中,因此您也可以通过这种方式引用回您的系统。

【讨论】:

以上是关于Mandrill API - 获取电子邮件的所有收件人的主要内容,如果未能解决你的问题,请参考以下文章

如何获取使用 Mandrill API 发送的最后一封电子邮件

Mandrill API - 下载电子邮件内容

带有 sinatra 的 Mandrill API 电子邮件队列

是否可以为 Mandrill 创建“开发”API 密钥?

延迟作业和 Mandrill:未初始化的常量 Mandrill::API

Codeigniter 和 Mandrill api,无法发送电子邮件