知识中心 API
# 知识中心 API
# 接口声明
在调用接口时必须在 https 请求的 header 中携带 "token" 参数。
Token 是智齿客服接口开放平台全局唯一的接口调用凭据。 开发者在调用各业务接口时都需使用 Token,开发者需要进行妥善保存。 Token 的存储至少要保留 32 个字符空间。Token 的有效期目前为 24 个小时,需定时刷新,或根据接口返回的 Token 失效提示,进行重新获取。请求 Token 接口,无论 Token 是否存在,都会返回新的 Token,并重置 Token 的过期时间(目前 24 小时)。
Token 使用方式说明:
1、开发者需要统一获取和管理 Token,在调用智齿客服各个业务开放接口时都应该使用同一个的 Token,不应该每个业务都刷新获取新的 Token,否则容易导致 Token 失效,影响接口的正常调用;
2、目前 Token 的有效期通过返回的 expire_in 来传达,目前是 86,400 秒之内的值。开发者需要根据这个有效时间提前去刷新新 Token。
3、开发者需要根据接口返回的 Token 失效提示,进行重新获取 Token。
# 接口调用
# ● 获取访问 Token 编码
接口说明:
获取 API 开放接口 Token,此 Token 仅适用于智齿开放平台 5.0 版本全部 API 接口 。API 接口中的参数 appid 、 app_key 请联系智齿售后人员获取。
请求方式: GET
请求地址:
https://www.sobot.com/api/get_token
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
appid | String | 是 | 接口凭证 Id,第三方用户接口调用唯一凭证 id |
create_time | String | 是 | 时间戳 |
sign | String | 是 | 签名 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | 是 | 返回编码 |
ret_msg | String | 是 | 返回信息 |
item | Object | 否 | 返回对象 |
item 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
token | String | 是 | token 编码 |
expires_in | String | 是 | 凭证有效时间,单位:秒 |
时间戳转换参考工具:
http://tool.chinaz.com/Tools/unixtime.aspx
sign 签名生成示例:
例如,appid = "1"; create_time="1569397773"; app_key="2"
sign = Md5("115693977732") 为 258eec3118705112b2c53dc8043d4d34。
请求示例:
curl https://www.sobot.com/api/get_token?appid=1&create_time=1569397773&sign=258eec3118705112b2c53dc8043d4d34
返回示例:
{
"item": {
"token": "4ac37cb2e9c740dba4b75a34d5358802",
"expires_in": "86400"
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
# ● 查询分类
接口类型:主动调用接口
接口作用:可通过调用该接口来查询知识分类列表
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/get_type_tree_all
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/get_type_tree_all
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '{}'
2
3
4
5
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | String | 否 | 知识库id |
kbid_list | Array | 否 | 多个知识库id |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
data | Object | / | 返回对象 |
data.question_type_tree 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | / | 知识库id |
id | String | / | 知识库对应数据库configId值 |
type | String | / | 1-知识库 2-问题分类 |
is_web | Integer | / | 是否是网页知识库,0-不是 1-是 |
scope_flag | Integer | / | 可见范围 0 内部 1所有 |
name | String | / | 知识库名称 |
child_type_list | Array | / | 子分类对象列表 |
child_type_list.id | String | / | 分类id |
child_type_list.type | Integer | / | 1-知识库 2-问题分类 |
child_type_list.sort_no | Integer | / | 排序值 |
child_type_list.question_type_name | String | / | 分类名称 |
child_type_list.parent_typeid | String | / | 父级分类id |
child_type_list.question_typeid | String | / | 分类id |
请求示例:
{
"kbid": 31,
"kbid_list": [31,30]
}
2
3
4
返回示例:
{
"data": {
"question_type_tree": [
{
"kbid": 32,
"is_web": 0,
"scope_flag": 1,
"name": "知识库XXX",
"id": "c3dbe5adf8da4d83a15cd3c7305f8e33",
"type": 1,
"child_type_list": [
{
"sort_no": 1,
"question_type_name": "分类001",
"parent_typeid": "-1",
"child_type_list": [],
"id": "0474764dbd81408b9aaca8d4fce2e271",
"type": 2,
"question_typeid": "0474764dbd81408b9aaca8d4fce2e271"
}
]
}
]
},
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# ● 添加分类
接口类型:主动调用接口
接口作用:可通过调用该接口来添加分类
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/add_type
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | String | 是 | 知识库id |
question_type_name | String | 是 | 分类名称 |
parent_typeid | String | 是 | 父级分类id,顶级为 -1 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
data | Object | / | 返回对象 |
data 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | / | 知识库id |
update_serviceid | String | / | 更新人id |
create_time | Long | / | 创建时间 |
question_type_desc | String | / | 问题类型描述 |
create_serviceid | String | / | 创建人id |
parent_typeid | String | / | 父类ID |
type_level | Integer | / | 分类级别,0根目录,1一级分类,2二级分类 |
question_typeid | String | / | 问题类型ID |
sort_no | Integer | / | 排序 |
update_time | String | / | 更新时间 |
companyid | String | / | 公司id |
question_type_name | String | / | 问题类型名称 |
update_service_name | String | / | 更新人名称 |
create_service_name | String | / | 创建人名称 |
question_type_status | String | / | 问题类型状态:0删除(无效),1有效 |
type_flag | Integer | / | 类型标记:1-普通分类;2-多轮会话标记 ;3-外呼问题 4-内部知识库分类 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/add_type
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"kbid": 32,
"question_type_name": "三个444",
"parent_typeid": "-1"
}'
2
3
4
5
6
7
8
9
10
返回示例:
{
"data": {
"kbid": 32,
"update_serviceid": "6a2fce77ad1a4051bf74254cf9c3c393",
"create_time": 1753782482,
"question_type_desc": "一级分类",
"create_serviceid": "6a2fce77ad1a4051bf74254cf9c3c393",
"parent_typeid": "-1",
"type_level": 1,
"question_typeid": "3208bf814aa240ffb8690dda12192513",
"sort_no": 13,
"update_time": 1753782482073,
"companyid": "039fe9e7e2e24f8b8685f4ce5edef3e2",
"question_type_name": "分类002",
"update_service_name": "超管",
"create_service_name": "超管",
"question_type_status": 1,
"type_flag": 4
},
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# ● 修改分类
接口类型:主动调用接口
接口作用:可通过调用该接口来修改分类
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/edit_type
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | String | 是 | 知识库id |
question_typeid | String | 是 | 分类id |
question_type_name | String | 是 | 分类名称 |
parent_typeid | String | 是 | 父级分类id,顶级为 -1 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/edit_type
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"kbid": 32,
"question_typeid": "f43c8ff96c224b329eee1013ecc770d0",
"question_typeName": "算法23345",
"parent_typeid": "-1"
}'
2
3
4
5
6
7
8
9
10
11
返回示例:
{
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
# ● 删除分类
接口类型:主动调用接口
接口作用:可通过调用该接口来删除分类
请求方式:
POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/delete_type
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
question_typeid | String | 是 | 分类id |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/delete_type
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"question_typeid": "9bdf7bff7ea64e1bb4f5e766752dd584"
}'
2
3
4
5
6
7
8
返回示例:
{
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
# ● 查询知识库列表
接口类型:主动调用接口
接口作用:可通过调用该接口查询知识库列表
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/query_base_by_operate
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
page_no | Integer | 是 | 页码 |
page_size | Integer | 是 | 条数 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
total_count | Integer | / | 数据条数 |
page_count | Integer | / | 总页数 |
page_no | Integer | / | 页码 |
page_size | Integer | / | 每页条数 |
data | Object | / | 返回对象 |
data 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | / | 知识库id |
kb_name | String | / | 知识库名称 |
kb_remark | String | / | 知识库备注 |
kb_type | Integer | / | 知识库类型 1 外部知识库 2 内部知识库 3 网页知识库 |
kb_status | String | / | 知识库状态 0 正常 1 失效 |
scope_flag | Integer | / | 可见范围 0 内部 1所有 |
organize_str | String | / | 使用范围 |
service_auth_type | Integer | / | 运营人员权限类型 1-管理权限 2-编辑权限 |
question_num | Integer | / | 问题数量 |
companyid | String | / | 公司id |
configid | String | / | 知识库配置id |
operation_str | String | / | 运营人员 |
update_serviceid | String | / | 更新人id |
update_time | String | / | 更新时间 |
update_service_name | String | / | 更新人名称 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/query_base_by_operate
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"page_no": 1,
"page_size": 2
}'
2
3
4
5
6
7
8
9
返回示例:
{
"data": [
{
"kbid": 33,
"kb_remark": "记录所有关于售后问题",
"update_serviceid": "6a2fce77ad1a4051bf74254cf9c3c393",
"scope_flag": 1,
"kb_type": 2,
"organize_str": "全部可见",
"service_auth_type": 1,
"question_num": 5,
"kb_name": "售后问题知识库",
"kb_status": "0",
"update_time": 1751013009400,
"companyid": "039fe9e7e2e24f8b8685f4ce5edef3e2",
"configid": "a319738530a644dc854e6f7b79ec0232",
"operation_str": "宏亮",
"update_service_name": "宏亮"
},
{
"kbid": 32,
"kb_remark": "验证",
"update_serviceid": "6a2fce77ad1a4051bf74254cf9c3c393",
"scope_flag": 1,
"kb_type": 2,
"organize_str": "全部可见",
"service_auth_type": 1,
"question_num": 7,
"kb_name": "知识库校验2",
"kb_status": "0",
"update_time": 1725348000066,
"companyid": "039fe9e7e2e24f8b8685f4ce5edef3e2",
"configid": "c3dbe5adf8da4d83a15cd3c7305f8e33",
"operation_str": "宏亮, 刘菲",
"update_service_name": "宏亮"
}
],
"total_count": 12,
"page_no": 1,
"ret_msg": "操作成功",
"ret_code": "000000",
"page_count": 6,
"page_size": 2
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# ● 查询知识列表
接口类型:主动调用接口
接口作用:可通过调用该接口查询知识列表
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/query_knowledge_list
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
page_no | Integer | 是 | 页码 |
page_size | Integer | 是 | 条数 |
kb_ids | Array | 是 | 知识库id |
question_type_ids | Array | 否 | 目录IDs 包括子目录(未选择类型时,默认传-1) |
key_flag | Integer | 否 | 查询类别 1-标题,2-内容,3-全文,4-相似问法,5-URL |
key_words | Array | 否 | 查询关键词内容,多个空格分割 |
order_type | Integer | 否 | 排序类型 1-按更新时间排序,2-按创建时间排序 |
used_flag | Integer | 否 | 词条状态 0-启用、1-停用 |
language | String | 否 | 语言 |
createid | String | 否 | 创建人id |
updateid | String | 否 | 更新人id |
save_type | Integer | 否 | 知识保存状态 0-草稿,1-发布 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
total_count | Integer | / | 数据条数 |
page_count | Integer | / | 总页数 |
page_no | Integer | / | 页码 |
page_size | Integer | / | 每页条数 |
data | Object | / | 返回对象 |
data.search_list 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | / | 知识库id |
save_type | String | / | 保存类型 1-发布 0-草稿 |
timezone | String | / | 时区 |
language | String | / | 语言 |
doc_type | Integer | / | 知识类型 1-文章、2-问题、3-文件 |
question_title | String | / | 标题 |
rule_status | String | / | 客群规则状态 |
update_name | String | / | 更新人名称 |
rule_desc_and_list | Array | / | 且规则列表描述 |
rule_desc_or_list | Array | / | 或规则列表 |
update_time | Long | / | 更新时间 |
companyid | String | / | 公司id |
default_lan_flag | String | / | 默认语言标识 1-默认 0-非默认 |
createid | String | / | 创建人id |
sub_doc | Array | / | 存在的语言词条 |
create_time | Long | / | 创建时间 |
rule_name | String | / | 客群规则名称 |
cover | String | / | 封面链接 |
answer_info | Array | / | 答案内容 |
file_name | String | / | 文件名称 |
docid | String | / | 词条id |
question_typeid | String | / | 目录ID |
file_size | Integer | / | 文件大小 |
effect_status | Integer | / | 生效状态 0-永久生效、1-自定义时间 |
updateid | String | / | 更新人id |
dataid | String | / | 数据主id 用于区别一组多语言词条标识 |
used_flag | Integer | / | 知识状态 0-启用、1-停用、2-初始化 |
ruleid | String | / | 客群规则id |
create_name | String | / | 创建人名称 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/query_knowledge_list
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"kb_ids": [
32
],
"question_type_ids": [
"f43c8ff96c224b329eee1013ecc770d0",
"776be87dedfa41a28fc92bd9b82cf99a"
],
"language": "zh-Hans",
"order_type": 1,
"used_flag": 0,
"createid": null,
"updateid": null,
"key_flag": 3,
"sub_doc_used_flag": 0,
"save_type": 1,
"page_no": 1,
"page_size": 15
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
返回示例:
{
"data": {
"search_list": [
{
"kbid": 32,
"save_type": "1",
"timezone": "Asia/Shanghai",
"reset_section_flag": "1",
"language": "zh-Hans",
"doc_type": 3,
"question_title": "test111222222",
"rule_status": "UPDATE",
"update_name": "宏亮",
"rule_desc_and_list": [
"渠道来源 属于 桌面网站, 全部"
],
"update_time": 1753467955670,
"companyid": "039fe9e7e2e24f8b8685f4ce5edef3e2",
"default_lan_flag": 1,
"createid": "6a2fce77ad1a4051bf74254cf9c3c393",
"sub_doc": [],
"create_time": 1751015106277,
"rule_name": "加个规则日日日",
"answer_info": [
{
"answerid": "9a0a8e992aec41b980035472b7fe1960",
"answer": "https://img-test.sobot.com/039fe9e7e2e24f8b8685f4ce5edef3e2/common/test_1751015095246.pdf",
"answer_txt": "https://img-test.sobot.com/039fe9e7e2e24f8b8685f4ce5edef3e2/common/test_1751015095246.pdf",
"answer_status": 0
}
],
"file_name": "test.pdf",
"docid": "b50d3cf526544e6a8ee5f7cd621b485c",
"batchid": "4f04b920cd8a4fa9b0785f2253f49d5d",
"question_typeid": "776be87dedfa41a28fc92bd9b82cf99a",
"file_size": 89332,
"effect_status": 0,
"updateid": "6a2fce77ad1a4051bf74254cf9c3c393",
"dataid": "90c5ab873afd414da61b8c77e48f9140",
"section_error_case": "",
"used_flag": 0,
"ruleid": "b17f3bf60f0340dcb3d23f657117a32b",
"section_status": "SECTION_SUCCESS",
"create_name": "宏亮"
},
{
"kbid": 32,
"save_type": "1",
"timezone": "Asia/Shanghai",
"reset_section_flag": "1",
"language": "zh-Hans",
"doc_type": 1,
"question_title": "文章的标题11",
"rule_status": "ENABLE",
"update_name": "宏亮",
"cover": "https://img-test.sobot.com/039fe9e7e2e24f8b8685f4ce5edef3e2/common/2234_1751012102909.png",
"update_time": 1753467952956,
"companyid": "039fe9e7e2e24f8b8685f4ce5edef3e2",
"default_lan_flag": 1,
"createid": "6a2fce77ad1a4051bf74254cf9c3c393",
"sub_doc": [],
"create_time": 1751012085849,
"answer_info": [
{
"answerid": "5b983abd9d0b461f9c0c59ab62e72360",
"answer": "<h4>文章的第一段文字,<strong>加粗的文字,</strong>来个图片111😛</h4><table style=\"width: auto;\"><tbody><tr><th colSpan=\"1\" rowSpan=\"1\" width=\"auto\">姓名</th><th colSpan=\"1\" rowSpan=\"1\" width=\"auto\">年龄</th><th colSpan=\"1\" rowSpan=\"1\" width=\"auto\">性别</th></tr><tr><td colSpan=\"1\" rowSpan=\"1\" width=\"auto\">张三</td><td colSpan=\"1\" rowSpan=\"1\" width=\"auto\">23</td><td colSpan=\"1\" rowSpan=\"1\" width=\"auto\">男</td></tr></tbody></table><p><br></p>",
"answer_txt": "文章的第一段文字,加粗的文字,来个图片111😛姓名年龄性别张三23男",
"answer_status": 0
}
],
"file_name": "",
"docid": "b8fa250001214b9d90a6c49c450956c4",
"batchid": "4f04b920cd8a4fa9b0785f2253f49d5d",
"question_typeid": "776be87dedfa41a28fc92bd9b82cf99a",
"effect_status": 0,
"updateid": "6a2fce77ad1a4051bf74254cf9c3c393",
"dataid": "1f73a822e9b149b0aa3a0591cce37c24",
"section_error_case": "",
"used_flag": 0,
"ruleid": "ALL",
"section_status": "SECTION_SUCCESS",
"create_name": "宏亮"
},
{
"kbid": 32,
"save_type": "1",
"timezone": "Asia/Shanghai",
"reset_section_flag": "1",
"language": "zh-Hans",
"doc_type": 2,
"question_title": "知识的标题",
"rule_status": "ENABLE",
"update_name": "宏亮",
"update_time": 1751011276125,
"companyid": "039fe9e7e2e24f8b8685f4ce5edef3e2",
"default_lan_flag": 1,
"createid": "6a2fce77ad1a4051bf74254cf9c3c393",
"sub_doc": [],
"create_time": 1751010704704,
"answer_info": [
{
"answerid": "d1fae55ddc924a4cbc3dcb1abab7fd72",
"answer": "<p>第一段😁内容-<strong>图片试试</strong><img src=\"https://img-test.sobot.com/039fe9e7e2e24f8b8685f4ce5edef3e2/common/3_1751011223673.png\" alt=\"\" data-href=\"\" style=\"\"/></p>",
"answer_txt": "第一段😁内容-图片试试",
"answer_status": 0
}
],
"file_name": "",
"docid": "15a122d0d2a443deb7b0fd65ec8ecc32",
"batchid": "-1",
"question_typeid": "776be87dedfa41a28fc92bd9b82cf99a",
"effect_status": 0,
"updateid": "6a2fce77ad1a4051bf74254cf9c3c393",
"dataid": "50dfcff8fc8248078908c9751346d260",
"used_flag": 0,
"ruleid": "ALL",
"section_status": "SECTION_OLD",
"create_name": "宏亮"
}
]
},
"total_count": 3,
"page_no": 1,
"ret_msg": "操作成功",
"ret_code": "000000",
"page_count": 1,
"page_size": 15
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# ● 查询知识详情
接口类型:主动调用接口
接口作用:可通过调用该接口查询知识详情
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/query_knowledge_info
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
docid | String | 是 | 知识id |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
data | Object | / | 返回对象 |
data 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | / | 知识库id |
save_type | String | / | 保存类型 1-发布 0-草稿 |
timezone | String | / | 时区 |
language | String | / | 语言 |
doc_type | Integer | / | 知识类型 1-文章、2-问题、3-文件 |
question_title | String | / | 标题 |
rule_status | String | / | 客群规则状态 |
update_name | String | / | 更新人名称 |
rule_desc_and_list | Array | / | 且规则列表描述 |
rule_desc_or_list | Array | / | 或规则列表 |
update_time | Long | / | 更新时间 |
companyid | String | / | 公司Id |
default_lan_flag | String | / | 默认语言标识 1-默认 0-非默认 |
createid | String | / | 创建人id |
sub_doc | Array | / | 存在的语言词条 |
create_time | Long | / | 创建时间 |
rule_name | String | / | 客群规则名称 |
cover | String | / | 封面链接 |
answer_info | Array | / | 答案内容 |
file_name | String | / | 文件名称 |
docid | String | / | 词条id |
question_typeid | String | / | 目录ID |
file_size | Integer | / | 文件大小 |
effect_status | Integer | / | 生效状态 0-永久生效、1-自定义时间 |
updateid | String | / | 更新人id |
dataid | String | / | 数据主id 用于区别一组多语言词条标识 |
used_flag | Integer | / | 知识状态 0-启用、1-停用、2-初始化 |
ruleid | String | / | 客群规则id |
create_name | String | / | 创建人名称 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/query_knowledge_info
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"docid": "b50d3cf526544e6a8ee5f7cd621b485c"
}'
2
3
4
5
6
7
8
返回示例:
{
"data": {
"kbid": 32,
"similar_questions": [],
"save_type": "1",
"timezone": "Asia/Shanghai",
"reset_section_flag": "1",
"language": "zh-Hans",
"question_status": 0,
"doc_type": 3,
"question_title": "test111222222",
"rule_status": "UPDATE",
"update_name": "宏亮",
"rule_desc_and_list": [
"渠道来源 属于 桌面网站, 全部"
],
"update_time": 1753467955670,
"companyid": "039fe9e7e2e24f8b8685f4ce5edef3e2",
"default_lan_flag": 1,
"createid": "6a2fce77ad1a4051bf74254cf9c3c393",
"sub_doc": [],
"questionid": "fad0600cdc5f4040a0e6b51a1a303f1d",
"create_time": 1751015106277,
"rule_name": "加个规则日日日",
"answer_info": [
{
"answerid": "9a0a8e992aec41b980035472b7fe1960",
"answer": "https://img-test.sobot.com/039fe9e7e2e24f8b8685f4ce5edef3e2/common/test_1751015095246.pdf",
"answer_txt": "https://img-test.sobot.com/039fe9e7e2e24f8b8685f4ce5edef3e2/common/test_1751015095246.pdf",
"answer_status": 0
}
],
"file_name": "test.pdf",
"docid": "b50d3cf526544e6a8ee5f7cd621b485c",
"batchid": "4f04b920cd8a4fa9b0785f2253f49d5d",
"question_typeid": "776be87dedfa41a28fc92bd9b82cf99a",
"file_size": 89332,
"effect_status": 0,
"updateid": "6a2fce77ad1a4051bf74254cf9c3c393",
"dataid": "90c5ab873afd414da61b8c77e48f9140",
"section_error_case": "",
"used_flag": 0,
"ruleid": "b17f3bf60f0340dcb3d23f657117a32b",
"section_status": "SECTION_SUCCESS",
"create_name": "宏亮"
},
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# ● 添加知识-问题、文章
接口类型:主动调用接口
接口作用:可通过调用该接口添加问题和文章
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/save_knowledge
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | 是 | 知识库id |
question_title | String | 是 | 标题 |
question_typeid | String | 是 | 知识库分类id |
save_type | Integer | 是 | 保存类型 1-发布 0-草稿 |
answer_info | Array | 是 | 内容 |
doc_type | Integer | 是 | 知识类型 1-文章、2-问题、3-文件 |
used_flag | Integer | 是 | 知识状态 0-启用、1-停用 |
effect_status | Integer | 是 | 生效状态 0-永久生效、1-自定义时间 |
language | String | 是 | 语言 |
default_lan_flag | Integer | 是 | 默认语言标识 1-默认 0-非默认 |
timezone | String | 是 | 时区 |
dataid | String | 否 | 数据主id 用于区别一组多语言词条标识 |
cover | String | 否 | 封面链接 |
effect_time | Long | 否 | 自定义生效时间 |
invalid_time | Long | 否 | 自定义失效时间 |
ruleid | String | 否 | 客群规则id |
rule_name | String | 否 | 客群规则名称 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
data | Object | / | 返回对象 |
data 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
dataid | String | / | 数据主id 用于区别一组多语言词条标识 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/save_knowledge
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"kbid": 32,
"questionid": null,
"question_title": "大手一挥111",
"question_typeid": "30a8c5a16f6541b381acf3da706e312e",
"answer_info": [
{
"answer": "<p>内容的部分01</p>"
}
],
"doc_type": 2,
"used_flag": 0,
"effect_status": 0,
"language": "zh-Hans",
"similar_questions": [
{}
],
"save_type": 1,
"default_lan_flag": 1,
"cover": null,
"timezone": "Asia/Shanghai",
"ruleid": "ALL",
"rule_name": null
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
返回示例:
{
"data": {
"dataid": "7dcdb79928cf4127b8d1db7fa12e9cdd"
},
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
5
6
7
# ● 添加知识-上传文件
接口类型:主动调用接口
接口作用:可通过调用该接口添加知识批量上传文件
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/batch_upload
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | 是 | 知识库id |
file_info_list | Array | 是 | 上传的文件信息 |
question_typeid | String | 是 | 知识库分类id |
save_type | Integer | 是 | 保存类型 1-发布 0-草稿 |
answer_info | Array | 是 | 内容 |
doc_type | Integer | 是 | 知识类型 1-文章、2-问题、3-文件 |
used_flag | Integer | 是 | 知识状态 0-启用、1-停用 |
effect_status | Integer | 是 | 生效状态 0-永久生效、1-自定义时间 |
language | String | 是 | 语言 |
default_lan_flag | Integer | 是 | 默认语言标识 1-默认 0-非默认 |
timezone | String | 是 | 时区 |
effect_time | Long | 否 | 自定义生效时间 |
invalid_time | Long | 否 | 自定义失效时间 |
ruleid | String | 否 | 客群规则id |
rule_name | String | 否 | 客群规则名称 |
file_info_list 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
question_title | String | 是 | 文件标题 |
file_name | String | 是 | 文件名称 |
file_size | String | 是 | 文件大小 |
file_url | String | 是 | 文件路径 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/batch_upload
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"language": "zh-Hans",
"used_flag": 0,
"effect_status": 0,
"timezone": "Asia/Shanghai",
"ruleid": "ALL",
"question_typeid": "19bd5a5293334b5697a96e756b22f6e7",
"kbid": 32,
"save_type": 1,
"file_info_list": [
{
"question_title": "test3454567e567",
"file_name": "test.pdf",
"file_size": 89332,
"file_url": "https://img-test.sobot.com/039fe9e7e2e24f8b8685f4ce5edef3e2/common/test_1753772820171.pdf"
}
],
"default_lan_flag": 1,
"doc_type": 3
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
返回示例:
{
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
# ● 修改问题、文章或文件
接口类型:主动调用接口
接口作用:可通过调用该接口修改问题、文章或文件
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/update_knowledge
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
kbid | Integer | 是 | 知识库id |
question_typeid | String | 是 | 知识库分类id |
questionid | String | 是 | 标问id |
docid | String | 是 | 词条id |
dataid | String | 是 | 数据主id 用于区别一组多语言词条标识 |
save_type | Integer | 是 | 保存类型 1-发布 0-草稿 |
answer_info | Array | 是 | 内容 |
doc_type | Integer | 是 | 知识类型 1-文章、2-问题、3-文件 |
used_flag | Integer | 是 | 知识状态 0-启用、1-停用 |
effect_status | Integer | 是 | 生效状态 0-永久生效、1-自定义时间 |
language | String | 是 | 语言 |
default_lan_flag | Integer | 是 | 默认语言标识 1-默认 0-非默认 |
timezone | String | 是 | 时区 |
effect_time | Long | 否 | 自定义生效时间 |
invalid_time | Long | 否 | 自定义失效时间 |
ruleid | String | 否 | 客群规则id |
rule_name | String | 否 | 客群规则名称 |
similar_questions | Array | 否 | 相似问 |
file_name | String | 否 | 文件名称 |
file_size | String | 否 | 文件大小 |
question_title | String | 否 | 标题 |
question_type_name | String | 否 | 目录名称 |
rule_status | String | 否 | 客群规则状态 ENABLE/DELETE/STOP/UPDATE |
answer_info 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
answerid | String | 是 | 答案id |
answer | String | 是 | 答案 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
data | Object | / | 返回数据 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/update_knowledge
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"docid": "22b2f3eda27f4e60bd98dfd6268d9455",
"dataid": "d9610a99f7da4c47ba4642592ad4ef77",
"kbid": 1,
"questionid": "ed2c683027324ffa8135c2c52647f1e7",
"question_title": "华为手机怎么关闭安装检测",
"question_typeid": "d78197ccf0fc4870ac2343e5463e2b4b",
"answer_info": [
{
"answerid": "369cff59e50248f1b711546df154c59d",
"answer": "<p>方法一:通过系统设置关闭<br>进入手机【设置】-【安全与隐私】或直接选择【安全】。找到【更多安全设置】或【应用扫描】选项。关闭【外部来源应用检查】或【应用安装扫描】</p>",
"answers": null,
"answer_txt": "方法一:通过系统设置关闭进入手机【设置】-【安全与隐私】或直接选择【安全】。找到【更多安全设置】或【应用扫描】选项。关闭【外部来源应用检查】或【应用安装扫描】",
"answer_status": 0,
"rich_list": null
}
],
"doc_type": 2,
"used_flag": 0,
"effect_status": 0,
"language": "zh-Hans",
"similar_questions": [{}],
"save_type": 1,
"default_lan_flag": 1,
"cover": null,
"timezone": "Asia/Shanghai",
"ruleid": "ALL",
"rule_name": null
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
返回示例:
{
"data": {
"dataId": "d9610a99f7da4c47ba4642592ad4ef77"
},
"retCode": "000000",
"retMsg": "操作成功"
}
2
3
4
5
6
7
# ● 批量删除知识
接口类型:主动调用接口
接口作用:可通过调用该接口批量删除知识
请求方式: POST
请求地址:
https://api-c.soboten.com/text/ai-agent-open/api/kb/batch_delete_knowledge
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
docid_list | Array | 是 | 知识id集合 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | / | 返回编码 |
ret_msg | String | / | 返回信息 |
请求示例:
curl https://api-c.soboten.com/text/ai-agent-open/api/kb/batch_delete_knowledge
-X POST
-H 'token:cdc94901834c4190adbde1810d2d3a58'
-H 'content-type: application/json'
-d '
{
"docid_list": [
"a9c7bac90fbb411794ccc64eea1f64d8",
"ac66e9be1ba14ddbbbe0ad4cd14678cf"
]
}'
2
3
4
5
6
7
8
9
10
11
返回示例:
{
"ret_msg": "操作成功",
"ret_code": "000000"
}
2
3
4
# 错误编码
# ● 操作成功
错误编码 | 错误说明 |
---|---|
000000 | 操作成功(除此编码以外的编码为错误编码) |
# ● 系统异常
错误编码 | 错误说明 |
---|---|
900001 | token 为空 |
900002 | token 已失效,请重新获取 |
900003 | signature 错误 |
900004 | 没有找到公司的 api 配置信息 |
999999 | 系统未知异常 |
# ● 业务异常
错误编码 | 错误说明 |
---|---|
120037 | 相似问数量不能超过1000条 |
120039 | 请先设置知识的生效时间 |
120035 | 无法启用在设定生效时间范围外的知识 |
120034 | 词条问题或答案不能为空 |
120451 | 规则失效 |
999994 | 参数异常,请检查 |
120319 | 上传文件数量不能超过 100 |
120048 | 同级分类名称不能重复 |
120305 | 文件名称不能为空 |
120304 | 上传文件路径不能为空 |
120051 | 未查询到词条数据 |
120049 | 原分类下存在词条,删除失败 |