REST Resource: settings.searchapplications

資源:SearchApplication

SearchApplication

JSON 表示法
{
  "name": string,
  "displayName": string,
  "dataSourceRestrictions": [
    {
      object (DataSourceRestriction)
    }
  ],
  "sourceConfig": [
    {
      object (SourceConfig)
    }
  ],
  "scoringConfig": {
    object (ScoringConfig)
  },
  "defaultSortOptions": {
    object (SortOptions)
  },
  "defaultFacetOptions": [
    {
      object (FacetOptions)
    }
  ],
  "returnResultThumbnailUrls": boolean,
  "operationIds": [
    string
  ],
  "enableAuditLog": boolean,
  "queryInterpretationConfig": {
    object (QueryInterpretationConfig)
  }
}
欄位
name

string

搜尋應用程式名稱。

格式:searchapplications/{applicationId}。

displayName

string

搜尋應用程式的顯示名稱。長度上限為 300 個半形字元。

dataSourceRestrictions[]

object (DataSourceRestriction)

套用至設定的擷取。元素的數量上限為 10 個。

sourceConfig[]

object (SourceConfig)

dataSourceLimit 中指定的來源設定。

scoringConfig

object (ScoringConfig)

結果排名設定。

defaultSortOptions

object (SortOptions)

預設的搜尋結果排序選項

defaultFacetOptions[]

object (FacetOptions)

傳回 facet 結果的預設欄位。此處指定的來源也已納入上方的 dataSourceRestrictions 中。

returnResultThumbnailUrls

boolean

收到每個結果後,我們都應傳回縮圖的 URI (如適用)

operationIds[]

string

僅供輸出。目前針對這個結構定義執行的長時間執行作業 (LRO) ID。僅供輸出的欄位。

enableAuditLog

boolean

指出是否為查詢 API 中的搜尋應用程式要求啟用/關閉稽核記錄。

queryInterpretationConfig

object (QueryInterpretationConfig)

查詢解讀的預設選項

DataSourceRestriction

對資料來源的限制。

JSON 表示法
{
  "source": {
    object (Source)
  },
  "filterOptions": [
    {
      object (FilterOptions)
    }
  ]
}
欄位
source

object (Source)

限制來源。

filterOptions[]

object (FilterOptions)

限制結果的篩選器選項。如有多個篩選器,系統會在彙整前按照物件類型將篩選器分組。相同物件類型的篩選器會相互彙整,然後產生的運算式會分離。

元素的數量上限為 20 個。

注意:suggest API 目前僅支援少數篩選器:「objecttype」、「type」和「mimetype」目前無法使用結構定義專用篩選器來篩選建議。

來源

定義建議/搜尋 API 的來源。

JSON 表示法
{

  // Union field source can be only one of the following:
  "name": string,
  "predefinedSource": enum (Source.PredefinedSource)
  // End of list of possible types for union field source.
}
欄位

聯集欄位 source

source 只能採用下列其中一種設定:

name

string

Indexing API 建立索引內容的來源名稱。

predefinedSource

enum (Source.PredefinedSource)

Google Apps 的預先定義內容來源。

Source.PredefinedSource

預先定義的來源:

列舉
NONE
QUERY_HISTORY 提供使用者過去執行的查詢建議。只有在搭配建議 API 使用時才能使用。在查詢 API 中使用時,系統會忽略這個參數。
PERSON 推薦機構中的成員。只有在搭配建議 API 使用時才能使用。用於查詢 API 時會發生錯誤。
GOOGLE_DRIVE
GOOGLE_GMAIL
GOOGLE_SITES
GOOGLE_GROUPS
GOOGLE_CALENDAR
GOOGLE_KEEP

FilterOptions

要套用至查詢的篩選器選項。

JSON 表示法
{
  "objectType": string,
  "filter": {
    object (Filter)
  }
}
欄位
objectType

string

如果設定了 objectType,則只會傳回該類型的物件。這個名稱應與在結構定義定義中註冊的物件名稱相符。長度上限為 256 個半形字元。

filter

object (Filter)

用於限制搜尋的通用篩選器,例如 lang:ensite:xyz

篩選器

在查詢中以通用方式表示篩選器,可支援兩種方法:

1. 設定 ValueFilter。該名稱必須與資料來源結構定義中定義的業者名稱相符。

2. 設定 CompositeFilter。系統會使用邏輯運算子評估篩選器。頂層運算子只能是 AND 或 NOT。此外,也只能顯示在最頂層。OR 只能出現在頂層 AND 底下。

JSON 表示法
{

  // Union field filter can be only one of the following:
  "valueFilter": {
    object (Filter.ValueFilter)
  },
  "compositeFilter": {
    object (Filter.CompositeFilter)
  }
  // End of list of possible types for union field filter.
}
欄位

聯集欄位 filter

filter 只能採用下列其中一種設定:

valueFilter

object (Filter.ValueFilter)

compositeFilter

object (Filter.CompositeFilter)

Filter.ValueFilter

JSON 表示法
{
  "operatorName": string,
  "value": {
    object (Value)
  }
}
欄位
operatorName

string

套用至查詢的 operatorName,例如 price_greater_than。篩選器可同時用於資料來源結構定義中定義的兩種篩選器:

  1. operatorName,其中查詢會按照與值相符的屬性篩選結果。

  2. 結構定義中的 greaterThanOperatorNamelessThanOperatorName。此查詢會篩選大於或小於查詢所提供值之屬性值的結果。

value

object (Value)

要比較的值。

使用一般類型的單一值定義。

JSON 表示法
{

  // Union field value can be only one of the following:
  "stringValue": string,
  "integerValue": string,
  "doubleValue": number,
  "timestampValue": string,
  "booleanValue": boolean,
  "dateValue": {
    object (Date)
  }
  // End of list of possible types for union field value.
}
欄位
聯集欄位 value。指定屬性的值。value 只能是下列其中一項:
stringValue

string

integerValue

string (int64 format)

doubleValue

number

timestampValue

string (Timestamp format)

RFC3339 世界標準時間「Zulu」的時間戳記格式,解析度為奈秒,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

booleanValue

boolean

dateValue

object (Date)

Filter.CompositeFilter

JSON 表示法
{
  "logicOperator": enum (Filter.CompositeFilter.LogicOperator),
  "subFilters": [
    {
      object (Filter)
    }
  ]
}
欄位
logicOperator

enum (Filter.CompositeFilter.LogicOperator)

子篩選器的邏輯運算子。

subFilters[]

object (Filter)

子篩選器。

Filter.CompositeFilter.LogicOperator

列舉
AND 邏輯運算子,只能套用至子篩選器。
OR
NOT 「NOT」只能套用至單一子篩選器。

SourceConfig

處理 query.searchquery.suggest 要求時,來源的設定。

JSON 表示法
{
  "source": {
    object (Source)
  },
  "scoringConfig": {
    object (SourceScoringConfig)
  },
  "crowdingConfig": {
    object (SourceCrowdingConfig)
  }
}
欄位
source

object (Source)

使用此設定的來源。

scoringConfig

object (SourceScoringConfig)

來源的評分設定。

crowdingConfig

object (SourceCrowdingConfig)

來源的聚集設定。

SourceScoringConfig

設定評分設定。如此一來,就能修改特定來源的搜尋結果排名。

JSON 表示法
{
  "sourceImportance": enum (SourceScoringConfig.SourceImportance)
}
欄位
sourceImportance

enum (SourceScoringConfig.SourceImportance)

來源的重要性。

SourceScoringConfig.SourceImportance

來源的重要性,可用來表明是否應該優先考慮某個來源的排名 (相較於其他來源)。

列舉
DEFAULT
LOW
HIGH

SourceCrowdingConfig

設定搜尋結果的數量上限。「聚集」是指同一來源或主機的多項搜尋結果「群眾外」其他結果則會降低使用者搜尋品質。您可以設定條件,依來源減少重複結果,進而提升搜尋結果的品質,並增加來源多樣性。

JSON 表示法
{
  "numResults": integer,
  "numSuggestions": integer
}
欄位
numResults

integer

在結果網頁已用盡其他來源的結果的情況下,搜尋結果網頁中允許來自特定資料來源的結果數量上限。指定的值不得為負數。如果此值等於 0,則會使用預設值。如要停用聚集功能,請將值設為 100。

numSuggestions

integer

單一來源的建議數量上限。如果這個值小於或等於 0,就不會對結果設定任何限制。

ScoringConfig

處理 query.searchquery.suggest 要求時,來源的評分設定。

JSON 表示法
{
  "disableFreshness": boolean,
  "disablePersonalization": boolean
}
欄位
disableFreshness

boolean

是否使用即時性做為排名信號。根據預設,更新頻率會做為排名信號。請注意,管理員 UI 不提供這項設定。

disablePersonalization

boolean

是否提供個人化結果。根據預設,系統會使用個人信號提升成效。

SortOptions

JSON 表示法
{
  "operatorName": string,
  "sortOrder": enum (SortOptions.SortOrder)
}
欄位
operatorName

string

與要排序欄位相對應的運算子名稱。對應的屬性必須標示為 sortable

sortOrder

enum (SortOptions.SortOrder)

遞增是預設的排序順序

SortOptions.SortOrder

列舉
ASCENDING
DESCENDING

FacetOptions

指定傳回其 facet 結果的運算子。每個 sourceName/objectType/operatorName 組合都會有一個 FacetResult。

JSON 表示法
{
  "sourceName": string,
  "objectType": string,
  "operatorName": string,
  "numFacetBuckets": integer,
  "integerFacetingOptions": {
    object (IntegerFacetingOptions)
  }
}
欄位
sourceName

string

facet 的來源名稱。格式:datasources/{sourceId} 如果留空,系統會使用所有資料來源。

objectType

string

如果設定 objectType,則只有該類型的物件會用來計算 facet。如果空白,則所有物件都會用來計算 facet。

operatorName

string

為 facet 選擇的運算子名稱。@see cloudsearch.SchemaPropertyOptions

numFacetBuckets

integer

應針對此 facet 傳回的 facet 值區數量上限。預設值為 10。最大值為 100。

integerFacetingOptions

object (IntegerFacetingOptions)

如果設定,則會說明指定整數屬性的整數商情項目選項。結構定義中對應的整數屬性應標示為 isFacetable。傳回的值區數量至少為這個物件和 numFacetBuckets。

IntegerFacetingOptions

用於指定整數商情項目選項。

JSON 表示法
{
  "integerBuckets": [
    string
  ]
}
欄位
integerBuckets[]

string (Int64Value format)

指定整數值的值區必須嚴格以遞增順序排列。例如,如果提供的值是 (1,5,10,100),下列 facet 值區將轉換為 {<1, [1,5), [5-10), [10-100), >=100}。

QueryInterpretationConfig

解讀使用者查詢的預設選項。

JSON 表示法
{
  "forceVerbatimMode": boolean,
  "forceDisableSupplementalResults": boolean
}
欄位
forceVerbatimMode

boolean

啟用此旗標即可關閉所有內部最佳化功能,例如:自然語言 (NL) 解讀查詢、補充結果擷取,以及使用同義詞 (包含自訂) 的同義詞。如果此旗標設為 True,系統會優先採用在「查詢」層級設定的選項。如果預設值為 False,查詢層級旗標會為完整模式設定正確的解讀。

forceDisableSupplementalResults

boolean

設定這個標記即可停用補充結果擷取功能,在這裡設定旗標並不會擷取與特定搜尋應用程式相關聯的查詢補充結果。如果此旗標設為 True,系統會優先採用在「查詢」層級設定的選項。如為預設值 False,查詢層級旗標會為補充結果設定正確的解釋。

方法

create

建立搜尋應用程式。

delete

刪除搜尋應用程式。

get

取得指定的搜尋應用程式。

list

列出所有搜尋應用程式。

patch

更新搜尋應用程式。

reset

將搜尋應用程式重設為預設設定。

update

更新搜尋應用程式。