规则引擎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.soboten.com/api/get_token
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
appid | String | 是 | 接口凭证 Id,第三方用户接口调用唯一凭证 id |
create_time | String | 是 | 时间戳,时间戳、秒,例如 2019-09-25 15:49:33 的时间戳1569397773 |
sign | String | 是 | 签名,md5(appid + create_time + app_key) sign 签名、app_key 为密钥 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
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.soboten.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
# ● webhook触发
接口说明:
接口类型:主动调用接口
接口作用:可通过调用该接口以用户的身份来触发规则引擎画布。
QPS限制:本接口的单个trigger-id QPS限制为50次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。
请求方式:
POST
请求地址:
https://api-a.soboten.com/text/logi-flow/webhook/trigger
headers 请求头:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
trigger-id | String | 是 | 触发ID |
secret | String | 是 | 验证密钥 |
token | String | 是 | token |
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Contact_id | String | 是 | 客户来源字段「可在系统中自定义字段名」 |
nick | String | 否 | 用户昵称「用户不存在时创建客户使用」 |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | 是 | 返回编码 |
请求示例:
curl --request POST \
--url https://api-a.soboten.com/text/logi-flow/webhook/trigger \
--header 'content-type: application/json' \
--header 'trigger-id: 1760950090021666816' \
--header 'token: e41fcc4cdff748d0999ce6eac28c0dd7' \
--header 'secret: c00b6e45bbe346e8bd86e51d2fea06ca' \
--data '{ Your JSON Data here }'
2
3
4
5
6
7
返回示例:
{
"ret_code": "000000"
}
2
3
# ● webhook应用
接口说明:
接口类型:回调型接口
接口作用:可通过指定HTTP URL来接收webhook应用执行消息。
请求方式:
POST/PUT
参数说明:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
id | String | 客户id | |
pid | String | 公司Id | |
nick | String | 用户昵称 | |
uname | String | 真实名称 | |
String | 邮箱「多个邮箱中间以";"隔开」 | ||
tel | String | 电话「多个电话中间以";"隔开」 | |
String | qq号 | ||
remark | String | 备注 | |
is_vip | String | 客户等级 0:普通 1:vip | |
vip_level | String | VIP级别 | |
user_label | String | 客户标签「多个标签中间以","隔开」 | |
face | String | 头像 | |
ex_fields | Object | 客户自定义-扩展字段 |
请求示例:
{
"id": "123",
"pid": "456",
"nick": "John",
"uname": "John Doe",
"email": "15612661266@163.com;15612661267@163.com",
"tel": "1234567890,1234567891",
"qq": "123456",
"remark": "This is a remark",
"is_vip": "0",
"vip_level": "Gold",
"user_label": "581dfa5ff16644619d8a7e1a45632a79,33d090699539491d9a0cc75f896453bc",
"face": "https://example.com/avatar.jpg",
"ex_fields": {
"7dcf2982a3bc4afaa5351500b8e2e21c": "622453954796438,698821015202242",
"899f53ad57fd45beaab0628981d87e2b": "2024-03-26",
"bc41e13cde264af88aceba783444067d": "622107455027943",
"040778587416412fba9941ea482407f2": "123"
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
响应说明:接收到回执后,响应的HTTP状态码必须为200,且响应体格式需如下所示,否则会推送失败,触发重新推送。
返回示例:
{
"code": 0,
"status": 0
}
2
3
4
参数说明:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
code | Integer | 返回编码 | |
status | Integer | 执行状态 0-成功,1-失败 |
重新推送:第一次推送失败后,间隔1分钟、5分钟后会进行重推,直至推送成功为止。如果推送3次后仍失败,不再重试。
# 错误编码
# ● 操作成功
HTTP status code | 错误编码 | 错误说明 |
---|---|---|
200 | 000000 | 操作成功(除此编码以外的编码为错误编码) |
# ● 系统异常
HTTP status code | 错误编码 | 错误说明 |
---|---|---|
200 | 900001 | token 为空 |
200 | 900002 | token 已失效,请重新获取 |
200 | 900003 | signature 错误 |
200 | 900004 | 没有找到公司的 api 配置信息 |
200 | 999999 | 系统未知异常 |
# ● 业务异常
HTTP status code | 错误编码 | 错误说明 |
---|---|---|
400 | 910021 | trigger-id/token参数缺失 |
400 | 910022 | trigger-id/token 参数非法 |
400 | 910023 | 客户标识字段 参数非法 |
400 | 910024 | triggerId超过QPS限制 |
400 | 910025 | 画布未开启 |
400 | 910026 | 没有符合的客户 |