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 的推送。此操作会取消预订相应内容,并将其可用时间重置为挂钟时间。