メールテンプレート
メールテンプレートは、Marketo の各新規メールの基本を形成します。HTML 置換によってメールをテンプレートからリンク解除できますが、メールは最初にテンプレートを基本にして作成する必要があります。テンプレートは、名前や説明などのメタデータを含む純粋な HTML ドキュメントとして Marketo で作成されます。コンテンツに関する制限はほとんどありませんが、テンプレートの HTML を有効にし、こちらで説明している要件に従って編集可能なセクションを 1 つ以上含める必要があります。
クエリ
メールテンプレートのクエリでは、アセットの標準パターンに従って、ID 別、名前別、参照による特定のフォルダーのクエリを実行できます。
ID 別
GET /rest/asset/v1/emailTemplate/{id}.json
{
"success": true,
"warnings": [ ],
"errors": [ ],
"requestId": "14f9e#14a12955df1",
"result": [
{
"id": 19,
"name": "aFgSxuZrBI",
"description": "fUMhVfIyVkhHzRolYzjGyWouTMfjXCPIAZxHMAEmszAjguVKDtbznEeqbqiDuNBzQoHwBJFdXiMzYiMlGUwtuklUhjGfJlDbhaTL",
"createdAt": "2014-11-14T02:41:26Z+0000",
"updatedAt": "2014-11-14T02:41:26Z+0000",
"folder": {
"type": "Folder",
"value": 15
},
"status": "Draft",
"workspace": "Default"
}
]
}
名前別
GET /rest/asset/v1/emailTemplate/byName.json?name=Test Template
{
"success": true,
"warnings": [ ],
"errors": [ ],
"requestId": "14f9e#14a12955df1",
"result": [
{
"id": 19,
"name": "aFgSxuZrBI",
"description": "fUMhVfIyVkhHzRolYzjGyWouTMfjXCPIAZxHMAEmszAjguVKDtbznEeqbqiDuNBzQoHwBJFdXiMzYiMlGUwtuklUhjGfJlDbhaTL",
"createdAt": "2014-11-14T02:41:26Z+0000",
"updatedAt": "2014-11-14T02:41:26Z+0000",
"folder": {
"type": "Folder",
"value": 15
},
"status": "Draft",
"workspace": "Default"
}
]
}
参照
GET /rest/asset/v1/emailTemplates.json
{
"success":true,
"warnings":[ ],
"errors":[ ],
"requestId":"33c4#14a1832b4a8",
"result":[
{
"id":18,
"name":"AAA0unit3CreateTestEmailTemplateName.2314673e-7bc2-47da-a1e8-66dfdd8a1f1d",
"description":"AssetAPI: getTemplates test",
"createdAt":"2014-11-03T19:52:58Z+0000",
"updatedAt":"2014-11-03T19:52:58Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
},
{
"id":177,
"name":"ABfRGutnwN",
"description":"HMmHkdTRrGaRpPakdgGKICxfMunCEWDUWiThgAbInfaBXxGxSFfjKQIwerngCHRlGTnAJhKPmwlXLcsjGPtWEiILGyeIJTNVHoHg",
"createdAt":"2014-11-20T19:31:06Z+0000",
"updatedAt":"2014-11-20T19:31:06Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
},
{
"id":148,
"name":"ADVHJBQLyw",
"description":null,
"createdAt":"2014-11-20T06:42:57Z+0000",
"updatedAt":"2014-11-20T06:42:57Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
},
{
"id":201,
"name":"AIpwuwiaqb",
"description":null,
"createdAt":"2014-11-25T20:49:06Z+0000",
"updatedAt":"2014-11-25T20:49:06Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
},
{
"id":240,
"name":"aqZGoAskEF",
"description":"uOMEhLpXOEWkwdZxkpcdDjTjKfokxuHEYHPVIVsADFIUEUobzIEaDiqFFxezwfovGfwjuPTJRxUmuHmGpyIklJdDdVosPJdyOVom",
"createdAt":"2014-11-26T21:11:56Z+0000",
"updatedAt":"2014-11-26T21:11:56Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
},
{
"id":199,
"name":"BAxnkVfLGi",
"description":"TzUMQKzKXdgukNCCcaiJHUWASceqlZswhCqDQFDFZULqzYkEiyKcwtQRzKERynReqtMHOhqjnhExCsZopyfzglmXAOjEJdxNURCX",
"createdAt":"2014-11-25T20:49:06Z+0000",
"updatedAt":"2014-11-25T20:49:06Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
},
{
"id":278,
"name":"bcBNCUIHrL",
"description":"UJEPYBRGTSYosZRnMnahMyVtdyxjRpzJMSXyncATKwcLlDAqDnSCFezGVsDZFpZwPzQvBlvaOZzOzBIsIAtqIerZhJFfpqMogoiB",
"createdAt":"2014-11-30T11:30:07Z+0000",
"updatedAt":"2014-11-30T11:30:07Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
}
]
}
レコード自体に対してクエリを実行すると、レコードに関するメタデータのみが返されます。コンテンツを取得するには、#content の節を参照してください。
作成と更新
テンプレートの作成や更新は非常に簡単です。各テンプレートのコンテンツは、HTML ドキュメントとして保存され、POST の multipart/form-data タイプを使用して Marketo に渡す必要があります。multipart および multipart/form-data の RFC で説明されている境界を含む適切な Content-Type ヘッダーを渡す必要があります。
テンプレートを作成するには、name、folder、content の 3 つのパラメーターを含める必要があります。オプションの description パラメーターを含めることができます。HTML ドキュメントはコンテンツパラメーターで渡されますが、このコンテンツパラメーターには、Content-Disposition ヘッダーの一部として従来のファイル名パラメーターも含める必要があります。
POST /rest/asset/v1/emailTemplates.json
Content-Type: multipart/form-data; boundary=mktoBoundary1480963323998
--mktoBoundary1480963323998
Content-Disposition: form-data; name="name"
Sample Email Template
--mktoBoundary1480963323998
Content-Disposition: form-data; name="folder"
{"id":15,"type":"Folder"}
--mktoBoundary1480963323998
Content-Disposition: form-data; name="content"; filename="testHTML.html"
Content-Type: text/html
<html>
<body>
<h1>TEST HTML</h1>
</body>
</html>
--mktoBoundary1480963323998
Content-Disposition: form-data; name="description"
Create email template using API
--mktoBoundary1480963323998--
{
"success": true,
"warnings": [ ],
"errors": [ ],
"requestId": "a99f#14e22b2b85e",
"result": [
{
"id": 1022,
"name": "Sample Email Template",
"description": "Create email template using API",
"createdAt": "2015-06-23T23:13:34Z+0000",
"updatedAt": "2015-06-23T23:13:34Z+0000",
"url": "https://app-abm.marketo.com/#ET1022B2ZN12",
"folder": {
"type": "Folder",
"value": 15,
"folderName": "Templates"
},
"status": "draft",
"workspace": "Default",
"version": 1
}
]
}
コンテンツの更新は、メールテンプレートの ID を必要とする個別のエンドポイントを使用して行います。このエンドポイントでは、本文内のコンテンツパラメーターの送信のみが許可されます。更新を行うと、コンテンツパラメーターに渡された内容によって、承認済みバージョンを更新する場合は新しいドラフトのメールの既存のコンテンツが完全に置き換えられ、アセットがドラフトのみの状態の場合は現在のドラフトが置き換えられます。
POST /rest/asset/v1/emailTemplate/{id}/content.json
Content-Type: multipart/form-data; boundary=mktoBoundaryEiJFFFPFKK2WovsT
--mktoBoundaryEiJFFFPFKK2WovsT
Content-Disposition: form-data; name="content"; filename="testHTML2.html"
Content-Type: text/html
<html>
<body>
<h1>TEST HTML WITH UPDATE</h1>
<div class="mktEditable"></div>
</body>
</html>
--mktoBoundaryEiJFFFPFKK2WovsT--
{
"success": true,
"warnings": [ ],
"errors": [ ],
"requestId": "f8e2#158d0ae24f8",
"result":[
{
"id":1022,
"status":"Draft",
"content":"<html>\n<body>\n<h1>TEST HTML WITH UPDATE</h1>\n<div class="mktEditable"></div>\n</body>\n</html>"
}
]
}
メタデータの更新
テンプレートのメタデータ、名前、説明を更新するには、コンテンツを更新する場合と同じエンドポイントを使用できますが、代わりに、名前と説明のパラメーターを含む application/x-www-url-formencoded POST を渡します。
POST /rest/asset/v1/emailTemplate/{id}.json
Content-Type: application/x-www-form-urlencoded
description=Updated description&name=New Name
{
"success": true,
"warnings": [ ],
"errors": [ ],
"requestId": "17ca5#14a12ab900a",
"result": [
{
"id": 19,
"name": "New Name",
"description": "Updated description",
"createdAt": "2014-11-14T02:41:26Z+0000",
"updatedAt": "2014-11-14T02:41:26Z+0000",
"folder": {
"type": "Folder",
"value": 15
},
"status": "Draft",
"workspace": "Default"
}
]
}
承認
メールテンプレートは、アセットレコードの承認の標準パターンに従います。それぞれのエンドポイントを通じて、メールテンプレートのドラフトを承認したり、承認済みバージョンを未承認にしたり、既存のドラフトを破棄したりできます。
承認
承認エンドポイントを呼び出すと、メールは Marketo メールのルールに対して検証されます。メールを承認する前に、送信者名、送信元メール、返信先メール、件名を入力する必要があります。
POST /rest/asset/v1/emailTemplate/{id}/approveDraft.json
{
"success":true,
"warnings":[ ],
"errors":[ ],
"requestId":"abe2#14a1832a97d",
"result":[
{
"id":338,
"name":"lvAVYMZqPS",
"description":"fZLJQSJRvnYbjGTUpIHHqDOuQgQzXQcWIXoOUPwrVLdMHKcbRqwLoSLkWZTUmaMiCIJSfQiufnnrgITUIqjuAPBLpmliiKuIUFYG",
"createdAt":"2014-12-05T02:06:21Z+0000",
"updatedAt":"2014-12-05T02:06:21Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Approved",
"workspace":"Default"
}
]
}
未承認
未承認エンドポイントは、承認済みテンプレートに対してのみ使用できます。
POST /rest/asset/v1/emailTemplate/{id}/unapprove.json
{
"success":true,
"warnings":[ ],
"errors":[ ],
"requestId":"17bfa#14a1832b3c4",
"result":[
{
"id":344,
"name":"LkilkvKrkp",
"description":"yAyUEXuWMtdhpODUmnCkGjpBcyEKnYucxaSoTyYeQzyNbYanxCXWPOzwiIWmeXPUwjfGAUmgnxlhgOPluVqwNittuvxJmNTaHxYM",
"createdAt":"2014-12-05T02:06:23Z+0000",
"updatedAt":"2014-12-05T02:06:23Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
}
]
}
破棄
承認済みメールを更新すると、テンプレートのドラフトバージョンが作成されます。
POST /rest/asset/v1/emailTemplate/{id}/discardDraft.json
{
"success":true,
"warnings":[ ],
"errors":[ ],
"requestId":"17bfa#14a1832b3c4",
"result":[
{
"id":344,
"name":"LkilkvKrkp",
"description":"yAyUEXuWMtdhpODUmnCkGjpBcyEKnYucxaSoTyYeQzyNbYanxCXWPOzwiIWmeXPUwjfGAUmgnxlhgOPluVqwNittuvxJmNTaHxYM",
"createdAt":"2014-12-05T02:06:23Z+0000",
"updatedAt":"2014-12-05T02:06:23Z+0000",
"folder":{
"type":"Folder",
"value":15
},
"status":"Draft",
"workspace":"Default"
}
]
}
削除
POST /rest/asset/v1/emailTemplate/{id}/delete.json
{
"success":true,
"warnings":[ ],
"errors":[ ],
"requestId":"15cef#149d3de83db",
"result":[
{
"id":12
}
]
}
複製
Marketo には、メールテンプレートを複製する簡単な方法が用意されています。作成とは異なり、このタイプのリクエストは application/x-www-url-formencoded POST を使用して行われ、name とfolder の 2 つの必須パラメーターおよび ID とタイプを含む埋め込み JSON オブジェクトを受け取ります。description もオプションのパラメーターです。
POST /rest/asset/v1/emailTemplate/{id}/clone.json
Content-Type: application/x-www-form-urlencoded
name=Sample Template 01 - deverly&folder={"id":12,"type":"Folder"}&description=This is a sample template
{
"success": true,
"warnings": [],
"errors": [],
"requestId": "905e#14e22c693f8",
"result": [
{
"id": 1024,
"name": "Sample Template 01 - deverly",
"description": "This is a sample template",
"createdAt": "2015-06-23T23:35:16Z+0000",
"updatedAt": "2015-06-23T23:35:16Z+0000",
"url": "https://app-abm.marketo.com/#ET1024B2ZN12",
"folder": {
"type": "Folder",
"value": 12,
"folderName": "Templates"
},
"status": "draft",
"workspace": "Default"
}
]
}
メールの依存関係のクエリ
使用されるメールテンプレートを取得エンドポイントを使用して、特定のメールテンプレートに依存するメールのリストを取得します。id
パスパラメーターは、親メールテンプレートを指定します。
2 つのオプションのパラメーターがあります。maxReturn
は結果の数を制限する整数(デフォルトは 20、最大は 200)で、offset
は大きな結果セットを読み取るために maxReturn
と併用できる整数(デフォルトは 0)です。
GET /rest/asset/v1/emailTemplates/{id}/usedBy.json
{
"success": true,
"errors": [],
"requestId": "18b0#16fa3344169",
"warnings": [],
"result": [
{
"id": 1022,
"name": "EmailPr.Email2",
"type": "Email",
"status": "approved",
"updatedAt": "2019-12-02T00:42:21Z+0000"
},
{
"id": 1023,
"name": "Default.Email1.email1",
"type": "Email",
"status": "approved",
"updatedAt": "2019-12-02T00:42:21Z+0000"
},
{
"id": 1025,
"name": "Defa.E1",
"type": "Email",
"status": "draft",
"updatedAt": "2019-12-02T00:42:21Z+0000"
},
{
"id": 1052,
"name": "Email v1 Program.Email v1 Email",
"type": "Email",
"status": "draft",
"updatedAt": "2019-06-07T20:07:16Z+0000"
}
]
}