在 JSON 请求上访问变量 merge_vars 以外的 Mandrill API

Acessing variables on JSON request to Mandrill API other than merge_vars

我正在尝试将 Mandrill 服务与另一个可以向其发送 http POST 的 API 结合,以将变量合并到模板中并发送电子邮件。问题是很难让另一个 API 发送一个 JSON 对象,就像 Mandrill 的 API 所期望的那样。

其他 API 可以像

一样轻松地发送扁平 JSON

{"name":"some name","firstvar":"10","secondvar":"20"},

但是很难让它创建一个复杂的 JSON,带有内部数组等等。

Mandrill 理解的 JSON 格式的另一个问题是,在 global_merge_vars 中,名称值对未配对:

[ { "name":"MyVariable" , "content":"123" } ,
  { "name":"SecondVariable" , "content":"321"} ] 

而不是:

[ { "MyVariable":"123" , 
    "SecondVariable":"321" } ]

这让事情变得有点困难。

所以我想知道的是,Mandrill 是否可以合并 global_merge_vars 或 merge_vars 数组中的变量以外的其他变量,并通过它们的名称值关系引用它们。

如果您知道适合所介绍案例的其他解决方案或服务,我也将不胜感激。

提前谢谢你。

您需要编写代码,从您正在使用的另一个 API 获取信息,并将其转换为 Mandrill 所需的格式。不可能传递不是它接受的格式的 Mandrill 数据并将其映射到正确的格式 - 有太多的可能性使它成为一个可行的功能。您可能想要解码从另一个 API 获得的 JSON,然后为 Mandrill 构造有效载荷。使用您正在使用的语言的 Mandrill API 客户端可能会有所帮助,以使其更容易,或者像 Zapier 这样的服务可以配对 APIs 而无需知道如何代码。