基础管理 API
# 基础管理 API
# 座席管理
# ● 查询座席设置
说明:查询座席的分机账号/电话号码/整理时长。
接口地址: https://openapi.soboten.com/callservice/v6/cc-config/api/agents?agentType={agentType}&agent={agent}
请求方法: GET
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(query string)
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agent | String | 是 | 座席UUID/工号 |
agentType | int | 是 | 座席参数类别 0:座席工号; 1:座席uuid |
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentUUID | String | 是 | 座席UUID |
agentID | String | 是 | 座席工号 |
agentName | String | 否 | 座席名称 |
ext | String | 否 | 绑定分机号 |
phone | String | 否 | 绑定电话号码 |
wrapUpType | int | 否 | 话后整理类型 1:整体; 2:个人 |
wrapUpTime | int | 否 | 话后整理时长(秒) |
响应示例:
{
"apiVersion": "6.2",
"status": "Success",
"message": "ok",
"code": 200,
"reason": "OK",
"kind": "Agent",
"data": {
"agentUUID": "bd4630df3550552ba7c16f27ae9a39cb", //座席UUID
"agentID": "1111", //座席工号
"agentName": "test", //座席姓名
"phone": "13800138000", //座席手机号码
"ext": "1000", //座席分机号码
"wrapUpType": 2, // 1:整体; 2:个人
"wrapUpTime":60 // 整理时长(秒)
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# ● 修改座席设置
说明:当座席需要进行电话业务时,可以设置座席对应的分机账号/电话号码/整理时长。
接口地址: https://openapi.soboten.com/callservice/v6/cc-config/api/agents
请求方法: POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agent | String | 是 | 座席UUID/工号 |
agentType | int | 是 | 座席参数类别 0:座席工号; 1:座席uuid |
wrapUpTime | int | 是 | 话后整理时长(秒) |
phone | String | 否 | 手机号 |
ext | String | 否 | 分机号 |
wrapUpType | int | 否 | 话后整理类型 1:整体; 2:个人 |
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentName | String | 是 | 座席名称 |
ext | String | 是 | 绑定分机号 |
phone | String | 是 | 绑定电话号码 |
wrapUpType | int | 是 | 话后整理类型 1:整体; 2:个人 |
wrapUpTime | int | 是 | 整理时长(秒) |
agentUUID | String | 否 | 座席UUID |
agentID | String | 否 | 座席工号 |
响应示例:
{
"apiVersion": "6.2",
"status": "Success",
"message": "ok",
"code": 200,
"reason": "OK",
"kind": "Agent",
"data": {
"agentUUID": "bd4630df3550552ba7c16f27ae9a39cb", //座席UUID
"agentID": "1111", //座席工号
"agentName": "test", //座席姓名
"phone": "13800138000", //座席手机号码
"ext": "1000", //座席分机号码
"wrapUpType": 2, // 1:整体; 2:个人
"wrapUpTime":60 // 整理时长(秒)
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# ● 解绑座席设置
说明:释放座席对应的分机账号/电话号码。
接口地址: https://openapi.soboten.com/callservice/v6/cc-config/api/agents/unbind
请求方法: POST
请求(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agent | String | 是 | 座席UUID/工号 |
agentType | int | 是 | 座席参数类别 0:座席工号; 1:座席uuid |
numberType | int | 否 | 号码类别; 0:分机; 1:电话号码; 2:手机+电话号码 |
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentUUID | String | 是 | 座席UUID |
agentID | String | 否 | 座席工号 |
agentName | String | 否 | 座席名称 |
ext | String | 否 | 绑定分机号 |
phone | String | 否 | 绑定电话号码 |
wrapUpType | int | 否 | 话后整理类型 1:整体; 2:个人 |
wrapUpTime | int | 否 | 话后整理时长 整理时长(秒) |
响应示例:
{
"apiVersion": "6.2",
"status": "Success",
"message": "ok",
"code": 200,
"reason": "OK",
"kind": "Agent",
"data": {
"agentUUID": "bd4630df3550552ba7c16f27ae9a39cb", //座席UUID
"agentID": "1111", //座席工号
"agentName": "test", //座席姓名
"phone": "13800138000", //座席手机号码
"ext": "1000", //座席分机号码
"wrapUpType": 2, // 1:整体; 2:个人
"wrapUpTime":60 // 整理时长(秒)
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# ● 查询呼叫座席列表
说明:查询企业具有呼叫权限的全部座席。
接口地址: https://openapi.soboten.com/callservice/v6/cc-config/api/agents/call/_search
请求方法: POST
请求(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentName | String | 否 | 座席姓名 支持模糊查询 |
agentID | String | 否 | 操作座席工号 支持模糊查询 |
queue | String | 否 | 技能组组号 不支持模糊查询 |
ext | String | 否 | 绑定分机号 支持模糊查询 |
agentStatus | int | 否 | 座席工作状态 |
返回参数
- List集合
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentUUID | String | 是 | 座席UUID |
agentID | String | 否 | 座席工号 |
agentName | String | 否 | 座席名称 |
ext | String | 否 | 分机号 |
agentPhone | String | 否 | 电话号码 |
loginStatus | Integer | 否 | 登录状态 |
notReadyReasonCode | Integer | 否 | 置忙原因 |
createTime | String | 否 | 创建时间 |
updateTime | String | 否 | 更新时间 |
响应示例:
{
"apiVersion": "6.3",
"status": "Success",
"message": "ok",
"code": 200,
"reason": "OK",
"kind": "Agent",
"data": [{
"agentUUID": "bd4630df3550552ba7c16f27ae9a39cb",
"agentID": "1111",
"agentName": "test01",
"ext": "1000",
"agentPhone": "138xxxxxxxx",
"loginStatus": 1,
"notReadyReasonCode": 0,
"createTime": "2022-09-14 10:00:01",
"updateTime": "2022-09-14 10:00:01"
},{
"agentUUID": "d2a6a9fb2ab2470cba9af6b6774ef858",
"agentID": "2222",
"agentName": "test02",
"ext": "1001",
"agentPhone": "186xxxxxxxx",
"loginStatus": 2,
"notReadyReasonCode":11,
"createTime": "2022-08-14 12:43:01",````````
"updateTime": "2022-09-10 08:31:46"
}]
}
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
# 技能组管理
# ● 查询呼叫技能组列表
说明:查询呼叫技能组列表
接口地址: https://openapi.soboten.com/callservice/v6/cc-config/api/queues/_search
请求方法: POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
pageSize | int | 否 | 分页大小, 默认为10 |
currPage | int | 否 | 页码, 默认为1 |
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
queueID | String | 是 | 技能组编号 |
queueName | String | 否 | 技能组名称 |
响应示例:
{
"apiVersion":"6.3.0",
"status":"Success",
"code":200,
"message":"请求服务成功",
"reason":"",
"kind":"QueueInfo",
"metaData":
{
},
"data":
{
"list":
[
{
"queueID":"1111",
"queueName":"技能组1"
},
{
"queueID":"2222",
"queueName":"技能组2"
],
"currPage":1,
"pageSize":50,
"total":21
}
}
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
# ● 新增技能组
接口地址:https://openapi.soboten.com/callservice/v6/cc-config/api/queue
请求方法:POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
queueName | String | 是 | 技能组名称 |
queueID | String | 是 | 技能组组号 |
queueWeight | String | 否 | 技能组权重 |
请求范例 :
{"queueName":"1130技能组","queueID":"1234","queueWeight":"1"}
返回体
参数 | 类型 | 描述 |
---|---|---|
queueName | String | 技能组名称 |
queueID | String | 技能组组号 |
queueWeight | String | 技能组权重 |
响应示例:
{
"apiVersion": "6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "请求服务成功",
"kind": "ApiQueue",
"metaData": {},
"data": {
"queueName": "1130技能组",
"queueID": "1234",
"queueWeight": "1"
},
"retMsg": "请求服务成功",
"retCode": "000000"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# ● 删除技能组
接口地址:https://openapi.soboten.com/callservice/v6/cc-config/api/queue
请求方法:DELETE
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
queueID | String | 是 | 技能组组号 |
请求范例 :
{"queueID":"1234"}
返回体
参数 | 类型 | 描述 |
---|
响应示例:
{
"apiVersion": "6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "请求服务成功",
"kind": "QueueInfo",
"metaData": {},
"data": {},
"retMsg": "请求服务成功",
"retCode": "000000"
}
2
3
4
5
6
7
8
9
10
11
12
# ● 查询技能组成员
接口地址:https://openapi.soboten.com/callservice/v6/cc-config/api/queue/agents/search
请求方法:POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentType | String | 否 | 接口座席参数类别 |
queueID | String | 否 | 技能组组号 |
请求范例 :
{"queueID":"1234","agentType":"1"}
返回体
参数 | 类型 | 描述 |
---|---|---|
queueName | String | 技能组名称 |
queueID | String | 技能组组号 |
queueWeight | int | 技能组权重 |
agentCount | int | 技能组中加入的座席数 |
agents | List | 座席集合 |
agents
参数 | 类型 | 描述 |
---|---|---|
agent | String | 座席 |
agentName | String | 座席名称 |
level | String | 座席技能值 |
checkin | Boolean | 是否默认签入 |
响应示例:
{
"apiVersion": "6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "请求服务成功",
"kind": "List",
"metaData": {},
"data": [
{
"queueName": "呼叫Group1",
"queueID": "0000",
"queueWeight": 0,
"agentCount": 6,
"agents": [
{
"agent": "cef499bccbf44e11a6e78d398cfcce53",
"agentName": "nicole-中途岛",
"level": "1",
"checkin": false
},
{
"agent": "0d0132473a7f46c390d1f6441c139980",
"agentName": "venus-蒙罗维亚",
"level": "1",
"checkin": true
},
{
"agent": "4bd9716e859f4cdaa58218d97776eb0e",
"agentName": "odin-德黑兰",
"level": "1",
"checkin": true
},
{
"agent": "5f98ae6f03ca48c1a9d36d747a736211",
"agentName": "zane-伦敦",
"level": "1",
"checkin": true
},
{
"agent": "f3cf4f25fa12483d81cbb764e4b2dfb6",
"agentName": "纪才",
"level": "1",
"checkin": true
},
{
"agent": "0910ba8d7bd243a5aa86f0b5bbc77b10",
"agentName": "patton-中途岛",
"level": "1",
"checkin": true
}
]
}
],
"retMsg": "请求服务成功",
"retCode": "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
50
51
52
53
54
55
56
57
# ● 批量更新技能组
接口地址:https://openapi.soboten.com/callservice/v6/cc-config/api/queue/agents
请求方法:POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentType | String | 否 | 接口座席参数类别 |
list | List | 否 | 技能组集合 |
技能组集合QueueCollect
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
queueID | String | 是 | 技能组组号 |
queueName | String | 否 | 技能组名称 |
queueWeight | String | 否 | 技能组权重 |
add | List | 否 | 新增/覆盖座席集合 |
remove | List | 否 | 移除座席集合 |
座席信息集合AgentCollect
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agent | String | 是 | 座席 |
level | Integer | 否 | 座席技能值 |
checkin | Boolean | 否 | 是否默认签入 |
请求范例 :
{
"list": [{
"queueID": "3455",
"queueWeight": "0",
"queueName": "哈哈哈哈",
"add": [{
"agent": "69351d38049342d38fad2b3a645d574f",
"level": 1,
"checkin": true
}],
"remove": [{
"agent": "3c7498a22d55447aa80344ab1f0e9e59",
"level": 1,
"checkin": true
}]
}]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
返回体
参数 | 类型 | 描述 |
---|---|---|
list | List | 技能组集合 |
技能组集合QueueCollect
参数 | 类型 | 描述 |
---|---|---|
queueID | String | 技能组组号 |
queueName | String | 技能组名称 |
queueWeight | String | 技能组权重 |
add | List | 新增/覆盖座席集合集合 |
remove | List | 移除座席集合 |
座席信息集合AgentCollect
参数 | 类型 | 描述 |
---|---|---|
agent | String | 座席 |
level | Integer | 座席技能值 |
checkin | Boolean | 是否默认签入 |
响应示例:
{
"apiVersion": "6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "请求服务成功",
"kind": "ApiQueueAgent",
"metaData": {},
"data": {
"agent": null,
"agentType": "1",
"operator": null,
"list": [
{
"queueID": "1234",
"queueName": "哈哈哈哈",
"queueWeight": "0",
"add": [
{
"agent": "01651b3a13b94d7d86a20800544895e0",
"level": 1,
"checkin": true
}
],
"remove": [
{
"agent": "0910ba8d7bd243a5aa86f0b5bbc77b10",
"level": 1,
"checkin": true
}
]
}
]
},
"retMsg": "请求服务成功",
"retCode": "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
# 分机管理
# ● 查询分机列表
说明:查询分机列表
接口地址: https://openapi.soboten.com/callservice/v6/cc-config/api/exts/_search
请求方法: POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
bindStatus | int | 否 | 绑定状态,0:未绑定,1:已绑定 |
pageSize | int | 否 | 分页大小, 默认为10 |
currPage | int | 否 | 页码, 默认为1 |
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ext | String | 是 | 分机号 |
password | String | 是 | 分机密码 |
bindStatus | String | 是 | 绑定状态,0:未绑定,1:已绑定 |
bindTime | long | 否 | 绑定时间 毫秒 |
agentUUID | String | 否 | 座席唯一id |
agentName | String | 否 | 座席名称 |
langCodeTxt | String | 是 | 语言编码格式,Opus,G.711 alaw,G.711 ulaw |
响应示例:
{
"apiVersion": "6.3.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "",
"kind": "Ext",
"metaData": {},
"data": {
"list": [
{
"ext": "5002",
"password": "123456",
"bindStatus": 1,
"bindTime": 1657274393279,
"agentUUID": "7b8ec043e9a24727ad0570ba1b6e82fe",
"agentName": "v6_cs2",
"langCodeTxt": "Opus"
},
{
"ext": "5001",
"password": "123456",
"bindStatus": 1,
"bindTime": 1657682876629,
"agentUUID": "59220de7f88141829a1f38d8698acb26",
"agentName": "v6_cs1",
"langCodeTxt": "G.711 ulaw"
}
],
"currPage": 1,
"pageSize": 3,
"total": 13
}
}
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
# ● 创建分机账号
说明:创建分机账号
接口地址: https://openapi.soboten.com/callservice/v6/cc-config/api/exts/_add
请求方法: POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentID | String | 是 | 座席工号或座席id |
agentType | String | 否 | 1表示座席id;0或不传值表示座席工号 |
ext | String | 是 | 分机号, 3-8位数字组合,支持0开头,创建后不可更改 |
password | String | 是 | 分机密码, 6-8位数字,主要用于注册实体话机 |
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ext | String | 是 | 分机号 |
password | String | 是 | 分机密码 |
langCodeTxt | String | 是 | 语言编码格式,Opus |
响应示例:
{
"apiVersion": "6.3.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "",
"kind": "Ext",
"metaData": {},
"data": {
"ext": "5002",
"password": "123456",
"langCodeTxt": "Opus"
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 号码管理
# ● 导入企业禁呼号码
接口地址:https://openapi.soboten.com/callservice/v6/cc-config/blacklist/batch
请求方法:PUT
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
callNumber | String | 是 | 电话号码 |
numberType | int | 是 | 1:电话号码 |
callType | int | 是 | 呼叫方向; 2:呼入; 3:呼出 |
enabled | int | 是 | 启用状态; 0:禁用; 1:启用 |
expirationTime | String | 否 | 到期时间:yyyy-MM-dd |
zoneId | String | 否 | 时区id:参考当前公司可用时区,如果不传将使用企业默认时区 |
description | String | 否 | 描述 |
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
successCount | int | 是 | 导入成功数 |
failedCount | int | 否 | 导入失败数 |
details | 数组 | 否 | 数组元素 参考导入企业禁呼号码失败数据 |
请求范例 :
[
{
"callNumber": "15210818952", //呼叫号码
"numberType": 1, //号码类型,1-号码
"callType": 2, //呼叫方向,2-呼入 3-呼出
"enabled": 0, //启用状态,0-禁用;1-启用
"description": "测试1" //描述
},
{
"callNumber": "13212341232",
"numberType": 2,
"callType": 2,
"enabled": 0,
"description": "测试2"
},
{
"callNumber": "13212341233",
"numberType": 2,
"callType": 2,
"enabled": 0,
"description": "测试3"
}
]
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
响应示例:
{
"apiVersion":"6.2",
"status":"Success",
"code":200,
"message":"请求服务成功",
"reason":"",
"kind":"BatchDetail",
"metaData":{},
"data":
{
"successCount":3,
"failedCount":2,
"details":
[
"第【2】条,【numberType】,内容【2】,【参考:1-号码】",
"第【3】条,【numberType】,内容【2】,【参考:1-号码】"
]
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# ● 查询中继号码列表
接口地址:https://openapi.soboten.com/callservice/v6/cc-config/api/gatewayNumber/search
请求方法:POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
enabled | List | 否 | 号码启用状态 |
请求范例 :
{"enabled":[1,2,0]}
返回体
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
data | List | 是 | gatewayNumber中继号码集合 |
gatewayNumber
参数 | 类型 | 描述 |
---|---|---|
gatewayNumber | String | 中继号码 |
alias | String | 别名 |
remark | String | 备注信息 |
enabled | Map | 号码启用状态 |
Map
参数 | 类型 | 描述 |
---|---|---|
enabledCode | Integer | 号码启用状态编号 |
enabledName | String | 号码启用状态名称 |
响应示例:
{
"apiVersion": "6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "请求服务成功",
"kind": "List",
"metaData": {},
"data": [
{
"gatewayNumber": "010514294XX",
"alias": "别名1",
"remark": "正常使用",
"enabled": {
"enabledCode": 1,
"enabledName": "已启用"
}
},
{
"gatewayNumber": "010514294XX",
"alias": "别名2",
"remark": "已销号",
"enabled": {
"enabledCode": 2,
"enabledName": "已销号"
}
}
],
"retMsg": "请求服务成功",
"retCode": "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
# 外呼任务
# ● 创建外呼任务
接口地址: https://openapi.soboten.com/callservice/v6/cc-outbound/api/campaigns
请求方法: POST
请求参数(header)
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
Idempotency-Key | String | 是 | UUID,幂等性 |
请求参数(body)
- content-type: application/json;charset=utf-8
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentID | String | 是 | 座席工号 或 座席id;值的内容由agentType值决定。 |
agentType | String | 否 | 座席参数类别 0:座席工号; 1:座席id; 为空时,默认座席工号。 |
name | String | 是 | 任务名称 |
dataTemplateCode | String | 是 | 状态为启用的导入模板编码 |
wrapUpTemplateCode | String | 是 | 状态为启用的总结模板编码 |
scheduleStartTime | Long | 是 | 计划开始时间,毫秒时间戳 |
scheduleEndTime | Long | 是 | 计划结束时间,毫秒时间戳;非空时必须大于计划开始时间。 |
description | String | 否 | 备注最多200个字 |
请求body示例:
{
"agentID": "59220de7f88141829a1f38d8698acb26",
"agentType": "1",
"name": "通知",
"dataTemplateCode": "D000000000",
"wrapUpTemplateCode": "W000000000",
"scheduleStartTime": 1660115936310,
"scheduleEndTime": 1660118400638,
"description": "备注"
}
2
3
4
5
6
7
8
9
10
11
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
id | String | 是 | 任务ID |
code | String | 是 | 任务编号 |
响应示例
{
"apiVersion": "6.3.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "",
"kind": "ApiRespCampaignsVO",
"metaData": {},
"data": {
"id": "037276ff01c6eM4b1b89413A383072f38476",
"code": "dgug92owec"
}
}
2
3
4
5
6
7
8
9
10
11
12
13
# ● 外呼任务导入数据
接口地址: https://openapi.soboten.com/callservice/v6/cc-exports/api/campaigns/_import
请求方法: POST
请求参数(header)
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
Idempotency-Key | String | 是 | UUID,幂等性 |
请求参数(body)
- content-type: application/json;charset=utf-8
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentID | String | 是 | 座席工号 或 座席id;值的内容由agentType值决定; |
agentType | String | 否 | 座席参数类别 0:座席工号;1:座席id;为空时,默认座席工号。 |
campaignId | String | 否 | 任务ID,创建者需要为当前导入数据的座席(接口参数),否则不允许。 |
code | String | 否 | 任务编号,当外呼任务ID非空时,接口以外呼任务ID字段作为任务的主键,查询任务记录。外呼任务ID为空,且外呼任务code非空时,接口以外呼任务code字段作为任务的主键,查询任务记录。 |
callingListCode | String | 是 | 批次号,最多20位大小写英文字母(不区分大小写)+数字组合,一旦录入不支持修改。 |
removeDuplicatesRule | String | 是 | 号码去重规则 NonRemoveDuplicates(不去重); RemoveDuplicatesInCallingList(批次内去重);RemoveDuplicatesInCampaign(任务内去重); RemoveDuplicatesInTenant(任务间去重) |
enableFilterDoNotCallListNumber | String | 否 | 是否过滤禁呼号码, Filter(过滤);NoFilter(不过滤);默认NoFilter。 |
assignRule | String | 是 | 分配方式AssignAverage(平均分配);AssignAppoint(指定分配);NoAssign(不分配) |
assignAgentAndCount | json | 否 | 分配座席 |
assignAgentAndCount
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentID | String | 是 | 座席ID |
count | String | 是 | 数量 |
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
dataDetails | array json | 是 | 导入外呼任务数据详情 |
dataDetails
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
telephone | String | 是 | 明细号码 |
allocationAgent | String | 否 | 分配座席(座席工号) |
name | String | 否 | 明细名称 |
description | String | 否 | 备注最多200个字 |
customFields | array json | 否 | 自定义定段,详见任务导入模板的自定义字段集合。 |
customFields
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
fieldId | String | 是 | 自定义ID |
fieldValue | String | 是 | 自定义值 |
请求body示例:
{
"agentID": "e906cc52bfac44b4ae30497fd39c4c4d",
"agentType": "1",
"campaignId": "cde0f90801d98M4fcb8a43eFff11b201cbff",
"callingListCode": "20220815203412",
"removeDuplicatesRule": "RemoveDuplicatesInCallingList",
"enableFilterDoNotCallListNumber": "Filter",
"assignRule":"AssignAppoint",
"assignAgentAndCount": [{
"agentID": "2b82a4acc60647dd814b3db642e75972",
"count": 100
}],
"dataDetails": [{
"allocationAgent": "12001",
"name": "名称",
"telephone": "100000000",
"description":"描述",
"customFields": [{
"fieldId": "3b987930e6db4b0ca51f6ad5755e91ae",
"fieldValue":"BeiJing1号"
}]
}]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
callingListCode | String | 是 | 批次号,根据批次ID查询导入结果 |
campaignId | String | 是 | 任务ID |
code | String | 是 | 任务编号 |
响应示例
{
"apiVersion": "6.3.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "",
"kind": "ApiRespCampaignsVO",
"metaData": {},
"data": {
"campaignId": "2b82a4acc60647dd814b3db642e75971",
"callingListCode": "20220101000000",
"code":"dgug92owec"
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# ● 批次导入结果查询
接口地址: https://openapi.soboten.com/callservice/v6/cc-outbound/api/campaigns/calling-list/import-result
请求方法: POST
请求参数(header)
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
Idempotency-Key | String | 是 | UUID,幂等性 |
请求参数(body)
- content-type: application/json;charset=utf-8
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
agentID | String | 是 | 座席工号 或 座席id;值的内容由agentType值决定; |
agentType | String | 否 | 座席参数类别0:座席工号;1:座席id;为空时,默认座席工号。 |
callingListCode | String | 否 | 批次号,导入任务数据接口返回 |
campaignId | String | 否 | 任务ID,导入任务数据接口返回 |
code | String | 否 | 任务编号,当外呼任务ID非空时,接口以外呼任务ID字段作为任务的主键,查询任务记录。外呼任务ID为空,且外呼任务code非空时,接口以外呼任务code字段作为任务的主键,查询任务记录。 |
currPage | int | 否 | 当前页,默认1 |
pageSize | int | 否 | 每页数,默认50 |
请求body示例:
{
"agentID": "59220de7f88141829a1f38d8698acb26",
"agentType": "1",
"callingListCode": "02951e5b01ddcM40997b185S2a541d16be48",
"campaignId": "2b82a4acc60647dd814b3db642e75971",
"code":"dgug92owec",
"currPage": 1,
"pageSize": 50
}
2
3
4
5
6
7
8
9
10
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
campaignId | String | 是 | 任务ID |
code | String | 是 | 任务编号 |
callingListCode | String | 是 | 批次号 |
creationTime | Long | 是 | 导入时间,毫秒时间戳 |
removeDuplicatesRule | String | 是 | 号码去重规则 |
successCount | int | 是 | 成功任务明细数 |
repeatCount | int | 是 | 重复任务明细数 |
errorCount | int | 是 | 失败任务明细数 |
errorReportPath | String | 是 | 错误报告下载地址 |
响应示例
{
"apiVersion":"v6.3.0",
"status":"Success",
"code":200,
"message":"请求服务成功",
"reason":"",
"kind":"ApiRepsICallListResult",
"metaData":{
},
"data":{
"totalCount":13,
"pageSize":50,
"totalPage":1,
"currPage":1,
"list":[
{
"campaignId":"cde0f90801d98M4fcb8a43eFff11b201cbff",
"code":"dgug92owec",
"callingListCode": "20220815203412",
"removeDuplicatesRule": "RemoveDuplicatesInCallingList",
"successCount":1,
"errorCount":0,
"errorReportPath":"https://img.com/0619826b0e024N4650194b8P87a660372bfb.xlsx",
"removeDuplicatesCount":0,
"creationTime":1660632449700
}
]
}
}
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
# ● 查询外呼任务列表
说明:查询企业坐席的外呼任务列表
接口地址: https://openapi.soboten.com/callservice/v6/cc-outbound/api/campaigns/getList
请求方法: POST
请求(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
Idempotency-Key | String | 是 | UUID,幂等性 |
请求参数(body)
- content-type: application/json;charset=utf-8
- 参数说明
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
code | String | 否 | 编号不支持模糊查询 |
creationTimeStart | Long | 否 | 创建开始时间(时间段限制在十二月之内) |
creationTimeEnd | Long | 否 | 创建结束时间 |
agentUUID | String | 否 | 座席工号或座席ID |
agentType | String | 否 | 1表示座席ID;0或不传值表示座席工号 |
pageSize | int | 是 | 分页大小 |
currPage | int | 是 | 页码 |
返回参数
- List集合
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
code | String | 是 | 任务编号 |
name | String | 是 | 任务名称 |
scheduleStartTime | Long | 是 | 定时启动时间 |
scheduleEndTime | Long | 是 | 定时关闭时间 |
scheduleTimeZoneId | String | 否 | 时区ID |
scheduleStartTimeZoneValue | String | 否 | 时区开始时间 |
scheduleEndTimeZoneValue | String | 否 | 时区结束时间 |
state | Integer | 是 | 执行状态 |
expired | Integer | 否 | 到期状态 |
description | String | 否 | 备注 |
creationTime | Long | 是 | 创建时间 |
contactRecordCount | Integer | 是 | 任务明细数 |
contactUnassignedCount | Integer | 是 | 未分配数 |
agentCount | Integer | 是 | 分配座席数 |
contactRecordExecuteCount | Integer | 是 | 任务明细执行数 |
contactExecuteRate | String | 是 | 任务明细执行率 |
contactRecordAnswerCount | Integer | 是 | 任务明细接听数 |
contactAnswerRate | String | 是 | 任务明细接听率 |
callDialCount | Integer | 是 | 外呼次数 |
callAnswerCount | Integer | 是 | 外呼接听次数 |
callAnswerRate | String | 是 | 外呼次数接听率 |
callTalkDuration | Integer | 是 | 通话时长 |
averageCallTalkDuration | Integer | 是 | 平均通话时长 |
响应示例:
{
"apiVersion": "v6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "",
"kind": "RespCampaignsVO",
"metaData": {},
"data": {
"totalCount": 1,
"pageSize": 50,
"totalPage": 1,
"currPage": 1,
"list": [
{
"code": "6yoq3b0lpf",
"name": "1111123",
"timed": 0,
"scheduleStartTime": 0,
"scheduleEndTime": 0,
"scheduleTimeZoneId": null,
"scheduleStartTimeZoneValue": null,
"scheduleEndTimeZoneValue": null,
"state": 1,
"expired": null,
"description": "",
"creationTime": 1711681298345,
"contactRecordCount": 0,
"contactUnassignedCount": 0,
"agentCount": 0,
"contactRecordExecuteCount": 0,
"contactRecordAnswerCount": 0,
"contactExecuteRate": "0.00%",
"contactAnswerRate": "0.00%",
"callDialCount": 0,
"callAnswerCount": 0,
"callAnswerRate": "0.00%",
"callTalkDuration": 0,
"averageCallTalkDuration": 0
}
]
},
"retMsg": "请求服务成功",
"retCode": "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
# 联系计划
# ● 批量创建联系计划
说明:批量新建联系计划,每次最多50条。
接口地址: https://openapi.soboten.com/callservice/v6/cc-console/contact-schedules/_batchAddInfos
请求方法: POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
name | String | 是 | 联系计划名字。限制最大20位有效字符 |
bak | String | 否 | 联系计划备注。当传值时最大200个有效字符 |
scheduleStartTime | Long | 是 | 联系计划开始时间。毫秒级时间戳,时间精确至分钟,如:1663986420000(2022-09-24 10:27:00) |
scheduleEndTime | Long | 是 | 联系计划到期时间。毫秒级时间戳,时间精确至分钟 |
customerPhoneNumberList | String[] | 是 | 客户号码数组。符合3至16位数字的号码规则,每次限制最大50条 |
executorId | String | 是 | 执行联系计划的座席工号 或 座席id |
agentID | String | 是 | 批量创建联系计划的座席工号 或 座席id |
agentType | String | 否 | 操作用户或执行人参数类别;0:座席工号;1:座席id。为空时,默认座席工号 |
请求body示例:
{
"name": "openApi批量计划-5",
"scheduleStartTime": "1661911780000",
"scheduleEndTime": "1662998180000",
"executorId": "5001",
"bak": "test4444",
"agentID": "5002",
"agentType": "0",
"customerPhoneNumberList": [
"18189672221",
"18189671111",
"18889673333"
]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
返回参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
id | String | 是 | 联系计划id |
serialNumber | Long | 是 | 联系计划编号 |
name | String | 是 | 联系计划名字 |
scheduleStartTime | Long | 是 | 联系计划开始时间戳,毫秒 |
scheduleEndTime | Long | 是 | 联系计划到期时间戳,毫秒 |
creationTime | Long | 是 | 联系计划创建时间戳,毫秒 |
响应示例:
{
"apiVersion": "v6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "",
"kind": "List",
"metaData": {},
"data": [
"83f938c7d45ac0e2445ce0f59bc57e59",
"a29efd4c7d3c2a3f7afac174b7fbefac",
"c0a8e889945b475d17230592ff35d0a6"
]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# IVR流程管理
# ●查询已发布的IVR流程
说明:查询已发布的IVR流程,每次最多50条。
接口地址: https://openapi.soboten.com/callservice/v6/cc-ivr/api/ivr/published/_search
请求方法: POST
请求参数(header) :
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | String | 是 | 接口访问凭据,获取方式请参考获取鉴权token |
请求参数(body)
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
currPage | int | 否 | 页码,默认为1 |
pageSize | int | 否 | 分页数量,默认为10 |
operator | String | 否 | 操作用户 座席工号 或 座席ID |
agentType | int | 否 | 接口座席参数类别: 0 : 座席工号;1:座席id ; 为空时,默认座席工号 |
请求body示例:
{
"currPage":1,
"pageSize":10
}
2
3
4
返回参数
- List集合
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
name | String | 是 | 名称 |
code | String | 是 | 编码 |
remarks | String | 否 | 备注 |
响应示例:
{
"apiVersion": "6.0.0",
"status": "Success",
"code": 200,
"message": "请求服务成功",
"reason": "请求服务成功",
"kind": "SearchIvrResponse",
"metaData": {
"creatorId": null,
"creationTime": null,
"updateUserId": null,
"updatedTime": null
},
"data": {
"list": [
{
"name": "test222",
"code": "4445",
"remarks": "ssf"
},
{
"name": "test333",
"code": "1111",
"remarks": "2222"
}
],
"currPage": 1,
"pageSize": 5,
"total": 33
},
"retMsg": "请求服务成功",
"retCode": "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
# 公共数据结构
# ● 禁呼号码导入失败数据
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
detail | String | 是 | 例如:第【3】条,【callType】,内容【5】,【参考:1-呼出】 |