Skip to content

批量为数据项创建索引

为提高索引数据记录的速度,特提供批量索引数据记录的接口。

Tip: 注意:一个batch中所有数据项的datasourceID需要一致,tenantID也需要一致

请求

项目
HTTP URLhttps://open.feishu.cn/open-apis/search/v2/data_sources/:data_source_id/items/batch_create
HTTP MethodPOST
支持的应用类型custom,isv
权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用search:data_source 查询、创建、修改和删除自定义搜索数据源、数据范式或数据项

请求头

名称类型必填描述
Authorizationstringtenant_access_token 值格式:"Bearer access_token" 示例值:"Bearer t-7f1bcd13fc57d46bac21793a18e560" 了解更多:如何选择与获取 access token
Content-Typestring固定值:"application/json; charset=utf-8"

路径参数

名称类型描述
data_source_idstring数据源的ID 示例值:"6953903108179099667"

请求体

名称类型必填描述
itemslist<Item>待进入索引的item列表
∟ idstringitem 在 datasource 中的唯一标识 示例值:"my_item_01010111"
∟ aclacl\[\]item 的访问权限控制。 acl 字段为空数组,则默认数据不可见。如果数据是全员可见,需要设置 access="allow"; type="user"; value="everyone"
∟ ∟ accessstring权限类型,优先级:Deny > Allow。 示例值:"allow" 可选值有: - allow:允许访问 - deny:禁止访问
∟ ∟ valuestring设置的权限值,例如 userID ,依赖 type 描述。 注:在 type 为 user 且 access 为 allow 时,可填 "everyone" 来表示该数据项对全员可见; 示例值:"d35e3c23"
∟ ∟ typestring权限值类型 示例值:"user" 可选值有: - user:访问权限控制中指定“用户”可以访问或拒绝访问该条数据
∟ metadataitem_metadataitem 的元信息
∟ ∟ titlestring该条数据记录对应的标题 示例值:"工单:无法创建文章"
∟ ∟ source_urlstring该条数据记录对应的跳转url 示例值:"http://www.abc.com.cn"
∟ ∟ create_timeint数据项的创建时间。Unix 时间,单位为秒 示例值:1618831236
∟ ∟ update_timeint数据项的更新时间。Unix 时间,单位为秒 示例值:1618831236
∟ ∟ source_url_mobilestring移动端搜索命中的跳转地址。如果您PC端和移动端有不同的跳转地址,可以在这里写入移动端专用的url,我们会在搜索时为您选择合适的地址 示例值:"https://www.feishu.cn"
∟ structured_datastring结构化数据(以 json 字符串传递),这些字段是搜索结果的展示字段(title字段无须在此另外指定),这里的示例值遵循了数据范式示例中的schema定义,请按你在“数据范式”中创建的schema约束填写数据 示例值:"{"description":"description1", "priority":"HIGH"}"
∟ contentitem_content非结构化数据,如文档文本,飞书搜索会用来做召回
∟ ∟ formatstring内容的格式 示例值:"html" 可选值有: - html:html格式 - plaintext:纯文本格式
∟ ∟ content_datastring全文数据 示例值:"这是一个很长的文本"

请求体示例

json
{
	"items": [{
			"id": "my_item_01010111",
			"acl": [{
				"access": "allow",
				"value": "everyone",
				"type": "user"
			}],
			"metadata": {
				"title": "工单:无法创建文章",
				"source_url": "http://www.abc.com.cn",
				"create_time": 1618831236,
				"update_time": ""
			},
			"structured_data": "{\"description\":\"description1\", \"priority\":\"HIGH\"}",
			"content": {
				"format": "html",
				"content_data": "这是一个很长的文本"
			}
		},
		{
			"id": "my_item_01010112",
			"acl": [{
				"access": "allow",
				"value": "d35e3c24",
				"type": "user"
			}],
			"metadata": {
				"title": "工单2:无法创建文章",
				"source_url": "http://www.abc.com.cn",
				"create_time": 1618831236,
				"update_time": 1618831236
			},
			"structured_data": "{\"description\":\"description2\",\"priority\":\"LOW\"}",
			"content": {
				"format": "html",
				"content_data": "这是一个很长的文本"
			}
		}
	]
}

响应

响应体

名称类型描述
codeint错误码,非 0 表示失败
msgstring错误描述
data\--
∟ resultlist<batch_item_result>返回信息列表
∟ ∟ item_idstringitemID
∟ ∟ is_successboolean该数据项是否成功发往索引。 注意:存在极端情况该字段为True,但并未进入索引
∟ ∟ errstring若该数据项索引失败,则表示该数据的失败信息

响应成功示例

json
{
    "code": 0,
    "data": {
        "result": [
            {
                "err": "invalid parameter",
                "is_success": false,
                "item_id": "zfz-test-batch_create_item_id1"
            },
            {
                "err": "",
                "is_success": true,
                "item_id": "zfz-test-batch_create_item_id2"
            }
        ]
    },
    "msg": "success"
}

响应失败示例

json
{
    "code": 1272002,
    "msg": "操作鉴权失败",
    "error": {}
}

错误码

HTTP状态码错误码描述排查建议
5001270001系统内部错误联系系统开发人员协助定位
4001270002参数错误根据错误信息和文档排查非法参数
4001270004数据源不存在确认 datasource ID 是否正确
4001270005该功能仅对旗舰版可用请联系销售人员升级套餐以使用此高级功能
4001271004acl字段填写不完整填写数据项的可见性
4011272001无权限操作数据源确认 datasource ID 是否合法
5001272002操作鉴权失败如果重试后仍然失败,请联系系统开发人员协助定位
4001272004acl中指定的user数量超过限制减少 acl 中使用的 user,最大为 1000

内容来源:飞书开放平台 · 自动爬取整理