概要
此文档描述了Vnnox系统的REST API(v1),如果您在使用中有任何问题请及时联系
- 版本
- 请求简述
- 参数说明
- 服务地址
- 错误调试
- HTTP方法
- 认证
- 分页
- 次数限制
版本
默认情况下当客户端访问https://cn.vnnox.com时,系统将使用V1 版REST API提供服务,我们建议您在http请求的heaer中的`Accept`字段加上服务版本号。格式如下:
Accept:application/nova.vnnox.v1+json
注:为了不影响第三方功能对接,当前v1版本的REST API接口及接口中的数据会以增量方式更新。
请求简述
所有请求均通过HTTPS协议,API请求链接为https://cn.vnnox.com,所有数据的请求及相应均通过json格式。
Response数据结构
请求列表
通过GET请求获取资源信息时,如果未指定资源唯一ID,则请求的为资源的列表,返回的数据list中包含了符合查询规则的集合list
请求详情
如果在资源请求中指定唯一ID,则请求的为单个资源,返回的数据只包含当前资源
参数说明
很多API方法使用可选参数,如`GET`请求中会存在`资源名称`和`查询参数`:
{host}/Rest/Medias?offset=0&limit=10&search=&sort=last_amendment_time&sortType=desc
在上述例子中,‘Rest’、‘Medias’代表了资源名称,`offset`、`limit`、`search`、`sort`、`sortType`代表了查询参数。
在`POST`、`PUT`请求中,无法包含在url中的参数需要格式化为JSON 并使用 Content-Type : 'application/json'方式请求接口
服务地址
Vnnox REST API均使用`host` + `resource` + `parameters` 的请求方式与服务器交互,`host`指服务器地址:https://cn.vnnox.com/,`resource`指资源及资源路径,一般为`Rest/{资源名}/`, `parameters`为资源标识或者查询参数:
GET {host}/Rest/Medias?offset=0&limit=10&search=&sort=last_amendment_time&sortType=desc
GET {host}/Rest/Medias/{media_id}
PUT {host}/Rest/Player/{player_id}
DELETE {host}/Rest/User/{user_id}
POST {host}/Rest/Worker
如上面的例子,本文档所有涉及{host}均指https://cn.vnnox.com/,建议第三方开发者将{host}信息作为可配置项
错误调试
在REST API请求时会有3类错误:
1、服务级错误:网络或运营商导致的服务级别错误。(建议第三方应用中捕获http不等于2xx的状态码,如404、502等)
HTTP/1.1 502 Bad Gateway
2、系统级错误:REST API 请求中传入了非法参数或者数据格式错误。(建议第三方在应用中捕获 json.status[0] = 1)HTTP/1.1 200 ok { "data": "系统级错误,请联系VNNOX管理员,谢谢!", "status": [1] }3、业务级错误:REST API因业务限制返回的状态码/错误码(json.status)。(建议第三方应用根据状态码说明处理API结果)
HTTP/1.1 200 ok { "http_code": 200, "data": { "roleName": "" }, "status": [50101201] }
HTTP方法
Vnnox REST API 目前支持4中HTTP方法:
| 方法名 | 描述 |
|---|---|
| GET | 用于获取资源状态 |
| POST | 用于创建资源 |
| DELETE | 用于删除资源 |
| PUT | 用于修改资源状态 |
认证
Vnnox REST API使用Oauth2.0认证,请使用认证接口获取token(加入到 HTTP-header中)
token:5c1354529946bc49360641f7f321611698deb371
分页
当请求资源列表时,需要指定分页参数:
GET {host}/Rest/Player?offset=0&limit=10&search=&sort=name&sortType=asc
| 参数名 | 说明 |
|---|---|
| offset | 初始数据位置 |
| limit | 限定数据个数 |
| search | 根据检索条件返回列表(返回符合搜索条件的资源列表) |
| sort | 排序字段( 根据特定字段排序 ) |
| sortType | 排序规则(asc / desc) |
次数限制
使用Oauth2.0认证的REST API访问,同一个用户获取的token访问频次建议1小时内不要超过3000次。