區段搜尋端點

「區段搜尋」可用來搜尋各種資料來源所包含的欄位,並幾乎即時傳回這些欄位。

本指南提供相關資訊,以協助您進一步瞭解區段搜尋,並包含使用API執行基本動作的範例API呼叫。

快速入門

本指南中使用的端點是Adobe Experience Platform Segmentation Service API的一部分。 在繼續之前,請參閱快速入門手冊,以取得成功呼叫API所需的重要資訊,包括必要的標題和如何讀取範例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} (必要) 其中{SCHEMA}表示與搜索對象關聯的方案類值。目前僅支援_xdm.context.segmentdefinition
s={SEARCH_TERM} (可選) 其中{SEARCH_TERM}代表符合Microsoft實作的 Lucene搜尋語法的查詢。如果未指定搜尋詞,則會傳回與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: {IMS_ORG}' \
    -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} (必要) 其中{SCHEMA}包含與搜索對象關聯的方案類值。目前僅支援_xdm.context.segmentdefinition
namespace={NAMESPACE} (必要) 其中{NAMESPACE}包含您要在其中搜尋的命名空間。
s={SEARCH_TERM} (可選) 其中{SEARCH_TERM}包含符合Microsoft實作 Lucene搜尋語法的查詢。如果未指定搜尋詞,則會傳回與schema.name相關的所有記錄。 本檔案附錄中提供更詳細的說明。
entityId={ENTITY_ID} (選用) 將搜尋限制在指定資料夾內,指定為{ENTITY_ID}。
limit={LIMIT} (可選) 其中{LIMIT}代表要傳回的搜尋結果數。預設值為 50。
page={PAGE} (可選) 其中{PAGE}代表用於為所搜尋查詢結果編頁的頁碼。請注意,頁碼開始於​0

請求

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: {IMS_ORG}' \
    -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} (必要) 其中{SCHEMA}包含與搜索對象關聯的方案類值。目前僅支援_xdm.context.segmentdefinition
namespace={NAMESPACE} (必要) 其中{NAMESPACE}包含您要在其中搜尋的命名空間。
entityId={ENTITY_ID} (必要) 您要取得相關結構資訊的搜尋物件ID,以{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: {IMS_ORG}' \
    -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"
    }
}

後續步驟

閱讀本指南後,您現在可以進一步瞭解「區段搜尋」的運作方式。

附錄

以下各節提供搜尋詞如何運作的其他資訊。 搜索查詢的編寫方式如下:s={FieldName}:{SearchExpression}。 因此,例如,若要搜尋名為AAM或Platform的區段,請使用下列搜尋查詢:s=segmentName:AAM%20OR%20Platform

!![NOTE] 為獲得最佳實務,搜尋運算式應採用HTML編碼,如上例所示。

搜尋欄位

下表列出了可在搜索查詢參數中搜索的欄位。

欄位名稱 說明
folderId 具有指定搜索的資料夾ID的資料夾或資料夾。
folderLocation 具有指定搜索的資料夾位置的位置。
parentFolderId 具有指定搜尋之父資料夾ID的區段或資料夾。
segmentId 區段符合您指定搜尋的區段ID。
segmentName 區段會符合您指定搜尋的區段名稱。
segmentDescription 區段會符合您指定搜尋的區段說明。

搜尋運算式

下表列出使用區段搜尋API時搜尋查詢的運作方式。

!![NOTE] 以下範例以非HTML編碼格式顯示,以提高清晰度。為獲得最佳實務,HTML會為您的搜尋運算式編碼。

範例搜尋運算式 說明
foo 搜尋任何字詞。 如果在任何可搜尋的欄位中都找到"foo",則會傳回結果。
foo AND列 布爾式搜尋。 如果在任何可搜尋的欄位中都找到​"foo"和"bar"字詞,則會傳回結果。
foo OR列 布爾式搜尋。 如果在任何可搜尋的欄位中找到​​單字"foo"或單字"bar",則會傳回結果。
foo NOT欄 布爾式搜尋。 如果找到"foo"字詞,但在任何可搜尋欄位中找不到"bar"字詞,則會傳回結果。
名稱:foo AND列 布爾式搜尋。 如果在"name"欄位中找到​both "foo"和"bar"字詞,則會傳回結果。
run* 通配符搜索。 使用星號(*)符合0個或多個字元,這表示如果任何可搜尋欄位的內容包含以"run"開頭的字詞,則會傳回結果。 例如,如果出現"runs"、"running"、"runner"或"runt"等字詞,則會傳回結果。
小卡? 通配符搜索。 使用問號(?) 只匹配一個字元,這表示如果任何可搜尋欄位的內容以「cam」和其他字母開頭,則會傳回結果。 例如,如果出現"camp"或"cams"字樣,則會傳回結果,但如果出現"camera"或"campfire"字樣,則不會傳回結果。
"藍傘" 片語搜尋。 如果任何可搜尋欄位的內容包含完整字句「blue burmal」,則會傳回結果。
藍色~ 模糊搜索。 或者,您可在波狀符號(~)後加上0-2的數字,以指定編輯距離。 例如,"blue~1"會傳回"blue"、"blues"或"glue"。 模糊搜尋只能將​​套用至詞語,而非片語。 不過,您可以在片語中每個字詞的結尾附加波狀符號。 例如,"camping~ in~ the~ summer~"會與"camping in the summer"相符。
"酒店機場"~5 近距離搜尋。 此類搜尋用於尋找檔案中彼此接近的詞語。 例如,片語"hotel airport"~5會在檔案中找到5個字內的"hotel"和"airport"。
/a[0-9]+b$/ 規則運算式搜尋。 這種搜索類型根據正斜線"/"之間的內容查找匹配項,如RegExp類中所述。 例如,若要尋找包含"motel"或"hotel"的檔案,請指定/[mh]otel/。 規則運算式搜尋會與單一字詞比對。

有關查詢語法的更詳細文檔,請閱讀Lucene查詢語法文檔

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free