Method: indexing.datasources.items.push

將項目推送至佇列,以便日後進行輪詢和更新。

這個 API 需要管理員或服務帳戶才能執行。系統會使用對應資料來源中已加入白名單的服務帳戶。

HTTP 要求

POST https://cloudsearch.googleapis.com/v1/indexing/{item.name=datasources/*/items/*}:push

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
item.name

string

要推送至索引佇列的 item 名稱。

格式:datasources/{sourceId}/items/{ID}

這是必填欄位。長度上限為 1536 個半形字元。

要求主體

要求主體的資料會採用以下結構:

JSON 表示法
{
  "item": {
    "name": string,
    "type": enum (PushItem.Type),
    "metadataHash": string,
    "structuredDataHash": string,
    "contentHash": string,
    "payload": string,
    "queue": string,
    "repositoryError": {
      "type": enum (RepositoryError.Type),
      "httpStatusCode": integer,
      "errorMessage": string
    }
  },
  "connectorName": string,
  "debugOptions": {
    object (DebugOptions)
  }
}
欄位
item.type

enum (PushItem.Type)

定義推送行為的推送作業類型。

item.metadataHash

string

根據存放區計算的項目中繼資料雜湊。如果指定了這項屬性,系統會根據這項屬性決定如何修改項目狀態。設定這個欄位和 type 欄位會導致引數錯誤。長度上限為 2048 個半形字元。

item.structuredDataHash

string

根據存放區計算的項目結構化資料雜湊。如果指定了這項屬性,系統會根據這項屬性決定如何修改項目狀態。設定這個欄位和 type 欄位會導致引數錯誤。長度上限為 2048 個半形字元。

item.contentHash

string

根據存放區計算的項目內容雜湊。如果指定了這項屬性,系統會根據這項屬性決定如何修改項目狀態。設定這個欄位和 type 欄位會導致引數錯誤。長度上限為 2048 個半形字元。

item.payload

string (bytes format)

為連接器提供其他文件狀態資訊,例如其他存放區 ID 和其他中繼資料。長度上限為 8192 個位元組。

Base64 編碼字串。

item.queue

string

此項目所屬的佇列。如未指定這個欄位,系統會選擇 default 佇列。長度上限為 512 個半形字元。

item.repositoryError

object (RepositoryError)

填入這個欄位,以便儲存連接器或存放區的錯誤詳細資料。這項資訊會顯示在管理控制台中。只有在 typeREPOSITORY_ERROR 時,才能填入這個欄位。

connectorName

string

發出這項呼叫的連接器名稱。

格式:datasources/{sourceId}/connectors/{ID}

debugOptions

object (DebugOptions)

常見的偵錯選項。

回應主體

如果成功,回應主體會包含 Item 的執行例項。

授權範圍

需要下列其中一種 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud_search.indexing
  • https://www.googleapis.com/auth/cloud_search

詳情請參閱授權指南

PushItem

代表要推送至索引佇列的項目。

JSON 表示法
{
  "name": string,
  "type": enum (PushItem.Type),
  "metadataHash": string,
  "structuredDataHash": string,
  "contentHash": string,
  "payload": string,
  "queue": string,
  "repositoryError": {
    object (RepositoryError)
  }
}
欄位
name

string

要推送至索引佇列的 item 名稱。

格式:datasources/{sourceId}/items/{ID}

這是必填欄位。長度上限為 1536 個半形字元。

type

enum (PushItem.Type)

定義推送行為的推送作業類型。

metadataHash

string

根據存放區計算的項目中繼資料雜湊。如果指定了這項屬性,系統會根據這項屬性決定如何修改項目狀態。設定此欄位和 type 欄位會導致引數錯誤。長度上限為 2048 個半形字元。

structuredDataHash

string

根據存放區計算的項目結構化資料雜湊。如果指定了這項屬性,系統會根據這項屬性決定如何修改項目狀態。設定這個欄位和 type 欄位會導致引數錯誤。長度上限為 2048 個半形字元。

contentHash

string

根據存放區計算的項目內容雜湊。如果指定了這項屬性,系統會根據這項屬性決定如何修改項目狀態。設定這個欄位和 type 欄位會導致引數錯誤。長度上限為 2048 個半形字元。

payload

string (bytes format)

為連接器提供其他文件狀態資訊,例如其他存放區 ID 和其他中繼資料。長度上限為 8192 個位元組。

Base64 編碼字串。

queue

string

此項目所屬的佇列。如未指定這個欄位,系統會選擇 default 佇列。長度上限為 512 個半形字元。

repositoryError

object (RepositoryError)

填入這個欄位,以便儲存連接器或存放區的錯誤詳細資料。這項資訊會顯示在管理控制台中。只有在 typeREPOSITORY_ERROR 時,才能填入這個欄位。

PushItem.Type

定義推送行為的推送作業類型。

列舉
UNSPECIFIED 預設為「UNSPECIFIED」。指定推送作業不應修改 ItemStatus
MODIFIED 表示自上次 update 呼叫以來,存放區文件已修改或更新。這會將現有項目的狀態變更為 MODIFIED。如果在非現有項目上呼叫此方法,狀態會變更為 NEW_ITEM
NOT_MODIFIED 自上次更新呼叫以來,存放區中的項目未經過修改。這項推送作業會將狀態設為 ACCEPTED 狀態。
REPOSITORY_ERROR 連接器遇到與此項目相關的存放區錯誤。將狀態變更為 REPOSITORY_ERROR 狀態。系統會取消保留項目,並在指數輪詢所決定的未來時間重新安排。
REQUEUE 請只針對已保留的項目呼叫推送功能,並使用 REQUEUE。這項動作會取消保留項目,並將可用時間重設為時鐘時間。