【发布时间】:2017-01-17 06:41:19
【问题描述】:
我正在尝试访问 Marketo 中程序的资产,但 Marketo 文档中没有相同的 API。
还有如何将令牌和电子邮件与相应的电子邮件模板进行映射,因为我必须生成电子邮件的预览。
【问题讨论】:
我正在尝试访问 Marketo 中程序的资产,但 Marketo 文档中没有相同的 API。
还有如何将令牌和电子邮件与相应的电子邮件模板进行映射,因为我必须生成电子邮件的预览。
【问题讨论】:
不幸的是,我不相信有一种方法可以使用程序 ID 之类的东西来查询特定程序下的电子邮件资产。许多 Marketo API 调用都依赖于使用名称。要提取电子邮件,您可以使用Email Query By Name API
电子邮件名称将为<programname>.Email(假设您在marketo 中的电子邮件资产名称为“Email”)。
如果 Marketo 程序名称为“TestProgram”且电子邮件名称为“Email”,以下是电子邮件的 GET 请求示例。
GET /rest/asset/v1/email/byName.json?name=TestProgram.Email
【讨论】:
实际上,Marketo 中的程序是一个类型为 Program 的文件夹
所以你可以使用getEmailUsingGET端点获取程序内容
只需将 folder 参数指定为 json 对象:{"id"="1156";"type"="Program"}
GET https://123-FOO-456.mktorest.com/rest/asset/v1/emails.json?folder={"id"="1156";"type"="Program"}
如果您的程序有内部文件夹,您必须使用该文件夹的 id 和 type 分别查询它们的内容。
内部文件夹的类型可以是 Folder 或 Program - 某些程序可能包含其他程序。
表单和登陆页面
也可以这样做获取程序内容的另一种方法是使用getFolderContentUsingGET
它仅返回资产的 ID 和类型,您必须单独请求每个资产的详细信息及其 ID:
GET https://123-FOO-456.mktorest.com/rest/asset/v1/folder/1290/content.json?type=Program
{
"success": true,
"warnings": [],
"errors": [],
"requestId": "12efa#15c4562480b",
"result": [
{
"type": "Folder",
"id": 517
},
{
"type": "Landing Page Form",
"id": 1580
},
{
"type": "Landing Page",
"id": 2305
},
{
"type": "Email",
"id": 3010
}
]
}
【讨论】: