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 调用推送。此操作会取消预留该项,并将其可用时间重置为挂钟时间。