エッジのセグメント化
Edgeのセグメント化は、Adobe Experience Platformのセグメント定義をエッジ上で即座に評価する機能で、これにより、同じページや次のページのパーソナライゼーションのユースケースが可能になります。
はじめに
この開発者ガイドでは、エッジのセグメント化に関連する様々な Adobe Experience Platform サービスについての十分な知識が必要です。このチュートリアルを開始する前に、次のサービスのドキュメントを確認してください。
- Real-Time Customer Profile:複数のソースから集約されたデータに基づいて、統合された消費者プロファイルをリアルタイムで提供します。
- Adobe Experience Platform Segmentation Service:Real-Time Customer Profile データからオーディエンスを作成できます。
- Experience Data Model (XDM):Platform が、カスタマーエクスペリエンスデータを整理する際に使用する、標準化されたフレームワーク。
Experience Platform API エンドポイントへの呼び出しを正常に行うには、Platform API の基本を学ぶのガイドを読み、必要なヘッダーとサンプル API 呼び出しの読み方を確認してください。
エッジセグメント化のクエリタイプ query-types
エッジセグメント化を使用してセグメントを評価するには、次のガイドラインに従ってクエリを行う必要があります。
また、セグメントが、エッジ上でアクティブな結合ポリシーに結び付けられている 必要があります。 結合ポリシーの詳細については、結合ポリシーガイドを参照してください。
次のシナリオでは、セグメント定義はエッジセグメント化に対して有効に なりません。
- セグメント定義には、単一のイベントと
inSegment
イベントの組み合わせが含まれています。- ただし、
inSegment
イベントに含まれるセグメントがプロファイルのみの場合、セグメント定義はエッジセグメント化に対して有効に なります。
- ただし、
- セグメント定義では、時間制約の一部として「年を無視」を使用します。
エッジセグメント化で有効なすべてのセグメントの取得
/segment/definitions
エンドポイントにGETリクエストを行うことで、組織内でエッジセグメント化が有効になっているすべてのセグメントのリストを取得できます。
API 形式
エッジセグメント化が有効になっているセグメントを取得するには、リクエストパスにクエリパラメーター evaluationInfo.synchronous.enabled=true
を含める必要があります。
GET /segment/definitions?evaluationInfo.synchronous.enabled=true
リクエスト
curl -X GET \
'https://platform.adobe.io/data/core/ups/segment/definitions?evaluationInfo.synchronous.enabled=true' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
応答
応答が成功すると、エッジセグメント化が有効になっている、組織内のセグメントの配列が返されます。 返されるセグメント定義について詳しくは、セグメント定義エンドポイントガイドを参照してください。
{
"segments": [
{
"id": "15063cb-2da8-4851-a2e2-bf59ddd2f004",
"schema": {
"name": "_xdm.context.profile"
},
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "",
"sandboxName": "",
"type": "production",
"default": true
},
"name": " People who are NOT on their homepage ",
"expression": {
"type": "PQL",
"format": "pql/text",
"value": "select var1 from xEvent where var1._experience.analytics.endUser.firstWeb.webPageDetails.isHomePage = false"
},
"evaluationInfo": {
"batch": {
"enabled": false
},
"continuous": {
"enabled": false
},
"synchronous": {
"enabled": true
}
},
"creationTime": 1572029711000,
"updateEpoch": 1572029712000,
"updateTime": 1572029712000
},
{
"id": "f15063cb-2da8-4851-a2e2-bf59ddd2f004",
"schema": {
"name": "_xdm.context.profile"
},
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "",
"sandboxName": "",
"type": "production",
"default": true
},
"name": "Homepage_continuous",
"description": "People who are on their homepage - continuous",
"expression": {
"type": "PQL",
"format": "pql/text",
"value": "select var1 from xEvent where var1._experience.analytics.endUser.firstWeb.webPageDetails.isHomePage = true"
},
"evaluationInfo": {
"batch": {
"enabled": false
},
"continuous": {
"enabled": false
},
"synchronous": {
"enabled": true
}
},
"creationTime": 1572021085000,
"updateEpoch": 1572021086000,
"updateTime": 1572021086000
}
],
"page": {
"totalCount": 2,
"totalPages": 1,
"sortField": "creationTime",
"sort": "desc",
"pageSize": 2,
"limit": 100
},
"link": {}
}
エッジセグメント化が有効なセグメントの作成
エッジセグメント化が有効なセグメントを作成するには、上記のエッジセグメント化クエリタイプのいずれかと一致する /segment/definitions
エンドポイントに対して POST リクエストを行います。
API 形式
POST /segment/definitions
リクエスト
curl -X POST \
https://platform.adobe.io/data/core/ups/segment/definitions \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"schema": {
"name": "_xdm.context.profile"
},
"name": "Homepage_continuous",
"description": "People who are on their homepage - continuous",
"expression": {
"type": "PQL",
"format": "pql/text",
"value": "select var1 from xEvent where var1._experience.analytics.endUser.firstWeb.webPageDetails.isHomePage = true"
},
"evaluationInfo": {
"batch": {
"enabled": false
},
"continuous": {
"enabled": false
},
"synchronous": {
"enabled": true
}
}
}'
応答
リクエストが成功すると、エッジセグメント化が有効な新規作成のセグメント定義の詳細が応答として返されます。
{
"id": "f15063cb-2da8-4851-a2e2-bf59ddd2f004",
"schema": {
"name": "_xdm.context.profile"
},
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "{SANDBOX_ID}",
"sandboxName": "{SANDBOX_NAME}",
"type": "production",
"default": true
},
"name": "Homepage_continuous",
"description": "People who are on their homepage - continuous",
"expression": {
"type": "PQL",
"format": "pql/text",
"value": "chain(xEvent, timestamp, [X: WHAT(var1._experience.analytics.endUser.firstWeb.webPageDetails.isHomePage = "true")])"
},
"evaluationInfo": {
"batch": {
"enabled": false
},
"continuous": {
"enabled": false
},
"synchronous": {
"enabled": true
}
},
"creationTime": 1572021085000,
"updateEpoch": 1572021086000,
"updateTime": 1572021086000
}
次の手順
これで、エッジセグメント化が有効なセグメントの作成方法がわかったので、それらを使用して、同じページと次のページのパーソナライゼーションユースケースを有効にすることができます。
Adobe Experience Platform ユーザーインターフェイスを使用して同様のアクションを実行しセグメントを操作する方法については、セグメントビルダーユーザーガイドを参照してください。
付録
次の節では、エッジセグメント化に関するよくある質問を一覧表示します。
Edge Network 上でセグメントが使用可能になるまで、どれくらいかかりますか?
Edge Network 上でセグメントが使用可能になるまで、最大 1 時間かかります。