删除模版接口
请求地址
- DELETE /v1/datumTemplates/:id
请求参数
Request parameters
Parameter |
Type |
Optional |
Description |
id |
Integer |
false |
模版id |
请求结果
示例
$ curl 'https://km.udesk.cn/api/v1/datumTemplates/57?email=admin@udesk.cn×tamp=1573026139&sign=31322f38618d50ee671ef073305ac9917e652374' -i -X DELETE -H 'Content-Type: application/json' -H 'Accept: application/json'
获取模版详情接口
请求地址
- GET /v1/datumTemplates/:id
请求参数
Request fields
path |
Type |
Optional |
Description |
id |
Integer |
false |
模版id. |
请求结果
Path |
Type |
Description |
code |
Integer |
执行结果码 |
message |
String |
执行结果说明 |
data |
Object |
模板信息 |
data[].id |
Integer |
模板ID |
data[].name |
String |
模版名称 |
data[].robotId |
Integer |
机器人ID |
data[].orders |
Integer |
模板排序 |
data[].parentId |
Integer |
模版父级ID(如果是一级模版则为0,非一级模版则为具体ID) |
data[].remark |
String |
模版描述(描述长度不能超过255字符). |
data[].questionAndAnswerSet |
Integer |
模版问答设置(0.无 1.知识点缺省回复 2.知识点澄清 4.知识点推荐 8.知识点搜索) |
data[].similarList[] |
String |
模板别名 |
data[].attributes |
Array |
模板属性列表. |
data[].attributes[].id |
Integer |
模板属性ID |
data[].attributes[].robotId |
Integer |
机器人ID |
data[].attributes[].templateId |
Integer |
模版ID |
data[].attributes[].name |
String |
模板属性名称 |
data[].attributes[].allowInherited |
Integer |
模板是否允许继承(0.不继承 1.可继承) |
data[].attributes[].answer |
String |
属性名称 |
data[].attributes[].askBack |
String |
属性反问问法 |
data[].attributes[].askBackFlag |
Integer |
属性反问问法类型 |
data[].attributes[].switchStatus |
Integer |
属性开关 (0.关 1.开) |
data[].attributes[].similarList[] |
String |
属性别名 |
data[].attributes[].expressionList[] |
String |
属性表述 |
data[].datumDefaultAnswer |
Array |
知识点缺省回复 |
data[].datumDefaultAnswer.id |
Integer |
ID |
data[].datumDefaultAnswer.robotId |
Integer |
机器人ID |
data[].datumDefaultAnswer.templateId |
Integer |
模版ID |
data[].datumDefaultAnswer.answerType |
Integer |
回复类型(1.部分属性 2.触发属性反问 3.全部属性) |
data[].datumDefaultAnswer.attributeIdList[] |
Integer |
属性ID |
data[].datumRecommendation |
Array |
知识点推荐 |
data[].datumRecommendation.id |
Integer |
知识点ID |
data[].datumRecommendation.robotId |
Integer |
机器人ID |
data[].datumRecommendation.templateId |
Integer |
模版ID |
data[].datumRecommendation.noResultContent |
String |
无结果时返回话术 |
data[].datumRecommendation.recommendationNumber |
Integer |
推荐知识点个数 |
data[].datumSearch |
Array |
知识点搜索 |
data[].datumSearch.id |
Integer |
ID |
data[].datumSearch.robotId |
Integer |
机器人ID |
data[].datumSearch.templateId |
Integer |
模版ID |
data[].datumSearch.noResultContent |
String |
无结果时返回话术 |
data[].datumSearch.recommendationNumber |
Integer |
推荐知识点个数 |
data[].datumSearch.strategies |
Array |
知识点搜索策略 |
data[].datumSearch.strategies[].id |
Integer |
ID |
data[].datumSearch.strategies[].robotId |
Integer |
机器人ID |
data[].datumSearch.strategies[].templateId |
Integer |
模版ID |
data[].datumSearch.strategies[].datumSearchId |
Integer |
知识点搜索ID |
data[].datumSearch.strategies[].name |
String |
策略名称 |
data[].datumSearch.strategies[].remark |
String |
策略描述 |
data[].datumSearch.strategies[].clarificationAskContent |
String |
搜索策略问法 |
data[].datumSearch.strategies[].retrievalTarget |
Integer |
检索目标 1: 获取属性 2: 获取知识 |
data[].datumSearch.strategies[].attributeId |
Integer |
属性ID 检索目标为获取属性时必填(只能选一个),获取知识时不填,检索全部知识点 |
data[].datumSearch.strategies[].clarificationContent |
String |
澄清话术 |
data[].datumSearch.strategies[].clarificationRounds |
String |
澄清轮次 |
data[].datumSearch.strategies[].failureContent |
String |
失败话术 |
data[].datumClarify |
Object |
true |
data[].datumClarify.robotId |
Integer |
true |
data[].datumClarify.templateId |
Integer |
true |
data[].datumClarify.recommendationNumber |
Integer |
true |
data[].datumClarify.noResultContent |
String |
true |
data[].datumClarify.clarifyType |
Integer |
true |
data[].datumClarify.askType |
String |
true |
data[].datumClarify.strategies |
Array |
true |
data[].datumClarify.strategies[].robotId |
Integer |
true |
data[].datumClarify.strategies[].templateId |
Integer |
true |
data[].datumClarify.strategies[].datumClarifyId |
Integer |
true |
data[].datumClarify.strategies[].name |
String |
true |
data[].datumClarify.strategies[].remark |
String |
true |
data[].datumClarify.strategies[].clarificationAskContent |
String |
true |
data[].datumClarify.strategies[].retrievalTarget |
Integer |
true |
data[].datumClarify.strategies[].attributeId |
Integer |
true |
data[].datumClarify.strategies[].alternativePushContent |
Object |
true |
data[].datumClarify.strategies[].alternativePushStatus.chosen |
Integer |
true |
data[].datumClarify.strategies[].alternativePushStatus.style |
String |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList |
Array |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList[].id |
Integer |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList[].name |
Integer |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList[].content |
Integer |
true |
data[].datumClarify.strategies[].clarificationContent |
String |
true |
data[].datumClarify.strategies[].clarificationRounds |
String |
true |
data[].datumClarify.strategies[].failureContent |
String |
true |
data[].datumClarify.strategies[].orders |
Integer |
true |
示例
$ curl 'https://km.udesk.cn/api/v1/datumTemplates/56?email=admin@udesk.cn×tamp=1559022283&sign=aa8164470dff8468e6129c1e7d5767651cdedd7c' -i -X GET -H 'Content-Type: application/json' -H 'Accept: application/json'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"data": {
"id": 56,
"name": "小小模版",
"robotId": 83,
"orders": 1,
"parentId": 21,
"parentIds": "0-21",
"remark": "模版描述啊",
"questionAndAnswerSet": 15,
"attributes": [
{
"id": 135,
"name": "模版树行2",
"robotId": 83,
"templateId": 56,
"similarList": [
"模版树行2别名",
"模版树行2别名2"
],
"askBack": "请问您想知道哪个测试下新建模版的模版树行2呢?",
"askBackFlag": 0,
"orders": 1,
"allowInherited": 1,
"switchStatus": 1,
"answer": "<p>模版树行2值</p>",
"expressionList": [
"haha",
"你好"
]
},
{
"id": 136,
"name": "模版属性",
"robotId": 83,
"templateId": 56,
"similarList": [
"模版属性别名",
"模版属性别名2"
],
"askBack": "请问您想知道哪个测试下新建模版的模版属性呢?",
"askBackFlag": 0,
"orders": 2,
"allowInherited": 1,
"switchStatus": 1,
"answer": "<p>模版属性属性值</p>",
"expressionList": [
"模版属性表述2",
"模版属性表述"
]
}
],
"similarList": [
"模版别s名"
],
"datums": [],
"datumDefaultAnswer": {
"id": 8,
"answerType": 3,
"robotId": 83,
"templateId": 56,
"attributeIdList": [
null
]
},
"datumRecommendation": {
"id": 3,
"robotId": 83,
"templateId": 56,
"recommendationNumber": 3,
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问"
},
"datumSearch": {
"id": 3,
"robotId": 83,
"templateId": 56,
"recommendationNumber": 3,
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问",
"strategies": [
{
"id": 2,
"robotId": 83,
"templateId": 56,
"datumSearchId": 3,
"name": "策略2",
"remark": "策略2描述",
"retrievalTarget": 2,
"attributeId": null,
"clarificationAskContent": "策略2描述是的",
"clarificationContent": "策略2描述澄清话树",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问",
"orders": 1
},
{
"id": 3,
"robotId": 83,
"templateId": 56,
"datumSearchId": 3,
"name": "搜索策略",
"remark": "搜索策略描述",
"retrievalTarget": 2,
"attributeId": null,
"clarificationAskContent": "检索问法",
"clarificationContent": "澄清话树啊",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问",
"orders": 2
}
]
}
}
}
请求失败原因
message |
description |
"数据已删除或不存在" |
对应ID的模板已不存在 |
新建模版接口
请求地址
请求参数
Request fields
Path |
Type |
Optional |
Description |
name |
String |
false |
模版名称 |
robotId |
Integer |
false |
机器人ID |
parentId |
Integer |
false |
继承模版(如果是一级模版则为0,非一级模版需要传父模版ID) |
remark |
String |
true |
模版描述(描述长度不能超过255字符) |
questionAndAnswerSet |
Integer |
false |
模版问答设置(0.无 1.知识点缺省回复 2.知识点澄清 4.知识点推荐 8.知识点搜索) |
similarList[] |
String |
true |
别名 |
attributes |
Array |
true |
属性列表 |
attributes[].name |
String |
true |
属性名称 |
attributes[].allowInherited |
Integer |
false |
是否允许继承(0.不继承 1.可继承) |
attributes[].answer |
String |
true |
属性值() |
attributes[].askBack |
String |
true |
反问问法 |
attributes[].askBackFlag |
Integer |
true |
反问问法类型 |
attributes[].switchStatus |
Integer |
false |
属性开关 (0.关 1.开) |
attributes[].changeType |
Integer |
false |
修改类型 (0.无修改 1.新增 2.更新 3.删除) |
attributes[].similarList[] |
String |
true |
属性别名 |
attributes[].expressionList[] |
String |
true |
属性表述 |
datumDefaultAnswer |
Array |
true |
知识点缺省回复 |
datumDefaultAnswer.answerType |
Integer |
false |
回复类型(1.部分属性 2.触发属性反问 3.全部属性) |
datumDefaultAnswer.attributeIdList[] |
Integer |
true |
属性ID 回复类型不是全部属性时必填 |
datumRecommendation |
Array |
true |
知识点推荐 |
datumRecommendation.noResultContent |
String |
false |
无结果时返回话术 |
datumRecommendation.recommendationNumber |
Integer |
false |
推荐知识点个数 |
datumSearch |
Object |
true |
知识点搜索 |
datumSearch.noResultContent |
String |
false |
无结果时返回话术 |
datumSearch.recommendationNumber |
Integer |
false |
推荐知识点个数 |
datumSearch.strategies |
Array |
true |
知识点搜索策略 |
datumSearch.strategies[].name |
String |
false |
策略名称 |
datumSearch.strategies[].remark |
String |
true |
策略描述 |
datumSearch.strategies[].clarificationAskContent |
String |
false |
搜索策略问法 |
datumSearch.strategies[].retrievalTarget |
Integer |
false |
检索目标 1: 获取属性 2: 获取知识 |
datumSearch.strategies[].attributeId |
Integer |
true |
属性ID 检索目标为获取属性时必填(只能选一个),获取知识时不填,检索全部知识点 |
datumSearch.strategies[].clarificationContent |
String |
true |
澄清话术 |
datumSearch.strategies[].clarificationRounds |
String |
true |
澄清轮次 |
datumSearch.strategies[].failureContent |
String |
true |
失败话术 |
datumClarify |
Object |
true |
知识点澄清 |
datumClarify.robotId |
Integer |
true |
机器人Id |
datumClarify.templateId |
Integer |
true |
模板Id |
datumClarify.recommendationNumber |
Integer |
true |
知识点推荐个数 |
datumClarify.noResultContent |
String |
true |
无结果时返回话术 |
datumClarify.clarifyType |
Integer |
true |
搜索策略1 属性反问 2策略追问 |
datumClarify.askType |
String |
true |
检索类型 1.优先级 2智能搜索 |
datumClarify.strategies |
Array |
true |
策略名称 |
datumClarify.strategies[].robotId |
Integer |
true |
机器人Id |
datumClarify.strategies[].templateId |
Integer |
true |
模板Id |
datumClarify.strategies[].datumClarifyId |
Integer |
true |
知识点澄清Id |
datumClarify.strategies[].name |
String |
true |
策略名称 |
datumClarify.strategies[].remark |
String |
true |
策略描述 |
datumClarify.strategies[].clarificationAskContent |
String |
true |
搜索策略问法 |
datumClarify.strategies[].retrievalTarget |
Integer |
true |
检索目标 1: 获取属性 2: 获取知识 |
datumClarify.strategies[].attributeId |
Integer |
true |
属性ID 检索目标为获取属性时必填(只能选一个),获取知识时不填,检索全部知识点 |
datumClarify.strategies[].alternativePushContent |
Object |
true |
备选推送开关 |
datumClarify.strategies[].alternativePushStatus.chosen |
Integer |
true |
选择的哪个样式 0 1 2 |
datumClarify.strategies[].alternativePushStatus.style |
String |
true |
样式模板 |
datumClarify.strategies[].alternativePushStatus.labelList |
Array |
true |
标签列表 |
datumClarify.strategies[].alternativePushStatus.labelList[].id |
Integer |
true |
标签Id |
datumClarify.strategies[].alternativePushStatus.labelList[].name |
Integer |
true |
标签名称 |
datumClarify.strategies[].alternativePushStatus.labelList[].content |
Integer |
true |
标签内容 |
datumClarify.strategies[].clarificationContent |
String |
true |
澄清话术 |
datumClarify.strategies[].clarificationRounds |
String |
true |
澄清轮次 |
datumClarify.strategies[].failureContent |
String |
true |
失败话术 |
datumClarify.strategies[].orders |
Integer |
true |
排序优先级 |
请求结果
Path |
Type |
Description |
code |
Integer |
执行结果码 |
message |
String |
执行结果说明 |
data |
Object |
模板信息 |
data[].id |
Integer |
模板ID |
data[].name |
String |
模版名称 |
data[].robotId |
Integer |
机器人ID |
data[].orders |
Integer |
排序 |
data[].parentId |
Integer |
继承模版 |
data[].remark |
String |
模版描述. |
data[].questionAndAnswerSet |
Integer |
模版问答设置(0.无 1.知识点缺省回复 2.知识点澄清 4.知识点推荐 8.知识点搜索) |
data[].similarList[] |
String |
别名 |
data[].attributes |
Array |
属性列表 |
data[].attributes[].id |
Integer |
ID |
data[].attributes[].robotId |
Integer |
机器人ID |
data[].attributes[].templateId |
Integer |
模版ID |
data[].attributes[].name |
String |
属性名称 |
data[].attributes[].allowInherited |
Integer |
是否允许继承(0.不继承 1.可继承) |
data[].attributes[].answer |
String |
属性值() |
data[].attributes[].askBack |
String |
反问问法 |
data[].attributes[].askBackFlag |
Integer |
反问问法类型 |
data[].attributes[].switchStatus |
Integer |
属性开关 (0.关 1.开) |
data[].attributes[].changeType |
Integer |
修改类型 (0.无修改 1.新增 2.更新 3.删除) |
data[].attributes[].similarList[] |
String |
属性别名 |
data[].attributes[].expressionList[] |
String |
属性表述 |
data[].datumDefaultAnswer |
Array |
资料库默认回复 |
data[].datumDefaultAnswer.id |
Integer |
ID |
data[].datumDefaultAnswer.robotId |
Integer |
机器人ID |
data[].datumDefaultAnswer.templateId |
Integer |
模版ID |
data[].datumDefaultAnswer.answerType |
Integer |
回复类型(1.部分属性 2.触发属性反问 3.全部属性) |
data[].datumDefaultAnswer.attributeIdList[] |
Integer |
属性ID 回复类型不是全部属性时必填 |
data[].datumRecommendation |
Array |
知识点推荐 |
data[].datumRecommendation.id |
Integer |
ID |
data[].datumRecommendation.robotId |
Integer |
机器人ID |
data[].datumRecommendation.templateId |
Integer |
模版ID |
data[].datumRecommendation.noResultContent |
String |
无结果时返回话术 |
data[].datumRecommendation.recommendationNumber |
Integer |
推荐知识点个数 |
data[].datumSearch |
Array |
知识点搜索 |
data[].datumSearch.id |
Integer |
ID |
data[].datumSearch.robotId |
Integer |
机器人ID |
data[].datumSearch.templateId |
Integer |
模版ID |
data[].datumSearch.noResultContent |
String |
无结果时返回话术 |
data[].datumSearch.recommendationNumber |
Integer |
推荐知识点个数 |
data[].datumSearch.strategies |
Array |
知识点搜索策略 |
data[].datumSearch.strategies[].id |
Integer |
ID |
data[].datumSearch.strategies[].robotId |
Integer |
机器人ID |
data[].datumSearch.strategies[].templateId |
Integer |
模版ID |
data[].datumSearch.strategies[].datumSearchId |
Integer |
知识点搜索ID |
data[].datumSearch.strategies[].name |
String |
策略名称 |
data[].datumSearch.strategies[].remark |
String |
策略描述 |
data[].datumSearch.strategies[].clarificationAskContent |
String |
搜索策略问法 |
data[].datumSearch.strategies[].retrievalTarget |
Integer |
检索目标 (1. 获取属性 2. 获取知识) |
data[].datumSearch.strategies[].attributeId |
Integer |
属性ID 检索目标为获取属性时必填(只能选一个),获取知识时不填,检索全部知识点 |
data[].datumSearch.strategies[].clarificationContent |
String |
澄清话术 |
data[].datumSearch.strategies[].clarificationRounds |
String |
澄清轮次 |
data[].datumSearch.strategies[].failureContent |
String |
失败话术 |
data[].datumClarify |
Object |
true |
data[].datumClarify.robotId |
Integer |
true |
data[].datumClarify.templateId |
Integer |
true |
data[].datumClarify.recommendationNumber |
Integer |
true |
data[].datumClarify.noResultContent |
String |
true |
data[].datumClarify.clarifyType |
Integer |
true |
data[].datumClarify.askType |
String |
true |
data[].datumClarify.strategies |
Array |
true |
data[].datumClarify.strategies[].robotId |
Integer |
true |
data[].datumClarify.strategies[].templateId |
Integer |
true |
data[].datumClarify.strategies[].datumClarifyId |
Integer |
true |
data[].datumClarify.strategies[].name |
String |
true |
data[].datumClarify.strategies[].remark |
String |
true |
data[].datumClarify.strategies[].clarificationAskContent |
String |
true |
data[].datumClarify.strategies[].retrievalTarget |
Integer |
true |
data[].datumClarify.strategies[].attributeId |
Integer |
true |
data[].datumClarify.strategies[].alternativePushContent |
Object |
true |
data[].datumClarify.strategies[].alternativePushStatus.chosen |
Integer |
true |
data[].datumClarify.strategies[].alternativePushStatus.style |
String |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList |
Array |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList[].id |
Integer |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList[].name |
Integer |
true |
data[].datumClarify.strategies[].alternativePushStatus.labelList[].content |
Integer |
true |
data[].datumClarify.strategies[].clarificationContent |
String |
true |
data[].datumClarify.strategies[].clarificationRounds |
String |
true |
data[].datumClarify.strategies[].failureContent |
String |
true |
data[].datumClarify.strategies[].orders |
Integer |
true |
示例
$ curl 'https://km.udesk.cn/api/v1/datumTemplates?email=admin@udesk.cn×tamp=1559016113&sign=f16d7f6fcc3fbab73855f4510cd4904f0f60e258' -i -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{
"name": "小小模版",
"robotId": 83,
"similarList": ["模版别s名"],
"parentId": 21,
"remark": "模版描述啊",
"questionAndAnswerSet": 15,
"attributes": [{
"name": "模版树行2",
"similarList": ["模版树行2别名", "模版树行2别名2"],
"allowInherited": 1,
"answer": "<p>模版树行2值</p>",
"askBack": "请问您想知道哪个测试下新建模版的模版树行2呢?",
"askBackFlag": 0,
"switchStatus": 1,
"expressionList": ["你好", "haha"],
"changeType": 1
}, {
"name": "模版属性",
"similarList": ["模版属性别名", "模版属性别名2"],
"allowInherited": 1,
"answer": "<p>模版属性属性值</p>",
"askBack": "请问您想知道哪个测试下新建模版的模版属性呢?",
"askBackFlag": 0,
"switchStatus": 1,
"expressionList": ["模版属性表述", "模版属性表述2"],
"changeType": 1
}],
"datumDefaultAnswer": {
"answerType": 3
},
"datumRecommendation": {
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问",
"recommendationNumber": 3
},
"datumSearch": {
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问",
"recommendationNumber": 3,
"strategies": [{
"name": "策略2",
"remark": "策略2描述",
"clarificationAskContent": "策略2描述是的",
"retrievalTarget": 2,
"clarificationContent": "策略2描述澄清话树",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问"
}, {
"name": "搜索策略",
"remark": "搜索策略描述",
"clarificationAskContent": "检索问法",
"retrievalTarget": 2,
"clarificationContent": "澄清话树啊",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问"
}]
}
}'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"data": {
"id": 56,
"name": "小小模版",
"robotId": 83,
"orders": 1,
"parentId": 21,
"parentIds": "0-21",
"remark": "模版描述啊",
"questionAndAnswerSet": 15,
"attributes": [
{
"id": 135,
"name": "模版树行2",
"robotId": 83,
"templateId": 56,
"similarList": [
"模版树行2别名",
"模版树行2别名2"
],
"askBack": "请问您想知道哪个测试下新建模版的模版树行2呢?",
"askBackFlag": 0,
"orders": 1,
"allowInherited": 1,
"switchStatus": 1,
"answer": "<p>模版树行2值</p>",
"expressionList": [
"你好",
"haha"
]
},
{
"id": 136,
"name": "模版属性",
"robotId": 83,
"templateId": 56,
"similarList": [
"模版属性别名",
"模版属性别名2"
],
"askBack": "请问您想知道哪个测试下新建模版的模版属性呢?",
"askBackFlag": 0,
"orders": 2,
"allowInherited": 1,
"switchStatus": 1,
"answer": "<p>模版属性属性值</p>",
"expressionList": [
"模版属性表述",
"模版属性表述2"
]
}
],
"similarList": [
"模版别s名"
],
"datums": [],
"datumDefaultAnswer": {
"id": null,
"answerType": 3,
"robotId": 83,
"templateId": 56,
"attributeIdList": null
},
"datumRecommendation": {
"id": 3,
"robotId": 83,
"templateId": 56,
"recommendationNumber": 3,
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问"
},
"datumSearch": {
"id": 3,
"robotId": 83,
"templateId": 56,
"recommendationNumber": 3,
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问",
"strategies": [
{
"id": 1,
"robotId": 83,
"templateId": 56,
"datumSearchId": 3,
"name": "策略2",
"remark": "策略2描述",
"retrievalTarget": 2,
"attributeId": 1,
"clarificationAskContent": "策略2描述是的",
"clarificationContent": "策略2描述澄清话树",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问",
"orders": 1
},
{
"id": 2,
"robotId": 83,
"templateId": 56,
"datumSearchId": 3,
"name": "搜索策略",
"remark": "搜索策略描述",
"retrievalTarget": 2,
"attributeId": 2,
"clarificationAskContent": "检索问法",
"clarificationContent": "澄清话树啊",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问",
"orders": 2
}
]
}
}
}
更新模版接口
请求地址
- PUT /v1/datumTemplates/:id
请求参数
Request fields
path |
Type |
Optional |
Description |
id |
Integer |
false |
ID |
name |
String |
false |
模版名称 |
robotId |
Integer |
false |
机器人ID. |
orders |
Integer |
true |
排序 |
parentId |
Integer |
false |
继承模版(如果是一级模版则为0,非一级模版需要传父模版ID) |
remark |
String |
true |
模版描述(描述长度不能超过255字符 |
questionAndAnswerSet |
Integer |
false |
模版问答设置(0.无 1.知识点缺省回复 2.知识点澄清 4.知识点推荐 8.知识点搜索) |
similarList[] |
String |
true |
别名 |
attributes |
Array |
true |
属性列表 |
attributes[].id |
Integer |
false |
ID |
attributes[].robotId |
Integer |
false |
机器人ID |
attributes[].templateId |
Integer |
false |
模版ID |
attributes[].name |
String |
true |
属性名称 |
attributes[].allowInherited |
Integer |
false |
是否允许继承(0.不继承 1.可继承) |
attributes[].answer |
String |
true |
属性值() |
attributes[].askBack |
String |
true |
反问问法 |
attributes[].askBackFlag |
Integer |
true |
反问问法类型 |
attributes[].switchStatus |
Integer |
false |
属性开关 (0.关 1.开) |
attributes[].changeType |
Integer |
false |
修改类型 (0.无修改 1.新增 2.更新 3.删除) |
attributes[].similarList[] |
String |
true |
属性别名 |
attributes[].expressionList[] |
String |
true |
属性表述 |
datumDefaultAnswer |
Array |
true |
资料库默认回复 |
datumDefaultAnswer.id |
Integer |
false |
ID |
datumDefaultAnswer.robotId |
Integer |
false |
机器人ID |
datumDefaultAnswer.templateId |
Integer |
false |
模版ID |
datumDefaultAnswer.answerType |
Integer |
false |
回复类型(1.部分属性 2.触发属性反问 3.全部属性) |
datumDefaultAnswer.attributeIdList[] |
Integer |
true |
属性ID 回复类型不是全部属性时必填 |
datumRecommendation |
Array |
true |
知识点推荐 |
datumRecommendation.id |
Integer |
false |
ID |
datumRecommendation.robotId |
Integer |
false |
机器人ID |
datumRecommendation.templateId |
Integer |
false |
模版ID |
datumRecommendation.noResultContent |
String |
false |
无结果时返回话术 |
datumRecommendation.recommendationNumber |
Integer |
false |
推荐知识点个数 |
datumSearch |
Array |
true |
知识点搜索 |
datumSearch.id |
Integer |
false |
ID |
datumSearch.robotId |
Integer |
false |
机器人ID |
datumSearch.templateId |
Integer |
false |
模版ID |
datumSearch.noResultContent |
String |
false |
无结果时返回话术 |
datumSearch.recommendationNumber |
Integer |
false |
推荐知识点个数 |
datumSearch.strategies |
Array |
true |
知识点搜索策略 |
datumSearch.strategies[].id |
Integer |
false |
ID |
datumSearch.strategies[].robotId |
Integer |
false |
机器人ID |
datumSearch.strategies[].templateId |
Integer |
false |
模版ID |
datumSearch.strategies[].datumSearchId |
Integer |
false |
知识点搜索ID |
datumSearch.strategies[].name |
String |
false |
策略名称 |
datumSearch.strategies[].remark |
String |
true |
策略描述 |
datumSearch.strategies[].clarificationAskContent |
String |
false |
搜索策略问法 |
datumSearch.strategies[].retrievalTarget |
Integer |
false |
检索目标 1. 获取属性 2. 获取知识 |
datumSearch.strategies[].attributeId |
Integer |
true |
属性ID (检索目标为获取属性时必填(只能选一个),获取知识时不填,检索全部知识点) |
datumSearch.strategies[].clarificationContent |
String |
true |
澄清话术 |
datumSearch.strategies[].clarificationRounds |
String |
true |
澄清轮次 |
datumSearch.strategies[].failureContent |
String |
true |
失败话术 |
datumClarify |
Object |
true |
知识点澄清 |
datumClarify.robotId |
Integer |
true |
机器人Id |
datumClarify.templateId |
Integer |
true |
模板Id |
datumClarify.recommendationNumber |
Integer |
true |
知识点推荐个数 |
datumClarify.noResultContent |
String |
true |
无结果时返回话术 |
datumClarify.clarifyType |
Integer |
true |
搜索策略1 属性反问 2策略追问 |
datumClarify.askType |
String |
true |
检索类型 1.优先级 2智能搜索 |
datumClarify.strategies |
Array |
true |
策略名称 |
datumClarify.strategies[].robotId |
Integer |
true |
机器人Id |
datumClarify.strategies[].templateId |
Integer |
true |
模板Id |
datumClarify.strategies[].datumClarifyId |
Integer |
true |
知识点澄清Id |
datumClarify.strategies[].name |
String |
true |
策略名称 |
datumClarify.strategies[].remark |
String |
true |
策略描述 |
datumClarify.strategies[].clarificationAskContent |
String |
true |
搜索策略问法 |
datumClarify.strategies[].retrievalTarget |
Integer |
true |
检索目标 1: 获取属性 2: 获取知识 |
datumClarify.strategies[].attributeId |
Integer |
true |
属性ID 检索目标为获取属性时必填(只能选一个),获取知识时不填,检索全部知识点 |
datumClarify.strategies[].alternativePushContent |
Object |
true |
备选推送开关 |
datumClarify.strategies[].alternativePushStatus.chosen |
Integer |
true |
选择的哪个样式 0 1 2 |
datumClarify.strategies[].alternativePushStatus.style |
String |
true |
样式模板 |
datumClarify.strategies[].alternativePushStatus.labelList |
Array |
true |
标签列表 |
datumClarify.strategies[].alternativePushStatus.labelList[].id |
Integer |
true |
标签Id |
datumClarify.strategies[].alternativePushStatus.labelList[].name |
Integer |
true |
标签名称 |
datumClarify.strategies[].alternativePushStatus.labelList[].content |
Integer |
true |
标签内容 |
datumClarify.strategies[].clarificationContent |
String |
true |
澄清话术 |
datumClarify.strategies[].clarificationRounds |
String |
true |
澄清轮次 |
datumClarify.strategies[].failureContent |
String |
true |
失败话术 |
datumClarify.strategies[].orders |
Integer |
true |
排序优先级 |
请求结果
Path |
Type |
Description |
code |
Integer |
状态码 |
message |
String |
返回信息 |
visible |
Boolean |
|
data |
Object |
返回内容 |
示例
$ curl 'https://km.udesk.cn/api/v1/datumTemplates/56?email=admin@udesk.cn×tamp=1559022283&sign=aa8164470dff8468e6129c1e7d5767651cdedd7c' -i -X PUT -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{
"id":56,
"name": "小小模版",
"robotId": 83,
"similarList": ["模版别s名"],
"parentId": 21,
"remark": "模版描述啊",
"questionAndAnswerSet": 15,
"attributes": [{
"name": "模版树行2",
"similarList": ["模版树行2别名", "模版树行2别名2"],
"allowInherited": 1,
"answer": "<p>模版树行2值</p>",
"askBack": "请问您想知道哪个测试下新建模版的模版树行2呢?",
"askBackFlag": 0,
"switchStatus": 1,
"expressionList": ["你好", "haha"],
"changeType": 1
}, {
"name": "模版属性",
"similarList": ["模版属性别名", "模版属性别名2"],
"allowInherited": 1,
"answer": "<p>模版属性属性值</p>",
"askBack": "请问您想知道哪个测试下新建模版的模版属性呢?",
"askBackFlag": 0,
"switchStatus": 1,
"expressionList": ["模版属性表述", "模版属性表述2"],
"changeType": 1
}],
"datumDefaultAnswer": {
"answerType": 3
},
"datumRecommendation": {
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问",
"recommendationNumber": 3
},
"datumSearch": {
"noResultContent": "对不起,根据您的条件无法找到知识点,请重新提问",
"recommendationNumber": 3,
"strategies": [{
"name": "策略2",
"remark": "策略2描述",
"clarificationAskContent": "策略2描述是的",
"retrievalTarget": 2,
"clarificationContent": "策略2描述澄清话树",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问"
}, {
"name": "搜索策略",
"remark": "搜索策略描述",
"clarificationAskContent": "检索问法",
"retrievalTarget": 2,
"clarificationContent": "澄清话树啊",
"clarificationRounds": 2,
"failureContent": "对不起,搜索失败,请重新提问"
}]
}
}'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"exception":null,
"paging":null,
"data": null
}
获取模版列表接口
请求地址
- POST /v1/datumTemplates/search
请求参数
Request fields
Path |
Type |
Optional |
Description |
pageNum |
Integer |
true |
页码 |
pageSize |
Integer |
true |
每页数量 |
robotId |
Integer |
false |
机器人ID |
leafFlag |
Integer |
true |
模版类型(1. 叶子模版 2. 所有模版)(默认为叶子模版) |
keyword |
String |
true |
关键字搜索 |
请求结果
Path |
Type |
Description |
code |
Integer |
状态码 |
message |
String |
返回信息 |
data |
Object |
返回内容 |
data[].id |
Integer |
模版ID |
data[].name |
String |
模版名称 |
data[].robotId |
Integer |
机器人ID |
data[].parentId |
Integer |
父模版ID |
data[].leafFlag |
Integer |
是否是叶子模版(0. 不是 1. 是) |
data[].rootId |
Integer |
根模版ID |
data[].remark |
String |
模版描述. |
data[].questionAndAnswerSet |
Integer |
模版问答设置(0.无 1.知识点缺省回复 2.知识点澄清 4.知识点推荐 8.知识点搜索) |
data[].similarList[] |
String |
模版别名 |
示例
$ curl 'https://km.udesk.cn/api/v1/datumTemplates/search?email=admin@udesk.cn×tamp=1578367138&sign=4e6cfa92d0ef5f5ed214e7dfa4be766cc1b86254' -i -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{
"pageNum":1,
"pageSize":10,
"robotId":83,
"keyword":"国"
}'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"paging": {
"pageNum": 1,
"pageSize": 10,
"total": 1
},
"data": [
{
"id": 127,
"name": "国家",
"robotId": 83,
"parentId": 0,
"remark": "",
"questionAndAnswerSet": 15,
"leafFlag": 1,
"rootId": 127,
"similarList": []
}
]
}
知识点删除接口
请求地址
请求参数
Request parameters
Parameter |
Type |
Optional |
Description |
id |
Integer |
false |
知识点id |
请求结果
示例
$ curl 'https://km.udesk.cn/api/v1/datums/2?email=admin@udesk.cn×tamp=1573026139&sign=31322f38618d50ee671ef073305ac9917e652374' -i -X DELETE -H 'Content-Type: application/json' -H 'Accept: application/json'
获取知识点详情接口
请求地址
请求参数
Request fields
path |
Type |
Optional |
Description |
id |
Integer |
false |
知识点id |
请求结果
Path |
Type |
Description |
code |
Integer |
执行结果码 |
message |
String |
执行结果说明 |
data |
Object |
知识点信息 |
data[].id |
Array |
知识点ID |
data[].robotId |
Integer |
机器人ID |
data[].name |
String |
知识点名称 |
data[].displayName |
String |
知识点显示名称 |
data[].templateId |
Integer |
模版ID |
data[].templateName |
String |
模版名称 |
data[].similarList[] |
String |
同义词 |
data[].categoryId |
Integer |
分类ID |
data[].orders |
Integer |
排序ID |
dada[].attributes |
Array |
知识点属性值 |
data[].attributes[].id |
Integer |
ID |
data[].attributes[].name |
String |
属性名 |
data[].attributes[].robotId |
Integer |
机器人ID |
data[].attributes[].datumId |
Integer |
知识点ID |
data[].attributes[].templateId |
Integer |
模版ID |
data[].attributes[].templateAttributeId |
Integer |
模版属性ID |
data[].attributes[].switchStatus |
Integer |
是否打开(0.关 1.开) |
data[].attributes[].answer |
String |
富文本答案 |
data[].attributes[].srcType |
Integer |
来源类型(0.自定义 1.继承模版属性值) |
示例
$ curl 'https://km.udesk.cn/api/v1/datums/2?email=admin@udesk.cn×tamp=1559022283&sign=aa8164470dff8468e6129c1e7d5767651cdedd7c' -i -X GET -H 'Content-Type: application/json' -H 'Accept: application/json'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"data": {
"id": 1,
"name": "Udesk测试名称",
"similarList": [],
"robotId": 83,
"templateId": 45,
"templateName": "Udesk测试模板",
"categoryId": 23,
"orders": null,
"category": null,
"attributes": [
{
"id": 330,
"name": "Udesk知识点名称",
"robotId": 83,
"datumId": 1,
"templateId": 45,
"templateAttributeId": 53,
"switchStatus": null,
"answer": "Udesk知识点答案",
"srcType": 0
}
]
}
}
新建知识点接口
请求地址
请求参数
Request fields
Path |
Type |
Optional |
Description |
robotId |
Integer |
false |
机器人ID |
name |
String |
false |
知识点名称 |
templateId |
Integer |
false |
模版ID |
categoryId |
Integer |
false |
分类ID |
displayName |
String |
false |
知识点显示名称 |
### 请求结果 |
|
|
|
Path |
Type |
Description |
|
--- |
--- |
--- |
|
code |
Integer |
执行结果码 |
|
message |
String |
执行结果说明 |
|
data |
Object |
知识点信息 |
|
data[].id |
Array |
知识点ID |
|
data[].robotId |
Integer |
机器人ID |
|
data[].name |
String |
知识点名称 |
|
data[].displayName |
String |
知识点显示名称 |
|
data[].templateId |
Integer |
模版ID |
|
data[].templateName |
String |
模版名称 |
|
data[].similarList[] |
String |
同义词 |
|
data[].categoryId |
Integer |
分类ID |
|
data[].orders |
Integer |
排序ID |
|
dada[].attributes |
Array |
知识点属性值 |
|
data[].attributes[].id |
Integer |
知识点属性值ID |
|
data[].attributes[].name |
String |
属性名 |
|
data[].attributes[].robotId |
Integer |
机器人ID |
|
data[].attributes[].datumId |
Integer |
知识点ID |
|
data[].attributes[].templateId |
Integer |
模版ID |
|
data[].attributes[].templateAttributeId |
Integer |
模版属性ID |
|
data[].attributes[].switchStatus |
Integer |
是否打开(0.关 1.开) |
|
data[].attributes[].answer |
String |
富文本答案 |
|
data[].attributes[].srcType |
Integer |
来源类型(0.自定义 1.继承模版属性值) |
|
示例
curl 'http://www.udesk.cn/v1/datums?email=admin@udesk.cn×tamp=1573024943&sign=b5236e4bc2e73e529d544ace070f8c31369ca9dd' -i -X PUT -H 'Content-Type: application/json' -d '{
"name":"新建知识点了哦",
"robotId":83,
"templateId":56,
"categoryId":23
}'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"data": {
"id": 3,
"name": "Udesk测试知识点",
"similarList": [],
"robotId": 83,
"templateId": 56,
"templateName": "Udesk测试模板",
"categoryId": 23,
"orders": 1,
"category": 23,
"attributes": [
{
"id": 1,
"name": "投诉建议",
"robotId": 83,
"datumId": 3,
"templateId": 56,
"templateAttributeId": 33,
"switchStatus": null,
"answer": null,
"srcType": null
},
{
"id": 2,
"name": "模版树行2",
"robotId": 83,
"datumId": 3,
"templateId": 56,
"templateAttributeId": 135,
"switchStatus": null,
"answer": "<p>模版树行2值</p>",
"srcType": 1
}
]
}
}
请求失败原因
{
"code": 400,
"message": "{具体的异常信息}",
"visible": false
}
message |
description |
"数据已删除或不存在" |
对应ID的知识点已不存在 |
更新知识点接口
请求地址
请求参数
Request fields
path |
Type |
Optional |
Description |
robotId |
Integer |
false |
机器人ID |
name |
String |
false |
知识点名称 |
displayName |
String |
false |
知识点显示名称 |
templateId |
Integer |
false |
模版ID |
templateName |
String |
false |
模版名称 |
similarList[] |
String |
true |
同义词 |
categoryId |
Integer |
false |
分类ID |
orders |
Integer |
false |
排序ID |
attributes |
Array |
true |
知识点属性值(知识点属性值只能修改,不能新增和删除,通过知识点详情获得) |
attributes[].id |
Integer |
false |
ID |
attributes[].name |
String |
false |
属性名 |
attributes[].robotId |
Integer |
false |
机器人ID |
attributes[].datumId |
Integer |
false |
知识点ID |
attributes[].templateId |
Integer |
false |
模版ID |
attributes[].templateAttributeId |
Integer |
false |
模版属性ID |
attributes[].switchStatus |
Integer |
false |
是否打开(0.关 1.开) |
attributes[].answer |
String |
true |
富文本答案 |
attributes[].srcType |
Integer |
false |
来源类型(0.自定义 1.继承模版属性值)(如果属性没有默认值或者与属性默认值不同,srcType为0) |
请求结果
Path |
Type |
Description |
code |
Integer |
状态码 |
message |
String |
返回信息 |
data |
Object |
返回内容 |
示例
$ curl 'https://km.udesk.cn/api/v1/datums/3?email=admin@udesk.cn×tamp=1559022283&sign=aa8164470dff8468e6129c1e7d5767651cdedd7c' -i -X PUT -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{
"id": 3,
"name": "又新建知识点了哦",
"similarList": [],
"robotId": 83,
"templateId": 56,
"templateName": null,
"categoryId": 23,
"orders": null,
"category": null,
"attributes": [
{
"id": 1,
"name": "投诉建议",
"robotId": 83,
"datumId": 3,
"templateId": 56,
"templateAttributeId": 33,
"switchStatus": null,
"answer": null,
"srcType": null
},
{
"id": 2,
"name": "模版树行2",
"robotId": 83,
"datumId": 3,
"templateId": 56,
"templateAttributeId": 135,
"switchStatus": null,
"answer": "<p>模版树行2值</p>",
"srcType": 1
}
]
}'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"data": {
"id": 3,
"name": "又新建知识点了哦",
"similarList": [],
"robotId": 83,
"templateId": 56,
"templateName": null,
"categoryId": 23,
"orders": null,
"category": null,
"attributes": [
{
"id": 1,
"name": "投诉建议",
"robotId": 83,
"datumId": 3,
"templateId": 56,
"templateAttributeId": 33,
"switchStatus": null,
"answer": null,
"srcType": null
},
{
"id": 2,
"name": "模版树行2",
"robotId": 83,
"datumId": 3,
"templateId": 56,
"templateAttributeId": 135,
"switchStatus": null,
"answer": "<p>模版树行2值</p>",
"srcType": 1
}
]
}
}
获取分类列表接口
请求地址
- POST /v1/datumCategories/search
请求参数
Request fields
Path |
Type |
Optional |
Description |
pageNum |
Integer |
true |
页码 |
pageSize |
Integer |
true |
每页数量 |
robotId |
Integer |
false |
机器人ID |
keyword |
String |
true |
关键字搜索 |
请求结果
Path |
Type |
Description |
code |
Integer |
执行结果码 |
message |
String |
执行结果说明 |
data |
Object |
分类信息 |
data[].id |
Integer |
分类ID |
data[].name |
String |
分类名称 |
data[].robotId |
Integer |
机器人ID |
data[].parentId |
Integer |
父分类ID |
示例
$ curl 'https://km.udesk.cn/api/v1/datumCategories/search?email=admin@udesk.cn×tamp=1578367614&sign=5548fd5ad06564b64f6925aeed99ec937d17f444' -i -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{
"pageNum":1,
"pageSize":10,
"robotId":83,
"keyword":"阿"
}'
返回
{
"code": 200,
"message": "OK",
"visible": false,
"paging": {
"pageNum": 1,
"pageSize": 10,
"total": 1
},
"data": [
{
"id": 26,
"name": "阿里郎",
"robotId": 83,
"parentId": 9
}
]
}