この関数を使用すると、複数の mbox を渡すことで複数のオファーを取得できます。さらに、アクティブなアクティビティのすべてのビュー向けに複数のオファーを取得できます。
この関数は at.js 2.x で導入されました。この関数は at.js バージョン 1.x では使用できません。x.
キー | タイプ | 必須? | 説明 |
---|---|---|---|
consumerId |
文字列 | × | 指定しない場合、デフォルト値はクライアントのグローバル mbox です。このキーは、A4T 統合に使用される補足的なデータ ID(SDID) を生成するために使用されます。 を使用する場合 次の場合 |
decisioningMethod |
文字列 | × | "server-side"、"on-device"、"hybrid" |
request |
オブジェクト | ○ | 下の「リクエスト」の表を参照してください。 |
timeout |
数値 | × | リクエストのタイムアウト。指定しない場合、at.js のデフォルトのタイムアウトが使用されます。 |
詳しくは、 Delivery API ドキュメント を参照してください。
フィールド名 | 必須? | 制限事項 | 説明 |
---|---|---|---|
request > id | × | tntId 、thirdPartyId 、または marketingCloudVisitorId のいずれか 1 つが必須です。 |
|
Request > id > thirdPartyId | × | 最大サイズ = 128 | |
Request > experienceCloud | × | ||
Request > experienceCloud > analytics | × | Adobe Analytics の統合 | |
Request > experienceCloud > analytics > logging | × | 以下をページに実装する必要があります。
|
次の値がサポートされています。 client_side:指定した場合、に送信するために使用される必要がある呼び出し元に分析ペイロードが返されます Adobe Analytics 経由 Data Insertion API. server_sideTargetAnalytics:これはデフォルト値で、 および バックエンドが SDID を使用して、レポート処理のために呼び出しを共にスティッチします。 |
Request > prefetch | × | ||
Request > prefetch > views | × | 最大数 50。 名前は空白にはできません. 名前の長さ 値の長さ 名前は「profile」で始まれません。 使用できない名前:「orderId」、「orderTotal」、「productPurchasedId」。 |
アクティブなアクティビティで関連するビューを取得するために使用するパラメーターを渡します。 |
Request > prefetch > views > profileParameters | × | 最大数 = 50. 名前は空白にはできません. 名前の長さ 値の長さ 文字列値のみを受け入れます。 名前は「profile」で始まれません。 |
アクティブなアクティビティで関連するビューを取得するために使用するプロファイルパラメーターを渡します。 |
Request > prefetch > views > product | × | ||
Request > prefetch > views > product -> id | × | 空白にはできません。 最大サイズ= 128。 |
アクティブなアクティビティで関連するビューを取得するために使用する製品 ID を渡します。 |
Request > prefetch > views > product > categoryId | × | 空白にはできません。 最大サイズ= 128。 |
アクティビティ内の関連するビューを取得するために使用する製品カテゴリ ID を渡します。 |
Request > prefetch > views > order | × | ||
Request > prefetch > views > order > id | × | 最大長 = 250 | アクティブなアクティビティで関連するビューを取得するために使用する注文 ID を渡します。 |
Request > prefetch > views > order > total | × | 合計 >= 0 |
アクティブなアクティビティで関連するビューを取得するために使用する注文の合計を渡します。 |
Request > prefetch > views > order > purchasedProductIds | × | 空白の値はありません。 各値の最大長は 50 です。 コンマ区切りで連結されます。 製品 ID の合計の長さ |
アクティブなアクティビティで関連するビューを取得するために使用する 購入製品の ID を渡します。 |
Request > execute | × | ||
Request > execute > pageLoad | × | ||
Request > execute > pageLoad > parameters | × | 最大数 50。 名前は空白にはできません. 名前の長さ 値の長さ 文字列値のみを受け入れます。 名前は「profile」で始まれません。 使用できない名前:「orderId」、「orderTotal」、「productPurchasedId」。 |
ページ読み込み時に、指定されたパラメーターを使用してオファーを取得します。 |
Request > execute > pageLoad > profileParameters | × | 最大数 50。 名前は空白にはできません. 名前の長さ 値の長さ 名前は「profile」で始まれません。 文字列値のみを受け入れます。 |
ページ読み込み時に、指定されたプロファイルパラメーターを使用してオファーを取得します。 |
Request > execute > pageLoad > product | × | ||
Request > execute > pageLoad > product -> id | × | 空白にはできません。 最大サイズ = 128. |
ページ読み込み時に、指定された製品 ID を使用してオファーを取得します。 |
Request > execute > pageLoad > product > categoryId | × | 空白にはできません。 最大サイズ = 128. |
ページ読み込み時に、指定された製品カテゴリー ID を使用してオファーを取得します。 |
Request > execute > pageLoad > order | × | ||
Request > execute > pageLoad > order > id | × | 最大長 = 250 | ページ読み込み時に、指定された注文 ID を使用してオファーを取得します。 |
Request > execute > pageLoad > order > total | × | >= 0 |
ページ読み込み時に、指定された注文の合計を使用してオファーを取得します。 |
Request > execute > pageLoad > order > purchasedProductIds | × | 空白の値はありません。 各値の最大長は 50 です。 コンマ区切りで連結されます。 製品 ID の合計の長さ |
ページ読み込み時に、指定された購入 ID を使用してオファーを取得します。 |
Request > execute > mboxes | × | 最大サイズ = 50. null 要素はありません。 |
|
Request > execute > mboxes>mbox | ○ | 空白にはできません。 「 —clicked」サフィックスはありません。 最大サイズ = 250. 使用できる文字: `'-, ./=:;&!@#$%^&*()+ |
?~[]{}'` |
Request > execute > mboxes>mbox>index | ○ | null ではありません。 ユニーク.
|
注意: インデックスは、mbox が処理される順序を表すものではありません。複数のリージョナル mbox を持つ Web ページと同様、mbox が処理される順序は指定できません。 |
Request > execute > mboxes > mbox > parameters | × | 最大数= 50。 名前は空白にはできません. 名前の長さ 文字列値のみを受け入れます。 値の長さ 名前は「profile」で始まれません。 使用できない名前:「orderId」、「orderTotal」、「productPurchasedId」。 |
指定されたパラメーターを使用して特定の mbox のオファーを取得します。 |
Request > execute > mboxes>mbox>profileParameters | × | 最大数= 50。 名前は空白にはできません. 名前の長さ 文字列値のみを受け入れます。 値の長さ 名前は「profile」で始まれません。 |
指定されたプロファイルパラメーターを使用して特定の mbox のオファーを取得します。 |
Request > execute > mboxes>mbox > product | × | ||
Request > execute > mboxes > mbox > product > id | × | 空白にはできません。 最大サイズ = 128. |
指定された製品 ID を使用して特定の mbox のオファーを取得します。 |
Request > execute > mboxes > mbox > product > categoryId | × | 空白にはできません。 最大サイズ = 128. |
指定された製品カテゴリー ID を使用して特定の mbox のオファーを取得します。 |
Request > execute > mboxes > mbox > order | × | ||
Request > execute > mboxes>mbox > order > id | × | 最大長 = 250 | 指定された注文 ID を持つ特定の mbox のオファーを取得します。 |
Request > execute > mboxes > mbox > order > total | × | >= 0 |
指定された注文合計を持つ特定の mbox のオファーを取得します。 |
Request > execute > mboxes > mbox > order > purchasedProductIds | × | 空白の値はありません。 各値の最大長= 50。 コンマ区切りで連結されます。 製品 ID の合計の長さ |
指定された注文で購入された製品 ID を持つ特定の mbox のオファーを取得します。 |
adobe.target.getOffers({
request: {
prefetch: {
views: [{}]
}
}
});
adobe.target.getOffers({
decisioningMethod:"on-device",
request: {
execute: {
mboxes: [
{
index: 0,
name: "homepage"
}
]
}
}
});
adobe.target.getOffers({
request: {
"prefetch": {
"views": [
{
"parameters": {
"ad": "1"
},
"profileParameters": {
"age": 23
}
}
]
}
}
});
adobe.target.getOffers({
request: {
execute: {
mboxes: [
{
index: 0,
name: "first-mbox"
},
{
index: 1,
name: "second-mbox",
parameters: {
a: 1
},
profileParameters: {
b: 2
}
}
]
}
}
});
adobe.target.getOffers({
request: {
experienceCloud: {
analytics: {
logging: "client_side"
}
},
prefetch: {
mboxes: [{
index: 0,
name: "a1-serverside-xt"
}]
}
}
})
.then(console.log)
応答:
{
"prefetch": {
"mboxes": [{
"index": 0,
"name": "a1-serverside-xt",
"options": [{
"content": "<img src=\"http://s7d2.scene7.com/is/image/TargetAdobeTargetMobile/L4242-xt-usa?tm=1490025518668&fit=constrain&hei=491&wid=980&fmt=png-alpha\"/>",
"type": "html",
"eventToken": "n/K05qdH0MxsiyH4gX05/2qipfsIHvVzTQxHolz2IpSCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==",
"responseTokens": {
"profile.memberlevel": "0",
"geo.city": "bucharest",
"activity.id": "167169",
"experience.name": "USA Experience",
"geo.country": "romania"
}
}],
"analytics": {
"payload": {
"pe": "tnt",
"tnta": "167169:0:0|0|100,167169:0:0|2|100,167169:0:0|1|100"
}
}
}]
}
}
ペイロードは次の場所に転送できます: Adobe Analytics 経由 Data Insertion API.
at.js 2.x を使用すると、getOffers()
API を使用して複数の mbox を取得できます。複数の mbox のデータを取得して、applyOffers()
CSS セレクターによって識別されるさまざまな場所で、データをレンダリングすることもできます。
次の例は、at.js 2.x を実装した単純な HTML ページを示しています。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>at.js 2.x, multiple selectors and multiple mboxes</title>
<script src="at.js"></script>
</head>
<body>
<div id="container1">Default content 1</div>
<div id="container2">Default content 2</div>
<div id="container3">Default content 3</div>
</body>
</html>
Target から受け取ったコンテンツを介して変更したい 3 つのコンテナがあるとします。3 つの mbox に対して 1 つのリクエストを作成し、それぞれの mbox に、それぞれのコンテナにレンダリングするためのコンテンツを含めることができます。
リクエストおよびレンダリングコードは次の例のようになります。
adobe.target.getOffers({
request: {
prefetch: {
mboxes: [
{
index: 0,
name: "mbox1"
},
{
index: 1,
name: "mbox2"
},
{
index: 2,
name: "mbox3"
}
]
}
}
})
.then(response => {
// get all mboxes from response
const mboxes = response.prefetch.mboxes;
let count = 1;
mboxes.forEach(el => {
adobe.target.applyOffers({
selector: "#container" + count,
response: {
prefetch: {
mboxes: [el]
}
}
});
count += 1;
});
});
request > prefetch > mboxes
セクションでは、3 つの異なる mbox があります。リクエストが正常に完了した場合は、それぞれの mbox に対する応答を response > prefetch > mboxes
から受信します。レスポンスとレンダリングに使用する場所が決まったら、applyOffers()
を呼び出して Target から取得したコンテンツをレンダリングできます。この例では、次のマッピングがあります。
この例では、count 変数を使用して CSS セレクターを作成します。実際のシナリオでは、CSS セレクターと mbox との異なるマッピングを使用できます。
この例では prefetch > mboxes
を使用していますが、execute > mboxes
を使用することもできます。getOffers()
でプリフェッチを使用する場合は、applyOffers()
呼び出しでもプリフェッチを使用する必要があります。
次の例は、 getOffers() を at.js 2.x
adobe.target.getOffers({
request: {
execute: {
pageLoad: {
parameters: {}
}
}
}
});