JSON オファーの作成
Form-Based Experience Composer で使用する JSON オファーを Adobe Target の Offer Library で作成します。
JSON オファーをフォームベースのアクティビティで使用すると、SPA フレームワークまたはサーバーサイド統合で使用するために JSON 形式でオファーを送信する際に Target ーザー決定が必要になるユースケースを可能にできます。
JSON の考慮事項
JSON オファーを使用する際は次の点を考慮してください。
- JSON オファーは現在、A/B Test、Automated Personalization (AP)および Experience Targeting (XT)アクティビティでのみ使用できます。
- JSON オファーは、 フォームベースのアクティビティでのみ使用できます。
- JSON オファーは、 サーバーサイド API および Mobile Node.js、Java、.NET、Python SDK を使用している場合に直接取得できます。
- ブラウザーでは、JSON オファーは、at.js 1.2.3 (またはそれ以降)経由でのみ取得でき、
setJson
アクションを使用してアクションをフィルタリングすることで getOffer ()を使用できます。 - JSON オファーは、文字列ではなくネイティブの JSON オブジェクトとして配信されます。これらのオブジェクトを利用する際に、オブジェクトを文字列として処理し、JSON オブジェクトに変換する必要はなくなりました。
- JSON オファーはビジュアルオファーではないので、他のオファー(HTML オファーなど)とは異なり自動的に適用されることはありません。開発者は、getOffer ()を使用してオファーを明示的に取得するコードを記述する必要があります。
JSON オファーの作成 section_BB9C72D59DEA4EFB97A906AE7569AD7A
-
Offers/Code Offers をクリックします。
-
Create/JSON Offer をクリックします。
-
オファー名を入力します。
-
Code ボックスに JSON コードを入力または貼り付けます。
-
Save をクリックします。
JSON の例 section_A54F7BB2B55D4B7ABCD5002E0C72D8C9
JSON オファーは、 フォームベースの Experience Composer を使用して作成されたアクティビティでのみサポートされます。 現在、JSON オファーを使用できる唯一の方法は、直接の API/SDK 呼び出しを介することです。
次に例を示します。
adobe.target.getOffer({
mbox: "some-mbox",
success: function(actions) {
console.log('Success', actions);
},
error: function(status, error) {
console.log('Error', status, error);
}
});
success コールバックに渡すアクションは、オブジェクトの配列です。次のコンテンツを含む単一の JSON オファーがあるとします。
{
"demo": {"a": 1, "b": 2}
}
アクション配列の構造は次のとおりです。
[
{
action: "setJson",
content: [{
"demo": {"a": 1, "b": 2}
}]
}
]
JSON オファーを抽出するには、アクションを反復処理し、setJson
アクションを含むアクションを見つけて、コンテンツ配列を反復処理します。
ユースケース section_85B07907B51A43239C8E3498EF58B1E5
次の JSON オファーが Web ページに配信されるとします。
{
"_id": "5a65d24d8fafc966921e9169",
"index": 0,
"guid": "7c006504-c6f7-468d-a46f-f72531ea454c",
"isActive": true,
"balance": "$2,075.06",
"picture": "https://placehold.it/32x32",
"tags": [
"esse",
"commodo",
"excepteur"
],
"friends": [
{
"id": 0,
"name": "Carla Lyons"
},
{
"id": 1,
"name": "Ollie Mooney"
}
],
"greeting": "Hello, Stephenson Fernandez! You have 4 unread messages.",
"favoriteFruit": "strawberry"
}
次のコードは、「greeting」属性にアクセスする方法を示しています。
adobe.target.getOffer({
"mbox": "name_of_mbox",
"params": {},
"success": function(offer) {
console.log(offer[0].content[0].greeting);
},
"error": function(status, error) {
console.log('Error', status, error);
}
});
Real-time CDP プロファイル属性を使用した JSON オファーの例
Real-time CDP プロファイル属性は、HTMLオファーと JSON オファーで使用するために Target と共有できます。
詳しくは、Real-time CDP プロファイル属性の Target との共有を参照してください。
JSON オファータイプによるオファーのフィルタリング section_52533555BCE6420C8A95EB4EB8907BDE
「Type」ドロップダウンリストをクリックし、「JSON」チェックボックスを選択すると、JSON オファータイプで Offers ライブラリをフィルタリングできます。