回應對應
Marketo可以從JSON或XML翻譯webhook資料,並將值寫入潛在客戶欄位。 Marketo欄位引數一律使用欄位的SOAP API名稱。
每個webhook都可以有不限數量的回應對應。 若要新增或編輯對應,請在webhook的「回應對應」窗格中選取Edit:
回應對應會配對這些值:
- “Response Attribute”: XML或JSON檔案中所需屬性的路徑。
- 「Marketo欄位」: Marketo寫入回應屬性值的潛在客戶欄位。
若要透過Marketo回應對應存取屬性,其索引鍵只能包含英數字元、破折號(-)、底線(_)、冒號(:)和空格。
JSON對應
使用點標籤法和陣列標籤法存取JSON屬性。 Marketo陣列標籤法只接受整數,不接受字串。
若要從JSON檔案中擷取資料,請將回應型別設為JSON:
{ "foo":"bar"}
foo屬性位於JSON物件的第一層級。 在回應對應中使用其屬性name, foo:
下列範例包含陣列:
{
"profileId" : 1234,
"firstName" : "Jane",
"lastName" : "Doe",
"orders" : [
{
"orderId" : 5678,
"orderDate" : "2015-01-01",
"orderProductId" : "4982"
},
{
"orderId" : 5678,
"orderDate" : "2014-05-07",
"orderProductId" : "4982"
}
]
}
若要從orders陣列的第一個元素存取orderDate,請使用orders[0].orderDate。
XML對應
使用點標籤法(類似JSON對應)存取個別XML元素的值。 請參考此範例:
<?xml version="1.0" encoding="UTF-8"?>
<example>
<foo>bar</foo>
</example>
若要存取foo屬性,請使用example.foo。
在存取foo之前,請先參考範例專案。 對應必須參考屬性階層中的每個元素。
對於具有陣列的XML檔案,請考量以下範例:
<?xml version="1.0" encoding="UTF-8"?>
<elementList>
<element>
<foo>baz</foo>
</element>
<element>
<foo>bar</foo>
</element>
<element>
<foo>bar</foo>
</element>
</elementList>
父陣列為elementList。 每個子專案都包含foo屬性。 Marketo回應對應會將陣列參考為elementList.element,並透過elementList.element[i]存取其子系。
若要從elementList的第一個子系取得foo的值,請使用回應屬性elementList.element[0].foo。 此對應會將「baz」值傳回至指定欄位。
存取包含唯一和非唯一元素名稱的元素內的屬性會產生未定義的行為。 每個元素必須是單一屬性或陣列。 請勿混用不同型別。
類型
將屬性對應到欄位時,請確保webhook回應型別與目標欄位相容。 例如,Marketo不會將字串回應值寫入整數型別的欄位。 如需詳細資訊,請參閱欄位型別。