- 資源:Control
- 方法
資源:控制項
定義在服務期間採用的條件式行為。必須附加至 ServingConfig,才能在放送時納入考量。可執行的動作取決於 SolutionType。
| JSON 表示法 | 
|---|
| { "name": string, "displayName": string, "associatedServingConfigIds": [ string ], "solutionType": enum ( | 
| 欄位 | |
|---|---|
| name | 
 不可變動。完整名稱  | 
| displayName | 
 這是必要旗標,使用者可判讀的名稱。使用者介面檢視區塊中使用的 ID。 必須是 UTF-8 編碼的字串。長度上限為 128 個字元。否則會擲回 INVALID ARGUMENT 錯誤。 | 
| associatedServingConfigIds[] | 
 僅供輸出。這個控制項所連結的所有  | 
| solutionType | 
 這是必要旗標,不可變動。控制項所屬的解決方案。 必須與資源的類別相容。否則會擲回 INVALID ARGUMENT 錯誤。 | 
| useCases[] | 
 指定控制項的用途。影響可設定的條件欄位。僅適用於  | 
| conditions[] | 
 決定何時觸發相關聯的動作。 如要一律套用動作,請省略這項屬性。目前只能指定單一條件。否則會擲回 INVALID ARGUMENT 錯誤。 | 
| 聯集欄位  這是必要旗標, | |
| boostAction | 
 定義增幅類型控制項 | 
| filterAction | 
 定義篩選器類型控制項,目前建議功能不支援 | 
| redirectAction | 
 定義重新導向類型的控制項。 | 
| synonymsAction | 
 將一組字詞視為彼此的同義字。 | 
| promoteAction | 
 根據預先定義的觸發查詢,宣傳特定連結。 | 
BoostAction
調整傳回清單中產品的順序。
| JSON 表示法 | 
|---|
| { "boost": number, "filter": string, "dataStore": string, // Union field | 
| 欄位 | |
|---|---|
| boost | 
 增幅強度,應介於 [-1, 1] 之間。如果設為負值,即代表降低排名。預設值為 0.0 (無作業)。 | 
| filter | 
 這是必要旗標,指定要套用升幅的產品。 如未提供篩選器,系統會宣傳所有產品 (不執行任何作業)。語法文件:https://cloud.google.com/retail/docs/filter-and-order 最多 5000 個半形字元。否則會擲回 INVALID ARGUMENT 錯誤。 | 
| dataStore | 
 這是必要旗標,指定可使用這個控制項提高排名的資料儲存庫。完整資料儲存庫名稱,例如:projects/123/locations/global/collections/default_collection/dataStores/default_data_store | 
| 聯集欄位 boost_spec。常數值增幅或根據自訂排名增幅規格。boost_spec只能是下列其中一項: | |
| fixedBoost | 
 (選用步驟) 增幅強度,應介於 [-1, 1] 之間。如果設為負值,即代表降低排名。預設值為 0.0 (無作業)。 | 
| interpolationBoostSpec | 
 (選用步驟) 根據客戶定義的屬性值,為自訂排名設定複雜規格。 | 
InterpolationBoostSpec
根據顧客指定的屬性值自訂排序的規格。與上述簡單的 (條件、加成) 組合相比,這項功能提供更多控制選項,可自訂排名。
| JSON 表示法 | 
|---|
| { "fieldName": string, "attributeType": enum ( | 
| 欄位 | |
|---|---|
| fieldName | 
 (選用步驟) 系統會根據這個欄位的值決定加成金額。 | 
| attributeType | 
 (選用步驟) 用來決定加成金額的屬性類型。屬性值可從指定 fieldName 的欄位值衍生而來。如果是數值,則很簡單,也就是 attributeValue = numerical_field_value。不過,如果是新鮮度,attributeValue = (time.now() - datetime_field_value)。 | 
| interpolationType | 
 (選用步驟) 要套用的插補類型,用於連結下列控制點。 | 
| controlPoints[] | 
 (選用步驟) 用來定義曲線的控制點。單調函式 (透過上述 interpolationType 定義) 會通過這裡列出的控制點。 | 
AttributeType
要套用自訂排序的屬性(或函式)。
| 列舉 | |
|---|---|
| ATTRIBUTE_TYPE_UNSPECIFIED | 未指定的 AttributeType。 | 
| NUMERICAL | 系統會根據數值欄位的值,動態更新加成金額。在這種情況下,控制點的 attributeValue (x 值) 會是指定 boostAmount 的數值欄位實際值。 | 
| FRESHNESS | 如果是新鮮度用途,屬性值會是目前時間與指定 datetime 欄位中日期之間的時間長度。這個值的格式必須為 XSD dayTimeDuration值 (ISO 8601 時間長度值的受限子集)。此模式為:[nD][T[nH][nM][nS]]。例如:5D、3DT12H30M、T24H。 | 
InterpolationType
要套用的插補類型。預設值為線性 (分段線性)。
| 列舉 | |
|---|---|
| INTERPOLATION_TYPE_UNSPECIFIED | 未指定插補類型。在本例中,預設值為「線性」。 | 
| LINEAR | 系統會套用分段線性插值。 | 
ControlPoint
用來定義曲線的控制點。透過這些控制點定義的曲線只能單調遞增或遞減(可接受常數值)。
| JSON 表示法 | 
|---|
| { "attributeValue": string, "boostAmount": number } | 
| 欄位 | |
|---|---|
| attributeValue | 
 (選用步驟) 可以是下列任一值:1. 數值欄位值。2. 新鮮度時間長度規格:值必須採用 XSD  | 
| boostAmount | 
 (選用步驟) 如果 attributeValue 的評估結果為上述指定值,則分數的提升值介於 -1 到 1 之間。 | 
FilterAction
指定哪些產品可納入結果。使用與加成相同的篩選條件。
| JSON 表示法 | 
|---|
| { "filter": string, "dataStore": string } | 
| 欄位 | |
|---|---|
| filter | 
 這是必要旗標,要套用至相符條件結果的篩選器。 必要語法文件:https://cloud.google.com/retail/docs/filter-and-order。長度上限為 5,000 個半形字元。否則會擲回 INVALID ARGUMENT 錯誤。 | 
| dataStore | 
 這是必要旗標,指定可使用這個控制項篩選的文件所屬資料儲存庫。完整資料儲存庫名稱,例如:projects/123/locations/global/collections/default_collection/dataStores/default_data_store | 
RedirectAction
將購物者重新導向至提供的 URI。
| JSON 表示法 | 
|---|
| { "redirectUri": string } | 
| 欄位 | |
|---|---|
| redirectUri | 
 這是必要旗標,購物者將重新導向至此 URI。 這是必要旗標,URI 長度不得超過 2,000 個字元。否則會擲回 INVALID ARGUMENT 錯誤。 | 
SynonymsAction
建立一組互為同義詞的字詞。
舉例來說,「開心」也會視為「高興」,「高興」也會視為「開心」。
| JSON 表示法 | 
|---|
| { "synonyms": [ string ] } | 
| 欄位 | |
|---|---|
| synonyms[] | 
 定義一組同義詞。最多可指定 100 個同義字。至少須指定 2 個同義詞。否則會擲回 INVALID ARGUMENT 錯誤。 | 
PromoteAction
根據某些觸發查詢,宣傳特定連結。
範例:在搜尋 shoe 關鍵字時,宣傳鞋店連結。連結可以位於相關聯的資料儲存庫外部。
| JSON 表示法 | 
|---|
| {
  "dataStore": string,
  "searchLinkPromotion": {
    object ( | 
| 欄位 | |
|---|---|
| dataStore | 
 這是必要旗標,這個促銷活動所連結的資料儲存庫。 | 
| searchLinkPromotion | 
 這是必要旗標,附加至這項動作的宣傳活動。 | 
SearchLinkPromotion
宣傳活動原型包含 URI 和其他輔助資訊,可顯示宣傳活動。
| JSON 表示法 | 
|---|
| { "title": string, "uri": string, "document": string, "imageUri": string, "description": string, "enabled": boolean } | 
| 欄位 | |
|---|---|
| title | 
 這是必要旗標,促銷活動的名稱。長度上限:160 個半形字元。 | 
| uri | 
 (選用步驟) 使用者要宣傳的頁面網址。必須為網站搜尋設定。其他產業則為選填屬性。 | 
| document | 
 (選用步驟)  | 
| imageUri | 
 (選用步驟) 促銷活動縮圖網址。 | 
| description | 
 (選用步驟) 宣傳活動說明。長度上限:200 個半形字元。 | 
| enabled | 
 (選用步驟) 如果供應設定與附加促銷活動的控制項上層相關聯,系統就會傳回已啟用的促銷活動。 這個旗標僅適用於基本網站搜尋。 | 
SearchUseCase
定義 SolutionType 的進一步細分。具體來說,這項功能適用於 SOLUTION_TYPE_SEARCH。
| 列舉 | |
|---|---|
| SEARCH_USE_CASE_UNSPECIFIED | 未設定時使用的值。不會在 CSS 中發生。 | 
| SEARCH_USE_CASE_SEARCH | 搜尋用途。預期流量具有非空白的 query。 | 
| SEARCH_USE_CASE_BROWSE | 瀏覽用途。預期流量具有空白 query。 | 
條件
定義允許行為前要檢查的情況
| JSON 表示法 | 
|---|
| { "queryTerms": [ { object ( | 
| 欄位 | |
|---|---|
| queryTerms[] | 
 只搜尋要比對查詢的字詞清單。如果已設定  最多 10 個查詢字詞。 | 
| activeTimeRange[] | 
 指定條件生效的時間範圍。 最多 10 個時間範圍。 | 
| queryRegex | 
 (選用步驟) 查詢規則運算式,可比對整個搜尋查詢。如果已設定  | 
QueryTerm
搜尋要求查詢的比對工具
| JSON 表示法 | 
|---|
| { "value": string, "fullMatch": boolean } | 
| 欄位 | |
|---|---|
| value | 
 要比對的特定查詢值 必須是小寫,且必須是 UTF-8 編碼。如果 fullMatch 為 true,最多可有 3 個以空格分隔的字詞。不得為空字串。長度上限為 5,000 個半形字元。 | 
| fullMatch | 
 搜尋查詢是否需要與查詢字詞完全相符。 | 
TimeRange
用於時間相關條件。
| JSON 表示法 | 
|---|
| { "startTime": string, "endTime": string } | 
| 欄位 | |
|---|---|
| startTime | 
 時間範圍的開始時間。 範圍包含頭尾值。 使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如: | 
| endTime | 
 時間範圍的結束時間。 範圍包含頭尾值。必須是未來的時間。 使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如: | 
| 方法 | |
|---|---|
| 
 | 建立 Control。 | 
| 
 | 刪除控制項。 | 
| 
 | 取得 Control。 | 
| 
 | 依上層 DataStore列出所有控制項。 | 
| 
 | 更新控制項。 |