登录
云 PBX API 采用用户名和密码的方式验证,只有用户名和密码验证通过的应用服务器,API 才会处理其发送的请求。
注:
- 你需要先将 API 的密码通过 MD5 加密,获取32位小写密码。使用加密过的密码进行 API 验证。
- 如果密码连续错误五次,则该第三方应用的 IP 将会被锁10分钟。
Endpoint
POST /api/v1.1.0/login
请求参数
名称 | 是否必需 | 类型 | 描述 |
---|---|---|---|
username
|
是 | String | 在 PBX 二次开发接口界面设置的用户名。 |
password |
是 | String | 将 PBX 二次开发接口界面设置的密码通过 MD5 加密。 填写加密后的32位小写密码。 |
port |
是 | String | 端口号,此端口号为第三方应用用于监听 API 发送的事件报告的端口号。 |
url |
否 | String | 第三方应用服务器获取 API 报告的 URL。 注: 如果不带此参数,则 PBX 默认向第三方应用服务器的 IP 地址发送 API 报告。
|
version |
否 | String | 发送 API 事件报告格式的版本。 注: 设置
"version":"1.0.2" 可以修复 API 事件报告的语句不符合 JSON 格式的问题。 |
urltag |
否 | String | 指定 URL 的类型:
|
响应参数
名称 | 类型 | 描述 |
---|---|---|
token |
String | 调用接口凭证,所有的 API 请求都需用到该 token。 |
refreshtoken |
String | 使用refreshtoken 获取新的 token 和
refreshtoken 。 |
注:
- API
token
是第三方应用成功连接 PBX 后生成的。所有的 API 请求都需要带上 API 验证时所返回的token。 - token 有效时长为30分钟。
为了保证第三方服务器能跟 PBX 通过 API 正常交互,第三方服务器必须在每30分钟之内 刷新 API token。
实际示例
请求示例
POST /api/v1.1.0/login HTTP/1.1 Content-Type:application/json; charset=utf-8 Host: api.yeastarcloud.com { "username": "api", "password": "2d7257a528679d01a19c70e3fa773620", "port": "8260", "version": "1.0.2", "url": "110.22.2.3:8260/report", "urltag": "1" }
响应示例
第三方应用服务器登录成功。
HTTP/1.1 200 OK Access-control-allow-origin: * Access-control-allow-methods: GET, POST, OPTIONS, PUT, DELETE { "status": "Success", "token": "2bc5a7494ef88b0506da66c60ccf232d", "refreshtoken": "58f29c380365e5546cd3ac8c34edc88c" }
第三方应用服务器登录失败。
HTTP/1.1 200 OK
Access-control-allow-origin: *
Access-control-allow-methods: GET, POST, OPTIONS, PUT, DELETE
{
"status": "Failed",
"errno": "30003"
}