本文档介绍内容洞察提供的数据检索接口的调用方式
内容洞察平台在客户针对新场景做数据测试时,提供数据检索接口,客户侧在面向用户侧做数据演示时,可以通过该接口实时查询内容洞察的数据情况。
备注:
接口调用前置操作,详见:调用指南
注意
该接口不可应用于客户端用户侧生产环境业务使用。
| 名称 | 内容 |
|---|---|
| 接口地址 | /openapi/item/search |
| 请求方式 | POST |
| 是否需要鉴权 | 是 |
| QPS限制 | 20 |
Hearder请求参数
| 字段 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| X-Insight-Biz-Name | string | 是 | 业务名称 -> 即火山账号ID |
| X-Insight-Access-Token | string | 是 | API访问凭证access_token |
| Content-Type | string | 是 | 'application/json' |
Body请求参数
| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| rule | object | 是 | 检索规则,具体说明见下方“特殊说明” |
| start_time | string | 是 | 检索时间范围的开始时间,格式"yyyy-mm-dd HH:mm:ss" |
| end_time | string | 是 | 检索时间范围的结束时间,格式"yyyy-mm-dd HH:mm:ss" |
| page_size | int | 是 | 一页的发文数 |
| page_number | int | 是 | 页数,从1开始 |
| snapshot_id | string | 否 | 翻页时的快照id |
| 参数 | 类型 | 描述 | |
|---|---|---|---|
| data | items | list of object | 发文数据,具体字段可参考:数据格式 |
| snapshot_id | string | 快照id,可在下次翻页时带上 | |
| count | int | 总发文数,超过10000会返回10000 | |
| message | string | 错误信息,成功不会返回 | |
| status | int | 状态码 | |
请求示例
POST /openapi/item/search Header: X-Insight-Biz-Name: $biz_name X-Insight-Access-Token: $token Content-Type: application/json Body: { "rule": [ "and", [ "or", [ "in", "关键词A", { "fl": [ "title", "asr", "ocr" ] } ] ], [ "or", [ "in", "关键词B", { "fl": [ "title", "asr", "ocr" ] } ] ] ], "page_size": 10, "page_number": 1, "start_time": "2023-11-28 10:00:00", "end_time": "2023-11-28 11:00:00", "snapshot_id": "" }
curl --location 'https://insight.volcengineapi.com/openapi/item/search' \ --header 'X-Insight-Biz-Name: $biz_name' \ --header 'X-Insight-Access-Token: $token' \ --header 'Content-Type: application/json' \ --data '{ "rule": [ "and", [ "or", [ "in", "关键词A", { "fl": [ "title", "asr", "ocr" ] } ] ], [ "or", [ "in", "关键词B", { "fl": [ "title", "asr", "ocr" ] } ] ] ], "page_size": 10, "page_number": 1, "start_time": "2023-11-28 10:00:00", "end_time": "2023-11-28 11:00:00", "snapshot_id": "" }'
返回示例
{ "data": { "items": [ { // post_details } ], "snapshot_id": "74e1ef64952a3d210118c00badb469bc", "count": 10000 }, "message": "succeed", "status": 0 }
支持的运算方法:
| 操作类型 | 规则名称 | 参数说明 |
|---|---|---|
| 逻辑运算:与 | and | 多个规则同时满足时命中 |
| 逻辑运算:或 | or | 存在一个规则满足时命中 |
| 字符串匹配 | in | 参数1是被匹配的文本,参数2是字符串 |
支持的参数: title, ocr, asr
参数配置方式:
| 参数key | 英文名称 | 示例 | 说明 |
|---|---|---|---|
| f | field | {"f": "title"} | 表示这个参数需要从原始输入数据中去获取“title”特征 |
| fl | field list | {"fl": ["title", "ocr"]} | 表示这个参数从原始数据中获取多个特征,并且组装成list。 |
规则限制:
规则层数不能超过两层;
关键词总长度不能超过50;
关键词会有敏感词校验,敏感词校验&预览具体可参考:订阅任务配置;
不同数据套餐对应的调用次数限制:套餐一2500次/天,套餐二6000次/天,套餐三10000次,套餐四25000次,套餐五35000次,定制算法/标准字段套餐按2500次/天,测试账号无次数限制。
一个两层的规则配置示例:
"rule": [ "and", [ "or", [ "in", "关键词A", { "fl": [ "title", "asr", "ocr" ] } ] ], [ "or", [ "in", "关键词B", { "f": "ocr" } ] ] ]
说明
start_time和end_time的时间范围需要在最近30天内,且start_time < end_time;
page_size不能大于100,翻页最多翻到第10000条(即page_size × page_number不能大于10000);
由于会有实时数据入库,若查询时间距离当前时间较近,可能会出现翻页时count和发文变化的情况,snapshot_id用来帮助稳定地翻页。对于一个相同的rule和start_time、end_time的查询条件,在后续的翻页请求中可用前一次请求的snapshot_id作为请求参数,保证同一查询条件的count和发文范围不变。snapshot_id的初始有效时间为5分钟,同一查询条件每翻一次页snapshot_id的有效期延长2分钟,最长30分钟。若不需要稳定翻页也不传此参数;
实时性强的场景不推荐用snapshot_id参数,可能会导致查不到最新的发文。