概述
一般原则
HTTP 请求方式
CASE服务尽量坚持尽可能接近标准HTTP和REST
| 请求方法 | 用法 | 
|---|---|
| GET | 取回资源 | 
| POST | 创建一个新的资源或查询一个资源 | 
| PUT | 更新一个存在的资源 | 
| DELETE | 删除一个存在的资源 | 
HTTP 状态码
CASE服务尽量坚持尽可能接近标准HTTP和REST
| 状态码 | 用法 | 
|---|---|
| 200 OK | HTTP请求成功的标准响应。实际的响应将取决于请求的方法。在GET请求,响应将包含对应于请求的资源实体。在POST请求,响应将包含一个实体的描述或包含的行动的结果。 | 
| 201 Created | 该请求已完成,并导致一个新的资源被创建。 | 
| 204 No Content | 服务器成功处理了请求,但未返回任何内容。 | 
| 400 Bad Request | 由于客户端错误(例如,错误的请求语法,无效的请求消息帧,或欺骗性请求路由),服务器不能或不会处理请求。 | 
| 401 Unauthorized | 未认证。 | 
| 404 Not Found | 找不到请求的资源,但将来可能再次可用。客户的后续请求是允许的。 | 
| 500 Internal Server Error | 服务器内部错误。 | 
调用地址
格式
https://ubot.udesk.cn/{relative address}?{URL params}×tamp={timestamp}&sign={signature}
其中括号包含的部分含义如下:
| 变量 | 说明 | 
|---|---|
| relative address: 接口相对地址 | API的相对URL | 
| URL params: URL参数 | 请求接口所需参数 | 
| timestamp: 时间戳 | 发起请求时的时间戳,'1970-01-01 00:00:00'至今的秒数。如无特别说明,默认过期时间五分钟 | 
| signature: 签名 | 身份认证签名,除非特别说明,否则每次API请求均需要附加此参数 | 
参数 三种参数类型:
| 类型 | 说明 | 
|---|---|
| Path parameters | 作为请求URL Path的一部分,如/leads/:id中的 :id | 
| Query parameters | 请求接口时的参数,如/leads?page=10中的 page | 
| Request fields | 请求体(Request Body) | 
返回 UTF-8编码JSON字符串
鉴权方法
公式
sign=SHA1(apiKey×tamp)
其中:
- apiKey: 鉴权私钥,在ubot系统机器人管理 - 某机器人 - 发布 - 配置管理查看
- timestamp: 时间戳,'1970-01-01 00:00:00'至今的秒数
示例
https://ubot.udesk.cn/chat/v1/api/current
鉴权所需数据:
| 名称 | 值 | 
|---|---|
| apiKey | mkW004VexEzpnwEdvsYrAFRh2MyQAj42ne47MG9 | 
| timestamp | 1732785857 | 
计算签名:
sha1("mkW004VexEzpnwEdvsYrAFRh2MyQAj42ne47MG9&1732785857") -> a313d597f70e83559e078710808e89c53ccc4c79
请求URL:
https://ubot.udesk.cn/chat/v1/api/current?robotId=19×tamp=1732785857&sign=a313d597f70e83559e078710808e89c53ccc4c79