セグメント検索エンドポイント
セグメント検索は、様々なデータソースに含まれるフィールドを検索し、ほぼリアルタイムで返すために使用します。
このガイドには、セグメント検索をより深く理解するのに役立つ情報が記載されており、API を使用して基本的なアクションを実行するための API 呼び出し例が含まれています。
はじめに
このガイドで使用されるエンドポイントは、 Adobe Experience Platform Segmentation Service API. 続行する前に、 入門ガイド を参照してください。
はじめに節で説明している必須ヘッダーに加えて、セグメント検索エンドポイントへのすべてのリクエストには、次の追加ヘッダーが必要です。
- x-ups-search-version: "1.0"
複数の名前空間をまたいで検索
この検索エンドポイントは、様々な名前空間をまたいで検索するために使用でき、検索数の結果のリストを返します。 複数のパラメーターを使用する場合は、アンパサンド(&)で区切ります。
API 形式
GET /search/namespaces?schema.name={SCHEMA}
GET /search/namespaces?schema.name={SCHEMA}&s={SEARCH_TERM}
schema.name={SCHEMA}
_xdm.context.segmentdefinition
のみがサポートされています。s={SEARCH_TERM}
schema.name
に関連付けられているすべてのレコードが返されます。詳しくは、 付録 」と入力します。リクエスト
curl -X GET \
https://platform.adobe.io/data/core/ups/search/namespaces?schema.name=_xdm.context.segmentdefinition \
-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}' \
-H 'x-ups-search-version: 1.0'
応答
正常な応答は、HTTP ステータス 200 と次の情報を返します。
{
"namespaces": [
{
"namespace": "AAMTraits",
"displayName": "AAMTraits",
"count": 45
},
{
"namespace": "AAMSegments",
"displayName": "AAMSegment",
"count": 10
},
{
"namespace": "SegmentsAISegments",
"displayName": "SegmentSAISegment",
"count": 3
}
],
"totalCount": 3,
"status": {
"message": "Success"
}
}
個々のエンティティの検索
この検索エンドポイントは、指定した名前空間内のすべてのフルテキストインデックス付きオブジェクトのリストを取得するために使用できます。 複数のパラメーターを使用する場合は、アンパサンド(&)で区切ります。
API 形式
GET /search/entities?schema.name={SCHEMA}&namespace={NAMESPACE}
GET /search/entities?schema.name={SCHEMA}&namespace={NAMESPACE}&s={SEARCH_TERM}
GET /search/entities?schema.name={SCHEMA}&namespace={NAMESPACE}&entityId={ENTITY_ID}
schema.name={SCHEMA}
_xdm.context.segmentdefinition
のみがサポートされています。namespace={NAMESPACE}
s={SEARCH_TERM}
schema.name
に関連付けられているすべてのレコードが返されます。詳しくは、 付録 」と入力します。entityId={ENTITY_ID}
limit={LIMIT}
page={PAGE}
リクエスト
curl -X GET \
https://platform.adobe.io/data/core/ups/search/entities?schema.name=_xdm.context.segmentdefinition&namespace=AAMSegments \
-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}' \
-H 'x-ups-search-version: 1.0'
応答
正常な応答は、HTTP ステータス 200 と、検索クエリと一致する結果を返します。
{
"entities": [
{
"id": "1012667",
"base64EncodedSourceId": "RFVGamdydHpEdy01ZTE1ZGJlZGE4YjAxMzE4YWExZWY1MzM1",
"sourceId": "DUFjgrtzDw-5e15dbeda8b01318aa1ef533",
"isFolder": true,
"parentFolderId": "974139",
"name": "aam-47995 verification (100)"
},
{
"id": "14653311",
"base64EncodedSourceId": "REVGamduLVgzdy01ZTE2ZjRhNjc1ZDZhMDE4YThhZDM3NmY1",
"sourceId": "DEFjgn-X3w-5e16f4a675d6a018a8ad376f",
"isFolder": false,
"parentFolderId": "324050",
"name": "AAM - Heavy equipment",
"description": "AAM - Acme Equipment"
}
],
"page": {
"totalCount": 2,
"totalPages": 1,
"pageOffset": 0,
"pageSize": 10
},
"status": {
"message": "Success"
}
}
検索オブジェクトに関する構造情報の取得
この検索エンドポイントは、要求された検索オブジェクトに関する構造情報を取得するために使用できます。
API 形式
GET /search/taxonomy?schema.name={SCHEMA}&namespace={NAMESPACE}&entityId={ENTITY_ID}
schema.name={SCHEMA}
_xdm.context.segmentdefinition
のみがサポートされています。namespace={NAMESPACE}
entityId={ENTITY_ID}
リクエスト
curl -X GET \
https://platform.adobe.io/data/core/ups/search/taxonomy?schema.name=_xdm.context.segmentdefinition&namespace=AAMSegments&entityId=porsche11037 \
-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}' \
-H 'x-ups-search-version: 1.0'
応答
リクエストが成功した場合は、HTTP ステータス 200 と、リクエストされた検索オブジェクトに関する詳細な構造情報が返されます。
{
"taxonomy": [
{
"id": "0",
"base64EncodedSourceId": "RFVGZ01BLTVlNjgzMGZjMzk3YjQ1MThhYWExYTA4Zg2",
"name": "AAMTraits for Cars",
"parentFolderId": "root"
},
{
"id": "150561",
"base64EncodedSourceId": "RFVGamdpRk1BZy01ZTY4MzBmYzM5N2I0NTE4YWFhMWEwOGY1",
"name": "Fast Cars",
"parentFolderId": "carTraits"
},
{
"id": "porsche11037",
"base64EncodedSourceId": "REFGZ01CLTVlNjczMGZjMzk3YjQ1MThhZGIxYTA4Zg==",
"name": "Porsche",
"parentFolderId": "redCarsFolderId"
}
],
"status": {
"message": "Success"
}
}
次の手順
このガイドを読むと、セグメント検索の仕組みがより深く理解できます。
付録 appendix
以下の節では、検索用語の仕組みに関する追加情報を示します。 検索クエリは、次の方法で書き込まれます。 s={FieldName}:{SearchExpression}
. 例えば、AAMやという名前のセグメント定義を検索する場合は、 Platformを使用する場合は、次の検索クエリを使用します。 s=segmentName:AAM%20OR%20Platform
.
ベストプラクティスについては、上記の例のように、検索式をHTMLエンコードする必要があります。
検索フィールド search-fields
次の表に、検索クエリパラメーター内で検索可能なフィールドを示します。
検索式 search-expression
次の表に、セグメント検索 API を使用する際の検索クエリの仕組みに関する詳細を示します。
次の例は、非HTMLエンコード形式で、わかりやすく示しています。 ベストプラクティスについては、HTMLで検索式をエンコードしてください。
"hotel airport"~5
では、ドキュメント内で互いに 5 語以内に近接する「hotel」と「airport」という単語を見つけます。/a[0-9]+b$/
/[mh]otel/
と指定します。正規表現検索は、単一の単語に対して照合されます。クエリ構文に関する詳細なドキュメントについては、Lucene クエリ構文のドキュメントをお読みください。