topmobi接口协议
通信协议
- 移动应用官网与运营管理平台均采用前后台分离开发,其涉及应用管理,网站运营需通过Http协议与后台系统交互,后台系统提供Rest风格接口,以降低开发的复杂性,提高系统的可伸缩性。
- 除开官网开放数据,其所有接口需要经过长虹用户中心统一认证,以下接口没有特殊说明,接口调用都需要带上用户中心认证的Token。Token统一放在请求的Header中,名称为X-Auth-Token和X-Openid。(以/user开头的接口均需要token认证)
- 所有接口接收与返回数据采用Json格式,错误信息会提供统一错误码表
状态码:正常返回1000,其他状态则表示请求未正常执行,具体参照错误码表
协议接口规范
应用模块功能
创建应用
- 功能描述:当开发者在开放平台注册成功后,能够使用平台创建自己的应用。
- 请求URL:POST /v1/user/{openId}/app
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 应用名称 |
platform | Int (必须) | 应用平台,3为混合,1为Android,2为Ios |
desc | String (可选) | 应用描述 |
icon | String (可选) | 应用图标 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
appId | String | 应用唯一编号 |
appKey | String | 应用密钥 |
name | String | 应用名称 |
platform | Int | 应用平台,3为混合,1为Android,2为Ios |
desc | String | 应用描述 |
icon | String | 应用图标 |
createDate | Date | 创建时间 |
样例:
请求样例
{
"name": "应用名",
"platform": 1,
"desc": "应用描述",
"icon": "http://domain/icon/app.icon"
}
返回样例
{
"code": 1000,
"msg": "success",
"app": {
"appId": "1298265320",
"name": "应用名",
"platform": 1,
"createDate": "2016-02-29 17:33:23",
"desc": "应用描述",
"icon": "http://domain/icon/app.icon",
"appKey": "asdhfdghjfd737"
}
}
编辑应用
- 功能描述:开发者创建好应用后能够应用的基本信息,平台类型则不能修改
- 请求URL:PUT /v1/user/{openId}/app/{appId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (可选) | 修改后应用名称、不能为空字符 |
icon | String (可选) | 修改后应用图标、不能为空字符 |
desc | String (可选) | 修改后应用描述、不能为空字符 |
样例:
请求样例
{"name":"修改应用名","desc":"修改描述"}
返回样例
{"code":1000,"msg":"success"}
删除应用
- 功能描述:应用不需要在平台进行运营时,开发者可以删除该应用
- 请求URL:DELETE /v1/user/{openId}/app/{appId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
样例:
请求样例
curl -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" -H "Content-Type: application/json" -X DELETE http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/123356789
返回样例
{"code":1000,"msg":"success"}
获取开发者应用基本信息
- 功能描述:获取开发者获取某个应用基本信息
- 请求URL:GET /v1/user/{openId}/app/{appId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
appId | String | 应用唯一编号 |
appKey | String | 应用密钥 |
name | String | 应用名称 |
platform | Int | 应用平台,3为混合,1为Android,2为Ios |
createDate | Date | 应用创建时间 |
updateDate | Date | 应用更新时间 |
desc | String | 应用描述 |
icon | String | 应用图标 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/123dsfdsf88dsfsf
返回样例
{
"code": 1000,
"msg": "success",
"app": {
"appId": "1298265320",
"appKey": "123123dfdg45654fdgdger",
"name": "应用名",
"platform": 1,
"createDate": "2016-02-29 17:33:23",
"desc": "应用描述"
}
}
获取开发者应用列表
- 功能描述:获取开发者所有应用基本信息列表
- 请求URL:GET /v1/user/{openId}/app
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
pageNo | Int (可选) | 页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据 |
pageSize | Int (可选) | 每页条数。取值范围:大于零的整数;最大值:100;默认值:30 |
orderBy | String (可选) | 排序方式。格式为column:asc/desc ,column可选值:name(应用名),create_date(创建时间)。默认按创建时间降序(最新创建应用排在最前面)即 create_date:desc |
name | String (可选) | 应用名,用于条件搜索 |
platform | Int (可选) | 应用平台,3为混合,1为Android,2为Ios,用于条件搜索 |
startCreateDate | Date(可选) | 必须与endCreateDate一起用,创建时间开始点 |
endCreateDate | Date(可选) | 必须与startCreateDate 一起用,创建时间结束点 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
appId | String | 应用唯一编号 |
appKey | String | 应用密钥 |
name | String | 应用名称 |
platform | Int | 应用平台,3为混合,1为Android,2为Ios |
status | Int | 应用状态,0为正常,1为冻结 |
createDate | Date | 应用创建时间 |
desc | String | 应用描述 |
status | Int | 应用是否被冻结,0为可用,1为冻结 |
totalCount | Int | 查询记录总条数 |
icon | String | 应用图标 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/user/a78sdf7fdd8gfdg8/app?pageNo=1&pageSize=10&orderBy=name:asc&name=aaa
返回样例
{
"code": 1000,
"msg": "success",
"totalCount": 120,
"apps": [
{
"appId": "1298265320",
"appKey": "asda129dsfs8265df320",
"name": "修改应名",
"platform": 1,
"createDate": "2016-02-29 17:33:23",
"desc": "修改描述",
"icon": "http://a.icon",
"status": 0
}
]
}
创建应用版本
- 功能描述:开发者能够为应用创建版本上传应用包。
- 请求URL:POST /v1/user/{openId}/app/{appId}/version
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
appId | String (必须) | 所属应用编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 应用版本名称 |
code | Int (必须) | 应用版本号 |
url | String (必须) | 应用版本下载地址 |
md5 | String (必须) | 应用版本包md5值 |
desc | String (可选) | 应用版本描述 |
deviceIds | String (可选) | 设备号,用于策略升级,多个设备号用分号隔开 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
versionId | String | 应用版本唯一编号 |
样例:
请求样例
{
"name": "calendar_1.0",
"code": 3,
"md5":"mdjhsbvgstqreosplgksjd6d5sdfs",
"desc": "应用版本描述",
"url": "http://qiniufile/abc/calendar_1.0.zip",
"deviceIds": "112we31;233ddf;ad123"
}
返回样例
{
"code": 1000,
"msg": "success",
"versionId":"abcgdjdfh743679890sdjhj"
}
编辑应用版本
- 功能描述:为开发者提供应用版本编辑功能。
- 请求URL:PUT /v1/user/{openId}/app/{appId}/version/{versionId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
appId | String (必须) | 所属应用编号 |
versionId | String (必须) | 应用版本唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (可选) | 修改后应用版本名称 |
code | Int (可选) | 修改后应用版本号 |
url | String (可选) | 修改后应用版本下载地址 |
md5 | String (可选) | 修改后应用版本md5 |
desc | String (可选) | 修改后应用版本描述 |
deviceIds | String (可选) | 设备号,用于策略升级,多个设备号用分号隔开 |
样例:
请求样例
{
"name": "calendar_2.0",
"code": 5,
"desc": "应用版本描述修改",
"url": "http://qiniufile/abc/calendar_2.0.zip",
"deviceIds": "112we31;233ddf;ad123"
}
返回样例
{"code":1000,"msg":"success"}
删除应用版本
- 功能描述:开发者可以删除某个应用版本
- 请求URL:DELETE /v1/user/{openId}/app/{appId}/version/{versionId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
versionId | String (必须) | 应用版本唯一编号 |
样例:
请求样例
curl -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" -H "Content-Type: application/json" -X DELETE http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/123356789/version/232sfddsf335
返回样例
{"code":1000,"msg":"success"}
获取应用版本列表
- 功能描述:获取开发者某个应用所有版本列表信息
- 请求URL:GET /v1/user/{openId}/app/{appId}/version
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
pageNo | Int (可选) | 页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据 |
pageSize | Int (可选) | 每页条数。取值范围:大于零的整数;最大值:100;默认值:30 |
orderBy | String (可选) | 排序方式。格式为column:asc/desc,column可选值:name(版本名)、create_date(创建时间)、code(版本号)。默认按照最新版本排序即code:desc |
返回参数
参数 | 类型 | 描述 |
---|---|---|
versionId | String | 应用版本唯一编号 |
name | String | 应用版本名称 |
url | String | 应用版本下载地址 |
createDate | Date | 应用版本创建时间 |
desc | String | 应用版本描述 |
md5 | String | 应用版本md5 |
code | Int | 应用版本号 |
active | Int | 是否发布,2表示未发布,1表示发布 |
totalCount | Int | 查询记录总条数 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/asd21332adsdf/versions?pageNo=1&pageSize=10&orderBy=code:desc
返回样例
{
"code": 1000,
"msg": "success",
"totalCount": 13,
"version": [
{
"appVersionId": "1298265320ada2",
"name": "应用版本名pay1.2.3-test名",
"createDate": "2016-02-29 17:33:23",
"desc": "应用版本描述",
"md5":"1hf6sd8fdgf76gf7hgfh9gf9h9f",
"code": 12,
"url": "http://ch.file.tomobile/pay1-2-3.zip",
"active": 2
}
]
}
获取应用版本详细
- 功能描述:获取开发者某个应用所有版本详细信息
- 请求URL:GET /v1/user/{openId}/app/{appId}/version/{versionId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
versionId | String (必须) | 应用版本唯一编号 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
versionId | String | 应用版本唯一编号 |
name | String | 应用版本名称 |
url | String | 应用版本下载地址 |
createDate | Date | 应用版本创建时间 |
desc | String | 应用版本描述 |
md5 | String | 应用版本md5 |
code | Int | 应用版本号 |
active | Int | 是否发布,1表示未发布,2表示发布 |
deviceIds | String | 设备号,多个设备用分号隔开 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/asd21332adsdf/versions/123435dsfs435
返回样例
{
"code": 1000,
"msg": "success",
"appVersion": {
"appVersionId": "1298265320ada2",
"name": "应用版本名pay1.2.3-test名",
"createDate": "2016-02-29 17:33:23",
"desc": "应用版本描述",
"code": 12,
"md5":"3245fgd0g80fdgdf9808fghf",
"deviceIds":"asd;fd;sdf",
"url": "http://ch.file.tomobile/pay1-2-3.zip",
"active": 1
}
}
发布应用
- 功能描述:开发者发布应用某一个版本。
- 请求URL:POST /v1/user/{openId}/app/{appId}/version/{versionId}/action
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号openId |
appId | String (必须) | 所属应用编号 |
versionId | String (必须) | 应用版本唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
release | String (必须) | 发布应用 |
样例:
请求样例
{"release":null}
返回样例
{"code":1000,"msg":"success"}
禁用应用发布
- 功能描述:开发者发布应用某一个版本。
- 请求URL:POST /v1/user/{openId}/app/{appId}/version/{versionId}/action
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号openId |
appId | String (必须) | 所属应用编号 |
versionId | String (必须) | 应用版本唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
disable | String (必须) | 取消应用发布 |
样例:
请求样例
{"disable ":null}
返回样例
{"code":1000,"msg":"success"}
创建应用模块
- 功能描述:开发者能够为应用创建应用模块。
- 请求URL:POST /v1/user/{openId}/app/{appId}/module
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 所属应用编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 应用模块名称 |
desc | String (可选) | 应用模块描述 |
icon | String (可选) | 应用模块图标 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
moduleId | String | 应用模块唯一编号 |
样例:
请求样例
{"name":"应用模块名","desc":"应用模块描述","icon":"http://a.b/c.png"}
返回样例
{
"code": 1000,
"msg": "success",
"moduleId ": "asda2342fdgdgd"
}
编辑应用模块
- 功能描述:开发者能够编辑应用模块信息。
- 请求URL:PUT /v1/user/{openId}/app/{appId}/module/{moduleId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 所属应用编号 |
moduleId | String (必须) | 应用模块编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 修改后应用模块名称 |
desc | String (可选) | 应用模块描述 |
icon | String (可选) | 应用模块图标 |
样例:
请求样例
{"name":"修改后应用模块名","desc":"应用模块描述修改","icon":"http://a.png"}
返回样例
{"code":1000,"msg":"success"}
删除应用模块
- 功能描述:开发者可以删除应用某个模块
- 请求URL:DELETE /v1/user/{openId}/app/{appId}/module/{module_id}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
moduleId | String (必须) | 应用模块唯一编号 |
样例:
请求样例
curl -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" -H "Content-Type: application/json" -X DELETE http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/123356789/module/232sfddsf335
返回样例
{"code":1000,"msg":"success"}
获取开发者应用模块列表
- 功能描述:获取开发者某个应用所以模块基本信息列表
- 请求URL:GET /v1/user/{openId}/app/{appId}/module
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
appId | String (必须) | 移动应用唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
pageNo | Int (可选) | 页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据 |
pageSize | Int (可选) | 每页条数。取值范围:大于零的整数;最大值:100;默认值:30 |
orderBy | String (可选) | 排序方式。格式为column:asc/desc ,column可选值:name(应用模块名),create_date(创建时间)。默认按创建时间降序(最新创建应用排在最前面)即 create_date:desc |
返回参数
参数 | 类型 | 描述 |
---|---|---|
moduleId | String | 应用模块唯一编号 |
name | String | 模块名称 |
createDate | Date | 应用模块创建时间 |
desc | String | 应用模块描述 |
icon | String | 应用模块图标 |
totalCount | Int | 查询记录总条数 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/ashdksjd90/module?pageNo=1&pageSize=10&orderBy=name:asc
返回样例
{
"code": 1000,
"msg": "success",
"totalCount": 10,
"module": [
{
"moduleId": "1298265320",
"icon": "http://a/b/c.png",
"name": "模块名",
"updateDate": "2016-02-29 17:33:23",
"createDate": "2016-02-29 17:33:23",
"desc": "修改描述",
"appId": "asdsfjksdjfklsj"
}
]
}
获取开发者应用模块详情
- 功能描述:获取开发者某个应用所以模块详细信息
- 请求URL:GET /v1/user/{openId}/app/{appId}/module/{moduleId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
appId | String (必须) | 移动应用唯一编号 |
moduleId | String (必须) | 移动应用模块唯一编号 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
moduleId | String | 应用模块唯一编号 |
name | String | 模块名称 |
createDate | Date | 应用模块创建时间 |
desc | String | 应用模块描述 |
icon | String | 应用模块图标 |
totalCount | Int | 查询记录总条数 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/ashdksjd90/module/asda
返回样例
{
"code": 1000,
"msg": "success",
"module": {
"moduleId": "1298265320",
"icon": "http://a/b/c.png",
"name": "模块名",
"updateDate": "2016-02-29 17:33:23",
"createDate": "2016-02-29 17:33:23",
"desc": "修改描述",
"appId": "asdsfjksdjfklsj"
}
}
创建应用模块版本
- 功能描述:开发者能够单独为应用模块创建版本上传应用模块包。
- 请求URL:POST /v1/user/{openId}/app/{appId}/module/{moduleId}/version
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号openId |
appId | String (必须) | 所属应用编号 |
moduleId | String (必须) | 应用模块编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 应用模块版本名称 |
code | Int (必须) | 应用模块版本号 |
url | String (必须) | 应用模块版本下载地址 |
desc | String (可选) | 应用模块版本描述 |
deviceIds | String (可选) | 设备号,用于策略升级,多个设备号用分号隔开 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
versionId | String | 应用模块版本唯一编号 |
name | String | 应用模块版本名称 |
code | Int | 应用模块版本号 |
url | String | 应用模块版本下载地址 |
desc | String | 应用模块版本描述 |
deviceIds | String | 设备号,用于策略升级,多个设备号用分号隔开 |
样例:
请求样例
{
"name": "calendar_1.0",
"code": 1,
"desc": "应用模块版本描述",
"url": "http://qiniufile/abc/calendar_1.0.zip",
"deviceIds": "112we3asd1;sdfs233ddf;ad123"
}
返回样例
{
"code": 1000,
"msg": "success",
"version": {
"versionId":"sdfs743878dfs909",
"name": "calendar_1.0",
"code": 1,
"desc": "应用模块版本描述",
"url": "http://qiniufile/abc/calendar_1.0.zip",
"deviceIds": "112we3asd1;sdfs233ddf;ad123"
}
}
编辑应用模块版本
- 功能描述:为开发者提供应用模块版本编辑功能。
- 请求URL:PUT /v1/user/{openId}/app/{appId}/module/{moduleId}/version/{versionId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号openId |
appId | String (必须) | 所属应用编号 |
versionId | String (必须) | 应用模块版本唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 修改后应用模块版本名称 |
code | Int (可选) | 修改后应用模块版本号 |
url | String (可选) | 修改后应用模块版本下载地址 |
md5 | String (可选) | 新下载包md5 |
desc | String (可选) | 修改后应用模块版本描述 |
deviceIds | String (可选) | 设备号,用于策略升级,多个设备号用分号隔开 |
样例:
请求样例
{
"name": "calendar_4.0",
"code": 4,
"desc": "应用模块版本描述修改",
"url": "http://qiniufile/abc/calendar_1.0.zip",
"deviceIds": "112we31;233ddf;ad123"
}
返回样例
{"code":1000,"msg":"success"}
删除应用模块版本
- 功能描述:开发者可以删除应用模块某一版本
- 请求URL:
DELETE /v1/user/{openId}/app/{appId}/module/{moduleId}/version/{versionId} - 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者登录后获取的openId |
appId | String (必须) | 应用唯一编号 |
modulenId | String (必须) | 应用模块唯一编号 |
versionId | String (必须) | 应用模块版本唯一编号 |
样例:
请求样例
curl -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" -H "Content-Type: application/json" -X DELETE http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/123356789/module/12312sdfds335/version/232sfddsf335
返回样例
{"code":1000,"msg":"success"}
获取应用模块版本列表
- 功能描述:获取开发者某个应用模块所有版本列表信息
请求URL:GET /v1/user/{openId}/app/{appId}/module/{moduleId}/version
参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
appId | String (必须) | 应用唯一编号 |
moduleId | String (必须) | 应用模块唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
pageNo | Int (可选) | 页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据 |
pageSize | Int (可选) | 每页条数。取值范围:大于零的整数;最大值:100;默认值:30 |
orderBy | String (可选) | 排序方式。格式为column:asc/desc,column可选值:name(版本名)、create_date(创建时间)、code(版本号)。默认按照最新版本排序即code:desc |
返回参数
参数 | 类型 | 描述 |
---|---|---|
versionId | String | 应用版本唯一编号 |
name | String | 应用模块版本名称 |
url | String | 应用模块版本下载地址 |
createDate | Date | 应用模块版本创建时间 |
desc | String | 应用模块版本描述 |
code | Int | 应用模块版本号 |
active | Int | 是否发布,0表示未发布,1表示发布 |
totalCount | Int | 查询记录总条数 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/user/a78sdf7fdd8gfdg8/app/asd21332adsdf/module/1231sdfs335/version?pageNo=1&pageSize=10&orderBy=code:desc
返回样例
{
"code": 1000,
"msg": "success",
"totalCount": 41,
"version": [
{
"versionId": "1298265320ada2",
"name": "应用模块版本名pay1.2.3-test名",
"createDate": "2016-02-29 17:33:23",
"desc": "应用模块版本描述",
"code": 12,
"url": "http://ch.file.tomobile/pay1-2-3.zip",
"active": 0
}
]
}
发布应用模块
- 功能描述:开发者发布应用模块某一个版本。
- 请求URL:
PUT /v1/user/{openId}/app/{appId}/module/{moduleId}/version/{versionId}/action - 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
appId | String (必须) | 应用唯一编号 |
moduleId | String (必须) | 应用模块唯一编号 |
versionId | String (必须) | 应用模块版本唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
release | String (必须) | 发布应用模块版本 |
样例:
请求样例
{"release":null}
返回样例
{"code":1000,"msg":"success"}
禁用应用模块发布
- 功能描述:开发者发布应用模块某一个版本。
- 请求URL:
PUT /v1/user/{openId}/app/{appId}/module/{moduleId}/version/{versionId}/action - 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
appId | String (必须) | 应用唯一编号 |
moduleId | String (必须) | 应用模块唯一编号 |
versionId | String (必须) | 应用模块版本唯一编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
disable | String (必须) | 取消应用模块版本发布 |
样例:
请求样例
{"disable":null}
返回样例
{"code":1000,"msg":"success"}
获取系统应用列表
- 功能描述:运营平台获取开放平台所有应用
请求URL:GET /v1/admin/app
参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
pageNo | Int (可选) | 页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据 |
pageSize | Int (可选) | 每页条数。取值范围:大于零的整数;最大值:100;默认值:30 |
orderBy | String (可选) | 排序方式。格式为column:asc/desc ,column可选值:name(应用名),create_date(创建时间)。默认按创建时间降序(最新创建应用排在最前面)即 create_date:desc |
name | String (可选) | 应用名,用于条件搜索 |
openId | String (可选) | 开发者编号,用于条件搜索 |
platform | Int (可选) | 应用平台,3为混合,1为Android,2为Ios,用于条件搜索 |
startCreateDate | Date(可选) | 必须与endCreateDate一起用,创建时间开始点 |
endCreateDate | Date(可选) | 必须与startCreateDate 一起用,创建时间结束点 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
appId | String | 应用唯一编号 |
openId | String | 开发者唯一编号 |
name | String | 应用名称 |
platform | Int | 应用平台,3为混合,1为Android,2为Ios |
status | Int | 应用状态,0为正常,1为冻结 |
createDate | Date | 应用创建时间 |
desc | String | 应用描述 |
status | Int | 应用是否被冻结,0为可用,1为冻结 |
totalCount | Int | 查询记录总条数 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/admin/apps?pageNo=1&pageSize=10&orderBy=name:asc&startCreateDate=2016-03-16 15:12:17&endCreateDate=2016-03-18 16:22:53&name=Tochc&platform=1
返回样例
{
"code": 1000,
"msg": "success",
"totalCount": 100,
"app": [
{
"appId": "1298265320",
"openId": "sadfsdflgjlkj437892374",
"name": "Tochc",
"platform": 1,
"createDate": "2016-03-17 17:33:23",
"desc": "修改描述",
"status": 0
}
]
}
冻结应用
- 功能描述:管理员能够在运营平台冻结某个应用,让其不再享有平台服务。
- 请求URL:POST /v1/admin/app/{appId}/action
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
appId | String (必须) | 所属应用编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
freeze | String (必须) | 冻结应用 |
样例:
请求样例
{"freeze":null}
返回样例
{"code":1000,"msg":"success"}
解冻应用
- 功能描述:管理员能够在运营平台解冻某个应用,让其继续享有平台服务。
- 请求URL:POST /v1/admin/app/{appId}/action
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
appId | String (必须) | 所属应用编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
unfreeze | String (必须) | 解冻应用 |
样例:
请求样例
{"unfreeze":null}
返回样例
{"code":1000,"msg":"success"}
平台功能
应用升级接口
- 功能描述:开放平台为移动应用提供自动升级检查。
- 请求URL:POST /v1/app/upgrade
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
appId | String (必须) | 应用唯一编号 |
appKey | String (必须) | 应用密钥 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
appName | String | 应用名称 |
versionName | String | 应用版本名 |
versionCode | Int | 应用版本值,用于升级检查 |
md5 | String | 版本包MD5 |
url | String | 版本包下载地址 |
desc | String | 升级描述 |
updateTime | Date | 更新时间 |
strategy | JsonObject (不是必须) | 升级策略,目前支持设备号(deviceIds),多个设备号用分号隔开 |
样例:
请求样例
{"appId ":"appId","appKey ":"appKey"}
返回样例
{
"code": 1000,
"msg": "success",
"version": {
"appName": "Touchc",
"versionName": "touchc_build_2.0.1",
"versionCode": 7,
"md5": "12skfncbgdys3jd8f9d7d9df8d",
"url": "http://domain/apk/touchc_build_2.0.1.zip",
"desc": "该版本解决了xxBug,提升了xx性能",
"updateTime ":"2016-03-12 15:32:34",
"strategy": {
"deviceIds": "a6d8jd7d9;asd2133;5asads232"
}
}
}
应用模块升级接口
- 功能描述:开放平台为移动应用模块也提供单独自动升级检查。
- 请求URL:POST /v1/app/module/upgrade
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
appId | String (必须) | 应用唯一编号 |
appKey | String (必须) | 应用密钥 |
moduleId | String (必须) | 应用模块唯一编号 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
moduleName | String | 应用模块名称 |
versionName | String | 应用模块版本名 |
versionCode | Int | 应用模块版本值,用于升级检查 |
md5 | String | 版本包MD5 |
url | String | 版本包下载地址 |
desc | String | 升级描述 |
updateTime | Date | 更新时间 |
strategy | JsonObject (不是必须) | 升级策略,目前支持设备号(deviceIds),多个设备号用分号隔开 |
样例:
请求样例
{"appId ":"appId","appKey ":"appKey","moduleId ":"moduleId"}
返回样例
{
"code": 1000,
"msg": "success",
"module": {
"moduleName": "calendar",
"versionName": "calendar_1.0",
"versionCode": 2,
"md5": "skfncbgdys3jdS38f9d7d9df8d",
"url": "http://domain/apk/calendar_1.0.zip",
"desc": "该模块解决了xxBug,增加xx功能",
"updateTime ":"2016-03-12 15:32:34",
"strategy": {
"deviceIds": "a6d8jd7d9;asd2133;5asads232"
}
}
}
海报模块功能
添加海报
- 功能描述:管理员添加海报。
- 请求URL:POST /v1/poster
- 状态码:正常返回1000,其他状态则表示请求未正常执行,具体参照错误码表
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
url | String (必须) | 海报地址 |
name | String (可选) | 海报名 |
sequence | int (可选) | 海报展示顺序 |
desc | String (可选) | 海报描述 |
href | String (可选) | 海报链接 |
样例:
请求样例
{
"url": "http://182.130.231.99:8080/pics/987020589_1080x570.jpg",
"name": "紫背天葵",
"sequence ": 1,
"desc": "紫背天葵 "
}
返回样例
{"code":1000,"msg":"success"}
编辑海报
- 功能描述:管理员编辑海报。
- 请求URL:PUT /v1/poster
- 状态码:正常返回1000,其他状态则表示请求未正常执行,具体参照错误码表
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
url | String (必须) | 海报地址 |
href | String (必须) | 海报链接 |
sequence | int (必须) | 海报展示顺序 |
样例:
请求样例
{
"url": "http://182.130.231.99:8080/pics/987020589_1080x570.jpg",
"sequence ": 12,
}
返回样例
{"code":1000,"msg":"success"}
删除海报
- 功能描述:管理员删除海报。
- 请求URL:DELETE /v1/poster/{posterid}
- 状态码:正常返回1000,其他状态则表示请求未正常执行,具体参照错误码表
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
posterid | String (必须) | 海报id |
样例:
请求样例
curl -H "Content-Type: application/json" http://domain:port/v1/poster/pageid/1
返回样例
{"code":1000,"msg":"success"}
获取海报
- 功能描述:获取海报列表。
- 请求URL:GET /v1/poster
- 状态码:正常返回1000,其他状态则表示请求未正常执行,具体参照错误码表
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
pageNo | Int (可选) | 页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据 |
pageSize | Int (可选) | 每页条数。取值范围:大于零的整数; |
返回参数
参数 | 类型 | 描述 |
---|---|---|
url | String (必须) | 海报地址 |
name | String (必须,可为空) | 海报名 |
sequence | Int (必须) | 海报展示顺序 |
desc | String (必须,可为空) | 海报描述 |
posterid | Int(必须) | 海报id |
total | Int(必须) | 返回的海报记录数 |
样例:
请求样例
curl -H "Content-Type: application/json" http://domain:port/v1/poster?pagesize=10&pageno=1
返回样例
{
"code": 1000,
"msg": "success",
"total": 1,
"result": [
{
"url": "http://182.130.231.99:8080/pics/987020589_1080x570.jpg",
"name": "紫背天葵",
"sequence ": 1,
"desc": "紫背天葵 ",
"posterid": 1
}
]
}
错误日志模块
上报错误日志
- 功能描述:sdk 发现错误后,通过该接口上报错误到服务端
- 请求 URL:POST /v1/logs
- 参数及样例
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
appId | string | 应用唯一编号 | 必须 |
appKey | String | 应用密钥 | 必须 |
appVersion | string | 应用版本 | 必须 |
deviceId | string | 设备型号 | 必须 |
appPackage | string | 应用包名 | 必须 |
context | string | 日志正文 | 必须 |
请求样例
{
"appId": "123",
"appKey":"as123",
"appVersion": "1.1.1",
"deviceId": "sdafef123",
"appPackage": "com.changhong.app",
"context": ["java.lang.NullPointerException","错误二","错误三"]
}
返回样例
{"code":1000,"msg":"success"}
错误日志列表查询
- 功能描述:官网调用该接口,获取错误日志列表展示
- 请求 URL:GET/v1/user/{openid}/logs
- 参数及样例
URL参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (必须) | 开发者唯一编号 |
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
pageSize | int | 一页显示的条数 | 否 |
pageNo | int | 当前页 | 否 |
appId | string | 应用唯一编号 | 否 |
after | int | 查询时间戳 | 否 |
bebofe | int | 查询时间戳 | 否 |
appVersion | string | app版本 | 否 |
appPackage | string | app包 | 否 |
orderBy | String | 排序方式,格式为column:asc/desc,column | 否 |
返回参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
code | int | 返回码 | 必须 |
msg | string | 返回消息 | 必须 |
errloglist | list | 错误信息列表 | 否 |
totalCount | int | 日志总条数 | 是 |
请求样例
curl -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/users/1d2a338a4b224f94/logs?appId=cc0b4bdc34fe4f6ba3a953717df98ba1&pageNo=1&pageSize=10&orderBy=createDate:desc&after=10&before=99999999999
返回样例
{
"code": 1000,
"msg": "success",
"totalCount": 30,
"errlogList": [
{
"appId": "123",
"appVersion": "1.1.1",
"deviceId": "sdafef123",
"appPackage": "com.changhong.app",
"createDate":"2016-04-14",
"context": "java.lang.NullPointerException"
},
{
"appId": "123",
"appVersion": "1.1.1",
"deviceId": "sdafef123",
"appPackage": "com.changhong.app",
"createDate":"2016-04-14",
"context": "java.lang.OutofMemeryException"
}
......
]
}
公共文档模块功能
添加文档
- 功能描述:管理员能够在运营平台,动态维护官网介绍文档,提供添加文档功能。
- 请求URL:POST /v1/admin/doc
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 文档名 |
url | String (必须) | 文档路径 |
type | Int(必须) | 文档类型,1为公共文档,2为模块文档,3为原生应用在线文档,4为相关下载,5为更新日志,6为常见问题,7为开发指南 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
docId | String (必须) | 文档id |
样例:
请求样例
{"name":"创建第一个文档","url":"http://domain/app/create.md","type":1}
返回样例
{"code":1000,"msg":"success","docId":"asdf324sdf"}
编辑文档
- 功能描述:管理平台提供文档的编辑功能。
- 请求URL:PUT /v1/admin/doc/{docId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
docId | String (必须) | 文档编号 |
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 修改后文档名 |
url | String (必须) | 修改后文档路径 |
样例:
请求样例
{"name":"创建第一个移动应用","url":"http://domain/app/update.md"}
返回样例
{"code":1000,"msg":"success"}
删除文档
- 功能描述:管理员能够在运营平台删除不再使用的文档。
- 请求URL:DELETE /v1/admin/doc/{docId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
docId | String (必须) | 文档编号 |
样例:
请求样例
curl -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" -H "Content-Type: application/json" -X DELETE http://domain:port/v1/admin/doc/123356789
返回样例
{"code":1000,"msg":"success"}
获取文档基本信息
- 功能描述:根据文档编号查询文档基本信息
请求URL:GET /v1/doc/{docId}
参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
docId | String (必须) | 文档唯一编号 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
name | String | 文档名称 |
type | Int | 文档类型,1为公共文档,2为模块文档,3为原生应用在线文档,4为相关下载,5为更新日志,6为常见问题,7为开发指南 |
url | String | 文档地址 |
createdate | string | 创建时间 |
updatedate | string | 更新时间 |
样例:
请求样例
curl -H "Content-Type:application/json" http://domain:port/v1/doc/a78sdf7fd
返回样例
{
"code":1000,"msg":"success","doc":{"docId":"aa129826sd5320","name":"基本介绍","type",1,"url":"http://domain/md/doc/info.md"
}
}
获取文档树
- 功能描述:官网在线文档树,由接口生产,该接口设计文档权限,需使用openId。
- 请求URL:GET /v1/doc/tree
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
openId | String (可选) | 传入openId则会对其做内外部用户判断,若不传入,默认查询所有开放文档 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
id | String (必须) | 树节点唯一编号 |
pid | String (必须) | 父节点唯一编号,若为”0”,则表示根节点 |
name | String (必须) | 树节点名称 |
url | String (不是必须) | 树节点对应文档地址 |
type | INT (不是必须) | 树节点对应文档类型,树节点没有对应文档则为0,1表示该节点对应文档为公共文档类型,2表示该节点对应文档为模块文档类型,3表示该节点对应文档为原生应用文档类型 |
样例:
请求样例
curl -H "Content-Type: application/json" http://domain:port/v1/doc/tree
返回样例
{
"code": 1000,
"msg": "success",
"tree": [
{
"id": "12213233",
"pid": "0",
"name": "topmobi",
"url": "",
"type": 0
},
{
"id": "3322332",
"pid": "12213233",
"name": "如何创建应用",
"url": "http://domain/md/capp.md",
"type": 1
},
{
"id": "llksdsf23323",
"pid": "0",
"name": "轻应用UI控件",
"url": "",
"type": 0
},
{
"id": "asd335657",
"pid": "llksdsf23323",
"name": "列表展示",
"url": "",
"type": 0
},
{
"id": "ggxxoo1213",
"pid": "asd335657",
"name": "grid",
"url": "http://domain/md/grid.md",
"type": 2
}
]
}
获取文档列表
- 功能描述:获取公共文档基本信息列表
- 请求URL:GET /v1/admin/doc
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String(可选) | 文档名称(模糊搜索) |
startCreateDate | string(可选) | 查询创建起始时间 |
endCreateDate | string(可选) | 查询创建结束时间 |
pageNo | Int (可选) | 页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据 |
pageSize | Int (可选) | 每页条数。取值范围:大于零的整数;最大值:100;默认值:30 |
orderBy | String (可选) | 排序方式。格式为column:asc/desc ,column可选值:name(文档名),create_date(创建时间)。默认按创建时间降序(最新创建应用排在最前面)即 create_date:desc |
返回参数
参数 | 子参数 | 类型 | 描述 |
---|---|---|---|
docs | docId | String | 文档唯一编号 |
docs | name | String | 文档名称 |
docs | url | String | 文档上传地址 |
docs | type | Int | 文档类型,1为公共文档,2为模块文档,3为原生应用在线文档,4为相关下载,5为更新日志,6为常见问题,7为开发指南 |
docs | createdate | string | 创建时间 |
docs | updatedate | string | 更新时间 |
code | Int | 返回码 | |
msg | string | 返回消息 | |
totalCount | Int | 查询记录总条数 |
样例:
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/admin/doc?pageNo=1&pageSize=10&orderBy=name:asc
返回样例
{
"code": 1000,
"msg": "success",
"totalCount": 120,
"docs": [
{
"docId": "1298265320",
"url": " http://asdf.sdf.com",
"name": "文档名",
"type": 1
}
]
}
SDK模块功能
添加SDK
- 功能描述:管理员添加SDK。
- 请求URL:POST /v1/admin/sdk
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | SDK名称 |
provider | String (必须) | SDK提供者 |
authority | String (必须) | SDK权限,0为内部可见,1为所有可见 |
desc | String (可选) | 应用模块描述 |
platform | String (必须) | 平台类型,3为所有平台,1为android,2为IOS |
type | String (必须) | SDK类型,1为轻应用,2为原始SDK |
返回参数
参数 | 类型 | 描述 |
---|---|---|
sdkId | String | SDK唯一编号 |
name | String | SDK名称 |
desc | String | SDK描述 |
createDate | String | 创建时间 |
样例:
请求样例
{
"name": "nklaj",
"provider": "najioe",
"authority": "0",
"desc": "jaijga",
"platform": "0",
"type": "1"
}
返回样例
{
"code": 1000,
"msg": "success",
"sdkinfo": {
"sdkid": "12",
"name": "nklaj",
"provider": "najioe",
"authority": "0",
"desc": "jaijga",
"platform": "0",
"type": "1"
}
}
修改SDK
- 功能描述:管理员修改SDK。
- 请求URL:PUT /v1/admin/sdk/{sdkId}
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (可选) | SDK名称 |
provider | String (可选) | SDK提供者 |
authority | String (可选) | SDK权限,0为内部可见,1为所有可见 |
desc | String (可选) | SDK描述 |
platform | String (可选) | 平台类型,3为所有平台,1为android,2为IOS |
type | String (可选) | SDK类型,1为轻应用,2为原始SDK |
返回参数
参数 | 类型 | 描述 |
---|---|---|
sdkId | String | SDK唯一编号 |
name | String | SDK名称 |
provider | String | SDK提供者 |
authority | String | SDK权限 |
platform | String | 平台类型 |
type | String | SDK类型 |
desc | String | SDK描述 |
updateDate | String | 更新时间 |
createDate | String | 创建时间 |
样例:
请求样例
{
"name": "nklaj",
"provider": "najioe",
"authority": "0",
"desc": "jaijga",
"platform": "0",
"type": "1"
}
返回样例
{
"code": 1000,
"msg": "success",
}
获取SDK
- 功能描述:管理员获取SDK。
- 请求URL:GET /v1/admin/sdk/{sdkId}
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
type | int(可选) | SDK类型 |
pageNo | int (可选) | SDK名称 |
PageSize | int (可选) | SDK提供者 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
sdkId | String | SDK唯一编号 |
name | String | SDK名称 |
provider | String | SDK提供者 |
authority | String | SDK权限 |
platform | String | 平台类型 |
type | String | SDK类型 |
desc | String | SDK描述 |
updateDate | String | 更新时间 |
createDate | String | 创建时间 |
resourceList说明
参数 | 类型 | 描述 |
---|---|---|
resourceId | String | 资源唯一编号 |
name | String | 资源名称 |
sdkId | String | SDK唯一编号 |
type | String | 资源类型,1为html,2为md文档及引用doc,3为SDK包,4为SDK示例,5为文档包 |
url | String | type 为sdk安装包,则有下载地址,若html为地址,则这里也是连接 |
docType | String | doc类型,1为公共文档,2为模块文档,3为原生应用在线文档,4为相关下载,5为更新日志,6为常见问题,7为开发指南 |
updateDate | String | 更新时间 |
createDate | String | 创建时间 |
样例:
请求样例
http://domain:port/v1/admin/sdk/a58f556246b242dfa7397a0be37c639d
返回样例
{
"code": 1000,
"message": "success",
"resourceList": [
{
"resourceId": "09fceb0dd01842e8a19cb85e47c97d71",
"name": "8b889daf3e6b44a291bf94b18e0309af.zip",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "4",
"docId": "",
"url": "8b889daf3e6b44a291bf94b18e0309af.zip",
"createDate": "2016-04-18 16:37:20",
"updateDate": "2016-04-18 16:37:20",
"docType": ""
},
{
"resourceId": "13f7645098544350a482d211331df4e9",
"name": "test",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "1",
"docId": "",
"url": "file/html/test.html",
"createDate": "2016-04-18 16:37:32",
"updateDate": "2016-04-18 16:37:32",
"docType": ""
},
{
"resourceId": "1a0bb7a19c8b4c5dabfaadb1850503d3",
"name": "b65d1722-96c1-4c",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "2",
"docId": "8a724c6b303e4fc7a79d28b8791ae93d",
"url": "sdk/a58f556246b242dfa7397a0be37c639d/document/b65d1722-96c1-4c.md",
"createDate": "2016-04-18 16:38:43",
"updateDate": "2016-04-18 16:38:43",
"docType": "3"
},
{
"resourceId": "48b1626827834d91a030ab0c5be51a1e",
"name": "ed165d00a29b454ab3a5512cc60f82d6.zip",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "3",
"docId": "",
"url": "ed165d00a29b454ab3a5512cc60f82d6.zip",
"createDate": "2016-04-18 16:37:21",
"updateDate": "2016-04-18 16:37:21",
"docType": ""
},
{
"resourceId": "49e0ecbaf8ba4c0780ba888b69eda0ba",
"name": "01387422-6a14-4a",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "2",
"docId": "e7de6cb6032f47de941caca664e24211",
"url": "sdk/a58f556246b242dfa7397a0be37c639d/download/01387422-6a14-4a.md",
"createDate": "2016-04-18 16:38:43",
"updateDate": "2016-04-18 16:38:43",
"docType": "4"
},
{
"resourceId": "811a0f3734a14d808e089e8080c76826",
"name": "7b980e1c-af35-4a",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "2",
"docId": "8a69250d281e4c95bcde240e2d7d409b",
"url": "sdk/a58f556246b242dfa7397a0be37c639d/problem/7b980e1c-af35-4a.md",
"createDate": "2016-04-18 16:38:43",
"updateDate": "2016-04-18 16:38:43",
"docType": "6"
},
{
"resourceId": "8e4c1cb77d2947ef8a2c47f8bca721d9",
"name": "9a84934f666b40d2a617a58ed2eae543.zip",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "5",
"docId": "",
"url": "9a84934f666b40d2a617a58ed2eae543.zip",
"createDate": "2016-04-18 16:37:20",
"updateDate": "2016-04-18 16:37:20",
"docType": ""
},
{
"resourceId": "a0076c0e283042bcab61f30b21509b2d",
"name": "4302e225-246f-49",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "2",
"docId": "00ba249e8f7744d0ac89f707a5fe1e57",
"url": "sdk/a58f556246b242dfa7397a0be37c639d/log/4302e225-246f-49.md",
"createDate": "2016-04-18 16:38:43",
"updateDate": "2016-04-18 16:38:43",
"docType": "5"
},
{
"resourceId": "a28334114b7c4019aad6a37d7fad1b4a",
"name": "b53a83c7-d220-48",
"sdkId": "a58f556246b242dfa7397a0be37c639d",
"type": "2",
"docId": "cea14af0cace4538a243156efd264c63",
"url": "sdk/a58f556246b242dfa7397a0be37c639d/key/b53a83c7-d220-48.md",
"createDate": "2016-04-18 16:38:43",
"updateDate": "2016-04-18 16:38:43",
"docType": "7"
}
],
"resourceTotal": 9,
"sdkinfo": {
"sdkid": "a58f556246b242dfa7397a0be37c639d",
"name": "baiweitest",
"provider": "TopMobi",
"createdate": "2016-04-18 16:37:20",
"updatedate": "2016-04-18 16:37:20",
"desc": "test",
"authority": "1",
"platform": "0",
"type": "2"
}
}
删除SDK
- 功能描述:管理员删除SDK。
- 请求URL:DELETE /v1/admin/sdk/{sdkId}
- 参数及样例:
样例:
请求样例
http://domain:port/v1/sdk/1
返回样例
{
"code": 1000,
"msg": "success"
}
资源模块功能
添加资源
- 功能描述:管理员添加资源。
- 请求URL:POST /v1/admin/resource
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (必须) | 资源名称 |
sdkId | String (可选) | SDK唯一ID,type为3时必须 |
type | String (必须) | 资源类型,1为html,2为md文档及引用doc,3为SDK包,4为SDK示例 |
docId | String (可选) | 文件ID,type为md,则有docid字段 |
url | String (必须) | type 为sdk安装包,则有下载地址,若html为地址,则这里也是连接 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
name | String | 资源名称 |
resourceId | String | 资源唯一ID |
url | String | 资源url |
type | String | 资源类型 |
createDate | String | 创建时间 |
样例:
请求样例
{
"name": "nklaj",
"sdkId": "2141",
"type": "3",
"url": "jaijga",
}
返回样例
{
"code": 1000,
"msg": "success",
"result": {
"resourceId": "asda2342fdgdgd",
"name": "nklaj",
"type": "3",
"url": "dasjfa",
"createDate": "2016-03-15 12:13:11"
}
}
修改资源
- 功能描述:管理员修改资源。
- 请求URL:PUT /v1/admin/resource/{resourceId}
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
name | String (可选) | 资源名称 |
sdkId | String (可选) | SDK唯一ID,type为3时必须 |
type | String (必须) | 资源类型,1为html,2为md文档及引用doc,3为SDK包,4为SDK示例 |
docId | String (可选) | 文件ID,type为md,则有docid字段 |
url | String (可选) | type 为sdk安装包,则有下载地址,若html为地址,则这里也是连接 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
name | String | 资源名称 |
resourceId | String | 资源唯一ID |
url | String | 资源url |
type | String | 资源类型 |
updateDate | String | 创建时间 |
样例:
请求样例
{
"name": "nklaj",
"type": "3",
"url": "jaijga",
}
返回样例
{
"code": 1000,
"msg": "success",
"result": {
"resourceId": "asda2342fdgdgd",
"name": "nklaj",
"type": "3",
"url": "dasjfa",
"updateDate": "2016-03-15 12:13:11"
}
}
获取资源
- 功能描述:管理员获取资源。
- 请求URL:GET /v1/admin/resource/{resourceId}
- 参数及样例:
请求参数
参数 | 类型 | 描述 |
---|---|---|
pageNo | int (可选) | SDK名称 |
PageSize | int (可选) | SDK提供者 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
name | String | 资源名称 |
sdkId | String | SDK唯一ID,type为3时必须 |
type | String | 资源类型,1为html,2为md文档及引用doc,3为SDK包,4为SDK示例 |
docId | String ) | 文件ID,type为md,则有docid字段 |
url | String | type 为sdk安装包,则有下载地址,若html为地址,则这里也是连接 |
updateDate | String | 更新时间 |
createDate | String | 创建时间 |
删除SDK
- 功能描述:管理员删除资源。
- 请求URL:DELETE /v1/admin/resource/{resourceId}
- 参数及样例:
样例:
请求样例
http://domain:port/v1/resource/1
返回样例
{
"code": 1000,
"msg": "success"
}
轻应用SDK模块分类
添加轻应用SDK模块分类
- 功能描述:管理后台调用该接口添加轻应用模块的分类
- 请求URL:POST /v1/admin/sdk/lightmodule/category
- 参数及样例:
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
name | string | 分类名称 | 必须 |
docId | string | 文档ID | 必须 |
type | string | 模块类型,1为普通,2为精选 | 可选 |
返回参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
code | int | 返回码 | 必须 |
msg | string | 返回消息 | 必须 |
moduleCategoryId | string | 分类ID | 必须 |
请求样例
{
"name":"界面布局",
"docId":"qwert12345"
}
返回样例
{
"code":1000,
"msg":"success",
"moduleCategoryId":"akdjflweojsdkjflk"
}
查询轻应用SDK模块分类列表
- 功能描述:管理后台调用该接口查询轻应用模块的分类列表
- 请求URL:GET /v1/sdk/lightmodule/category
- 参数及样例:
请求参数:无
返回参数
参数 | 子成员 | 类型 | 描述 | 是否必须 |
---|---|---|---|---|
code | int | 返回码 | 必须 | |
msg | string | 返回消息 | 必须 | |
moduleCategoryList | moduleCategoryId | string | 分类ID | 必须 |
name | string | 分类名称 | 必须 |
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/admin/sdk/lightmodule/category
返回样例
{
"code":1000,
"msg":"success"
"moduleCategoryList":[
{
"moduleCategoryId":"idxxxx",
"name":"界面布局"
},
{
"moduleCategoryId":"idyyyy",
"name":第三方"
}]
}
编辑轻应用SDK模块分类
- 功能描述:管理后台调用该接口编辑轻应用模块的分类
- 请求URL:PUT /v1/admin/sdk/lightmodule/category/{moduleCategoryId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
moduleCategoryId | string | 分类ID | 必须 |
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
name | string | 分类名称 | 可选 |
docId | string | 文档ID | 可选 |
返回参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
code | int | 返回码 | 必须 |
msg | string | 返回消息 | 必须 |
请求样例
{
"name":"界面布局",
"docId":"qwert12345"
}
返回样例
{
"code":1000,
"msg":"success"
}
删除轻应用SDK模块分类
- 功能描述:管理后台调用该接口删除轻应用模块的分类
- 请求URL:DELETE /v1/admin/sdk/lightmodule/category/{moduleCategoryId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
moduleCategoryId | string | 分类ID | 必须 |
返回参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
code | int | 返回码 | 必须 |
msg | string | 返回消息 | 必须 |
请求样例
curl -H "Content-Type: application/json" http://domain:port/v1/admin/sdk/lightmodule/category/categoryid123
返回样例
{
"code":1000,
"msg":"success"
}
轻应用SDK模块
添加轻应用SDK模块
- 功能描述:管理后台调用该接口添加新的轻应用SDK模块,需要先上传轻应用SDK。
- 请求URL:POST /v1/admin/sdk/lightmodule
- 参数及样例:
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
name | string(255) | 模块名称 | 必须 |
moduleCategoryId | string | 模块大类ID | 必须 |
sdkId | string(18) | sdk ID | 必须 |
picUrl | string | 图片地址 | 必须 |
docId | string | 文档ID | 必须 |
desc | string(255) | 描述 | 可选 |
type | string | 模块类型,1为普通,2为精选 | 可选 |
返回参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
code | int | 返回码 | 必须 |
msg | string | 返回消息 | 必须 |
lightModulId | string | 模块id | 必须 |
请求样例:
{
"name":"sideMenu",
"moduleCategoryId":11,
"sdkId":"akdjfwoiejfwksdjfk",
"picUrl":"url1,url2",
"docId":1,
"desc":"这是一个sideMenu模块"
"type":"1"
}
返回样例:
{
"code":1000,
"msg":"success",
"lightModuleId":"akdjflweojsdkjflk"
}
编辑轻应用SDK模块
- 功能描述:管理后台调用该接口编辑指定的轻应用SDK。
- 请求URL:PUT /v1/admin/sdk/lightmodule/{lightModuleId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
lightModuleId | string | 模块ID | 必须 |
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
name | string | 模块名称 | 必须 |
moduleCategoryId | int | 模块大类ID | 必须 |
sdkId | string | sdk ID | 必须 |
picUrl | string | 图片地址 | 必须 |
docId | string | 文档ID | 必须 |
desc | string | 描述 | 可选 |
type | string | 模块类型,1为普通,2为精选 | 可选 |
返回参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
code | int | 返回码 | 必须 |
msg | string | 返回消息 | 必须 |
请求样例:
{
"name":"sideMenu",
"moduleCategoryId":11,
"sdkId":"akdjfwoiejfwksdjfk",
"picUrl":"url1,url2",
"docId":1,
"desc":"这是一个sideMenu模块"
"type":"1"
}
返回样例:
{
"code":1000,
"msg":"success"
}
查询轻应用SDK模块列表
- 功能描述:调用该接口查看轻应用模块块列表
- 请求URL:GET /v1/sdk/lightmodule/list
- 参数及样例:
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
pageNo | int | 当前页 | 可选 |
pageSize | int | 每页数量 | 可选 |
orderAttr | string | 排序字段 | 可选 |
orderType | string | 升序/降序 | 可选 |
openId | string | 开发者oppId,传入openId则会对其做内外部用户判断,若不传入,默认查询所有开放文档 | 可选 |
moduleCategoryId | string | 模块分类ID | 可选 |
返回参数
参数 | 子成员 | 类型 | 描述 | 是否必须 |
---|---|---|---|---|
code | int | 返回码 | 必须 | |
msg | string | 返回消息 | 必须 | |
dataList | lightModuleId | string | 模块ID | 必须 |
sdkName | string | 所属sdk | 必须 | |
moduleCategoryName | string | 分类名称 | 必须 | |
name | string | 名称 | 必须 | |
pic | string | 图片地址 | 必须 | |
createDate | string | 创建时间 | 必须 | |
updateDate | string | 修改时间 | 必须 |
请求样例:
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/lightmodule/list?pageNo=1&pageSize=10&orderAttr=createDate&orderType=desc&moduleCategoryId=skfjsfl
返回样例:
{
"code":1000,
"msg":"success",
"dataList":[{
"lightModuleId":"sasldks",
"sdkName":"sideMenu",
"moduleCategoryName":"界面布局",
"name":"菜单组件",
"pic":"url1;url2",
"createDate":"2016-03-10 00:00:00",
"updateDate":"2016-03-11 00:00:00"
}]
}
查询轻应用SDK模块详情
- 功能描述:管理后台调用该接口获取轻应用SDK的详细信息。
- 请求URL:GET /v1/sdk/lightmodule/{lightModulId}
- 参数及样例:
URL参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
lightModuleId | string | 模块ID | 必须 |
返回参数
参数 | 子成员 | 类型 | 描述 | 是否必须 |
---|---|---|---|---|
code | int | 返回码 | 必须 | |
msg | string | 返回消息 | 必须 | |
data | lightModuleId | string | 模块ID | 必须 |
name | string | 模块名称 | 必须 | |
sdkName | string | sdk名称 | 必须 | |
sdkVersion | string | sdk版本 | 必须 | |
sdkUpdateDate | string | sdk更新日期 | 必须 | |
docUrl | string | 文档地址 | 必须 | |
pic | string | 图片地址 | 必须 |
请求样例:
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/lightmodule/detail?lightModuleId=skdfwlpsfeo
返回json样例:
{
"code":1000,
"msg":"success",
"data":{
"lightModuleId":"skdfwlpsfeo",
"name":"菜单",
"sdkName":"sideMenu",
"sdkVersion":"1.0.0",
"sdkUpdateDate":"2016-01-01 00:00:00"
"docUrl":"http://docurl",
"pic":"url1,url2"
}
}
删除轻应用SDK模块
- 功能描述:管理后台调用该接口删除指定的轻应用SDK。
- 请求URL:DELETE /v1/admin/sdk/lightmodule/{lightModuleId}
- 状态码:正常返回1000,其他状态则表示请求未正常执行,具体参照错误码表
- 参数及样例:
请求参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
lightModuleId | string | 模块ID | 必须 |
返回参数
参数 | 类型 | 描述 | 是否必须 |
---|---|---|---|
code | int | 返回码 | 必须 |
msg | string | 返回消息 | 必须 |
请求样例
curl -H "Content-Type: application/json" -H "X-Auth-Token:ay8sdf9asd8fdg9sdfsd" http://domain:port/v1/lightmodule/delete?lightModuleId=skdfwlpsfeo
返回样例
{
"code":1000,
"msg":"success"
}
获取轻应用模块下载地址
- 功能描述:管理员修改SDK。
- 请求URL:GET /v1/sdk/lightmodule/{lightModulId}/download
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
lightModulId | String (必须) | 轻应用模块编号 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
downLoadUrl | String | 轻应用下载地址 |
样例:
请求样例
curl -H "Content-Type: application/json" http://domain:port/v1/sdk/lightmodule/asdsdfdsfgdgfd/download
返回样例
{
"code": 1000,
"msg": "success",
"downLoadUrl":"abcdefg"
}
公共接口
官网上传文件
- 功能描述:上传文件到服务器。
- 请求URL:POST /v1/user/uploadfile
- 参数及样例:
请求使用form-data参数
参数 | 类型 | 描述 |
---|---|---|
uploadfile | file (必须) | 要上传的文档 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
id | String | 文档的 id |
md5 | String | 文档 MD5 |
filename | String | 重命名后的文件名 |
样例:
返回样例
{"code":1000,"filename":"aa97e43ddaf04400b14f497ab3233b3a.jpeg","id":"570c53cca2031034f4abc6bc","md5":"7bacf0cc1a76e466937c2099af8ab407","message":"success"}
官网删除文件
- 功能描述:根据 filename 删除文件。
- 请求URL:DELETE /v1/user/uploadfile/{filename}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
filename | string | 文档名称 |
样例:
请求样例
curl http://domain:port/v1/user/uploadfile/82ec076c283348b7aee32aa62187e045.jpeg
返回样例
{"code":1000,"message":"success"}
上传文件
- 功能描述:上传文件到服务器。
- 请求URL:POST /v1/uploadfile
- 参数及样例:
请求使用form-data参数
参数 | 类型 | 描述 |
---|---|---|
uploadfile | file (必须) | 要上传的文档 |
返回参数
参数 | 类型 | 描述 |
---|---|---|
id | String | 文档的 id |
md5 | String | 文档 MD5 |
filename | String | 重命名后的文件名 |
样例:
返回样例
{"code":1000,"filename":"aa97e43ddaf04400b14f497ab3233b3a.jpeg","id":"570c53cca2031034f4abc6bc","md5":"7bacf0cc1a76e466937c2099af8ab407","message":"success"}
删除文件
- 功能描述:根据 filename 删除文件。
- 请求URL:DELETE /v1/uploadfile/{filename}
- 参数及样例:
URL参数
参数 | 类型 | 描述 |
---|---|---|
filename | string | 文档名称 |
样例:
请求样例
curl http://domain:port/v1/uploadfile/82ec076c283348b7aee32aa62187e045.jpeg
返回样例
{"code":1000,"message":"success"}
问答社区接口
添加用户
- 功能描述:官网用户同步到问答社区。
- 请求URL:POST /v1/user/
- 参数及样例:
请求使用参数
参数 | 类型 | 描述 |
---|---|---|
type | String(必须) | 只能是email或者phone |
token | String(必须) | 开发者注册成功后获取的toekn |
openId | String(必须) | 开发者注册成功后获取的openId |
password | String(必须) | 开发者注册官网时使用的密码 |
样例:
请求样例
{"type":"email","token":"f89a4c168a63a0874e8b77133f8fa15f","openId":"1d2a338a4b224f94","password":"www"}
返回样例
{"code":1000,"message":"success"}
修改用户密码
- 功能描述:官网用户修改密码后需要同步到问答社区。
- 请求URL:PUT /v1/user/
- 参数及样例:
请求使用参数
参数 | 类型 | 描述 |
---|---|---|
type | String(必须) | 只能是email或者phone |
token | String(必须) | 开发者注册成功后获取的toekn |
openId | String(必须) | 开发者注册成功后获取的openId |
password | String(必须) | 开发者注册官网时使用的密码 |
样例:
请求样例
{"type":"phone","token":"f89a4c168a63a0874e8b77133f8fa15f","openId":"1d2a338a4b224f94","password":"aaaaaa"}
返回样例
{"code":1000,"message":"success"}
获取最新动态
- 功能描述:官网首页获取问答社区最新5条动态信息。
- 请求URL:GET /v1/questions/
- 参数及样例:
返回参数
参数 | 类型 | 描述 |
---|---|---|
questionId | Int | 问题编号,用于跳转具体页面。http://ip:port/?/question/id |
questionContext | String | 问答标题 |
updateTime | Int | 更新时间 |
样例:
请求样例
无
返回样例
{
"code": 1000,
"message": "success",
"questions": [
{
"questionId": 3,
"questionContext": "test................One",
"updateTime": 1460971960
},
{
"questionId": 6,
"questionContext": "four............................test",
"updateTime": 1460971517
},
{
"questionId": 5,
"questionContext": "three...........................test",
"updateTime": 1460971466
},
{
"questionId": 4,
"questionContext": "test.......................two",
"updateTime": 1460971446
},
{
"questionId": 2,
"questionContext": "F &A &Q",
"updateTime": 1460971275
}
]
}
错误码定义
错误码 | 错误类型 | 描述 |
---|---|---|
4000 | 请求参数非法 | 缺少必要参数,或者参数值格式不正确,具体错误信息请查看错误描叙 msg 字段。 |
4001 | 鉴权失败 | Token认证失败,请参考用户中心鉴权部分。 |
4003 | 拒绝访问 | 用户帐号没有相应权限等。 |
4004 | 资源不存在 | 资源标识对应的实例不存在 |
4007 | 业务异常 | 业务逻辑错误 |
5000 | 系统错误 | 服务器内部出现错误 |