对象存储
类型 | 限制说明 |
类型 | 限制说明 |
权限控制 | 调用方需拥有 tos:SearchBySenseFlow 权限,授权资源为 trn:tos::<account-id>:senseflow/rule/<rule-id>。 |
请求参数 |
|
返回结果 |
|
名称 | 位置 | 参数类型 | 是否必选 | 示例值 | 说明 |
名称 | 位置 | 参数类型 | 是否必选 | 示例值 | 说明 |
Authorization | Header | String | 是 | authorization string | TOS V4 请求签名。 |
Content-Type | Header | String | 是 | application/json | 请求消息体类型。 Content-Type 取值固定为 application/json。 |
x-tos-date | Header | String | 是 | 20260818T020000Z | 请求时间,参与 TOS V4 签名。 |
x-tos-security-token | Header | String | 否 | - | 临时 AK/SK 时携带的安全令牌。 |
名称 | 参数类型 | 是否必选 | 示例值 | 说明 |
名称 | 参数类型 | 是否必选 | 示例值 | 说明 |
RuleId | String | 是 | 347716754038276096 | SenseFlow Rule ID。Rule 必须存在且处于可用状态。 |
BucketName | String | 是 | example-bucket | Rule 关联的存储桶名。必须与 Rule 中记录的桶一致。 |
SearchTypes | Array of String | 是 | ["doc", "image"] | 检索的媒体类型。不区分大小写,重复值自动去重,支持类型如下:
|
Query | String | 否 | 年度预算报告 | 自然语言检索文本。可为空,为空时可配合 Filter 执行纯结构化过滤。 |
Filter | Object | 否 | - | 结构化过滤表达式。
|
Operation | String | 是 | - | 操作符。支持如下取值:
父节点:Filter |
Field | String | 条件必选 | - | 叶子条件的索引字段,可用字段取决于媒体类型及底层 Search 索引。 父节点:Filter |
Value | String | 条件必选 | - | 叶子条件的比较值。对外接口统一接收字符串,并在调用 Search 前按字段进行类型转换。 父节点:Filter |
SubFilters | Array of Object | 条件必选 | - | 子过滤条件。逻辑操作使用该字段组合多个条件。 父节点:Filter |
Limit | Integer | 否 | 10 | 返回结果数量,取值范围为 1 ~ 100,默认值为 10。 |
NextToken | String | 否 | next-token | 翻页标记,取上一次响应中的 next_token。 仅支持单一媒体类型检索。 |
WithHighlights | Boolean | 否 | true | 是否返回相关文本片段,默认值为 false,取值如下:
|
名称 | 参数类型 | 示例值 | 说明 |
名称 | 参数类型 | 示例值 | 说明 |
RequestId | String | 85630782fcf6b2f26a82fcf6-ac13ee7******* | 本次请求的 TOS Request ID。 |
items | Array | - | 检索结果列表。无匹配结果时为空或不返回。 |
object_key | String | docs/2026-budget.pdf | 对象 Key。 父节点:items |
media_type | String | doc | 结果媒体类型,取值如下:
父节点:items |
content_type | String | application/pdf | 对象 Content-Type。 父节点:items |
size | Integer | 1048576 | 对象大小,单位为字节。 父节点:items |
last_modified_time_unix | Integer | 1786969335 | 对象最后修改时间,Unix 秒级时间戳。 父节点:items |
highlights | Array of String | 2026 年度预算报告,包含各部门预算明细…… | 相关文本片段,仅在 WithHighlights=true 时返回。 最多从正文、Caption 和 Description 中返回 3 段,每段最大约 4 KiB。 父节点:items |
description | String | 2026 年度预算报告 | 对象的检索描述信息。 |
next_token | String | next-token | 下一页标记,仅单一媒体类型检索可能返回。 |
Scope | Object | - | Rule 当前生效范围。该字段为尽力返回,读取失败时不影响检索结果,响应中可能不包含该字段。 |
ScopeType | String | prefix | Rule 范围类型。 父节点:Scope |
ScopeExpr | String | docs/ | Rule 范围表达式,例如对象 Key 前缀。 父节点:Scope |
ObjectSetNameList | Array of String | - | Rule 关联的 ObjectSet 名称列表。 父节点:Scope |
HTTP 状态码 | 错误码 | 典型错误信息 | 说明 |
HTTP 状态码 | 错误码 | 典型错误信息 | 说明 |
400 | InvalidRequest | rule id is required | 未填写 RuleId。 |
400 | InvalidRequest | bucket name is required | 通过 /v1/senseflow/search 调用时未填写 BucketName。 |
400 | InvalidRequest | SearchTypes is required | 未填写有效的 SearchTypes。 |
400 | InvalidRequest | SearchTypes must be one of doc, image, video | SearchTypes 包含不支持的媒体类型。 |
400 | InvalidRequest | rule does not belong to bucket | BucketName 与 Rule 关联的桶不一致。 |
400 | InvalidRequest | capability_not_enabled | Rule 未开启请求指定的检索类型。 |
400 | InvalidRequest | next_token is only supported for single media type search. | 多媒体类型检索携带了 NextToken。 |
403 | AccessDenied | Access Denied | 调用方无 tos:SearchBySenseFlow 权限,或账号不在功能开放范围内。 |
404 | NoSuchKey | senseflow rule not found | 指定 Rule 不存在。 |
500 | InternalError | search failed | 检索服务或内部依赖调用失败。 |