概述
智城云具备对企业开放数据的能力,OpenAPI企业版就是针对有开发能力的企业提供的一组开放接口,通过这些接口,企业可以对自己的资源进行二次开发使用,这些接口包含了对用户、设备、数据和部分产品信息进行管理,企业可以随时提取自己的数据信息,对于企业特殊需求,智城云也可以提供定制接口满足。
名词解释
名词 |
含义 |
applicationId |
应用ID,每个企业开发者的唯一标识,可以在企业管理平台用户中心中查看,一个企业只有一个应用标识 |
applicationKey |
应用密钥,每个企业开发者的密钥,做请求签名时必须加上的参数 |
ts |
时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的毫秒数 |
sign |
请求签名,每次请求需要带上一个签名,验证请求是否有效,签名方式可以参考安全规范 |
content-type |
请求中的媒体类型信息,智城云OpenAPI中如无特殊说明,输入和输出均是application/json;charset=utf-8 |
did/deviceId |
设备ID,设备唯一标识 |
uid/openId |
用户ID,用户唯一标识 |
platformId |
用户所属的用户系统,每个用户系统是独立的一套,同一平台内用户名/邮箱/电话号码独立唯一,一个企业对应一个用户平台ID |
接口规范
命名规范
OpenAPI采用标准的Restful规范定义接口,HTTP请求的几大关键要素:
- 请求协议:包括安全的和非安全的协议,安全的一般为:HTTPS,非安全的为:HTTP
- 请求主机域名:请求的域名,决定请求哪种环境,例如:api.machtalk.net
- 请求地址:请求的相对路径,类似 /v1/user,请求地址一般为名词
- 请求头信息:头信息包括标准的头信息,如:Accept-Language,Keep-Alive等,智城云的标准开放参数也放在头信息中,如openId,openKey,applicationId,applicationKey,开放参数统一使用大写。注意Content-Type头信息对于文本型的请求统一使用application/json;charset=utf-8
- 请求方式:请求方式包括四种:GET,POST,PUT,DELETE;标识请求的操作类型
请求方式 |
含义 |
GET |
获取资源 |
POST |
增加资源 |
PUT |
修改资源 |
DELETE |
删除资源 |
OpenAPI命名规范
- 使用有含义的英文单词
- API中包含版本号
- 使用请求方式决定操作类型,而不是将操作类型放在API地址上
- 同一模块尽量使用相同的层级,比如用户模块使用/v1/user/XX/YY,保证可读性
- API的参数会进行业务校验
输入和输出
OpenAPI的输入与输出都是JSON,提交的参数以流的形式传参给服务器,服务器会把每个请求都理解为JSON字符串
智城云OpenAPI采用标准的Restful接口风格,标准的文本类接口的content-type使用application/json,输入和输出均使用标准的JSON格式,设备输入的参数长度不能超过2K
安全规范
接口请求,必须保证每次请求的安全合法,智城云OpenAPI使用SHA1对请求信息进行运算得到一个摘要进行请求的签名
智城云OpenAPI分为两类API:需要鉴权的和不需要鉴权的
- 不需要用户鉴权的:例如获取地理位置信息,获取错误码等,具体的可以看参数说明,不需要加密
- 需要用户鉴权的:例如查看用户列表,设备列表等,具体的可以看参数说明,需要用户鉴权的加密方法为:SHA1(请求方式(大写)+RequestURI+requestBody+ts+applicationKey),
参数举例如下,SHA1(POST/v1/users{“pageNo”:1,”pageSize”:10}161793457583407122127fb594efd89bb7dec00d3470e)
接口限制
平台的接口调用并不是无限制的。为了防止开发者号的程序错误而引发服务器负载异常,默认情况下,每个应用调用接口都不能超过一定限制,当即将超过一定限制时,调用对应接口会收到错误码,同时会发送告警邮件给企业负责人和平台运维人员,基本的访问限制规则为同一IP每5分钟调用接口10000次,同一企业5分钟内调用3000次,超过阈值则抛错,1小时后恢复接口调用。
接口调试
调试接口的地址为:https://bapi.zcyun.cn/swagger/index.html
对于那些需要用户鉴权的接口,需要首先点击[鉴权]按钮,填写企业开发信息,鉴权一次有效期8小时,重新鉴权会覆盖上次鉴权信息,不需要鉴权的接口则不用用户鉴权
注意事项
请求头信息
所有需要鉴权的接口,基本的Headers应该至少包括如下内容:
Header_Key |
Header_Value |
applicationId |
企业的开放信息账号,可以在企业后台中查看 |
ts |
请求时间戳,需要是13位的毫秒级时间戳,时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的毫秒数,时间戳如果小于服务器时间20s会导致请求错误 |
sign |
加密签名,算法为SHA1(HTTPMethod(大写)+RequestURI+params+ts+applicationKey),applicationKey为企业开放信息Key,可以在企业后台中查看,requestBody是请求的json参数字符串,保留原始的请求内容 |
失败返回
所有接口的请求,失败时会统一返回固定格式:
1 2 3 4
| { "code": 0, "msg": "error message" }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
msg |
失败描述 |
String |
错误描述 |
请求域名
默认所有API的请求域名为:
请求时请在接口URL加上这个前缀
接口列表
用户类
接口名称 |
接口地址 |
请求方式 |
接口含义 |
查询用户列表 |
/v1/users |
POST |
查询用户信息列表 |
查看用户信息 |
/v1/user/{uid} |
GET |
查看用户的信息 |
添加用户记录 |
/v1/user |
POST |
自定义添加用户记录 |
修改用户信息 |
/v1/user/{uid} |
PUT |
修改用户的信息 |
设备类
接口名称 |
接口地址 |
请求方式 |
接口含义 |
查询设备列表 |
/v1/device/devices |
POST |
查询设备列表接口 |
查看设备详情 |
/v1/device/info/{did} |
GET |
查看设备详情 |
查看设备快照 |
/v1/device/snapshots/{did} |
GET |
查看设备快照 |
控制单个设备 |
/v1/device/optDid/{did} |
POST |
控制单个设备 |
批量控制设备 |
/v1/device/batchControl |
POST |
批量控制设备 |
查询设备实时状态 |
/v1/device/status/{did} |
GET |
查询设备实时状态 |
初始化设备 |
/v1/device/reset/{did} |
DELETE |
初始化设备 |
查看设备描述 |
/v1/device/desc/{did} |
GET |
查看设备描述 |
添加设备分组 |
/v1/device/group |
POST |
添加设备分组 |
获取设备分组列表 |
/v1/device/groups |
GET |
获取设备分组列表 |
批量删除分组内的设备 |
/v1/device/group/patchdel |
POST |
批量删除分组内的设备 |
删除设备分组 |
/v1/device/group/{groupId} |
DELETE |
删除设备分组 |
批量追加分组设备 |
/v1/device/group/patchadd |
POST |
批量追加分组设备 |
新增设备定时任务 |
v1/device/timertask/add |
POST |
新增设备定时任务 |
删除定时任务 |
/v1/device/timertask/{taskId} |
DELETE |
删除定时任务 |
修改定时任务 |
/v1/device/timertask/{taskId} |
PUT |
修改定时任务 |
查询定时任务列表 |
/v1/device/timertasks/{did} |
GET |
查询定时任务列表 |
查询单个定时任务 |
/v1/device/timertask/{taskId} |
GET |
查询单个定时任务 |
绑定设备 |
/v1/device/bind |
POST |
绑定设备 |
解绑设备 |
/v1/device/unbind |
POST |
解绑设备 |
用户绑定的设备列表 |
/v1/devices/{uid} |
GET |
用户绑定的设备列表 |
设备所属的用户列表 |
/v1/device/users/{did} |
GET |
设备所属的用户列表 |
根据物联网卡信息获取设备ID |
/v1/device/getGidByMac/{mac} |
GET |
根据IMEI/MAC获取设备 |
保存指定产品下的模块信息 |
/v1/youxiDevice/save |
POST |
保存指定产品下的模块信息 |
获取升级固件详细信息 |
/v1/youxiDevice/getInfo |
POST |
根据imei,productkey,version获取升级固件 |
设备数据类
接口名称 |
接口地址 |
请求方式 |
接口含义 |
设备上报数据 |
/v1/data/datapoints |
POST |
设备上报数据 |
设备上报数据统计 |
/v1/data/stats/{gid}/{did}/{dvid}/{type}/{period}/{date} |
GET |
设备上报数据统计 |
设备故障详细数据 |
/v1/device/faults |
POST |
设备故障详细数据 |
故障次数统计数据 |
/v1/device/faults/stats |
POST |
故障次数统计数据 |
设备告警详细数据 |
/v1/device/alarms |
POST |
获取报警设备统计数据 |
设备告警统计数据 |
/v1/device/alarms/stats |
POST |
设备告警统计数据 |
设备当天概况 |
/v1/data/devices/summary |
GET |
设备当天概况 |
设备历史概况 |
/v1/data/devices/summary/day |
GET |
设备历史概况 |
设备激活详细数据 |
/v1/data/devices/increase |
POST |
设备激活详细数据 |
设备活跃详细数据 |
/v1/data/devices/active |
POST |
设备活跃详细数据 |
设备位置分布 |
/v1/data/device/area |
GET |
设备位置分布 |
设备上下线数据 |
/v1/data/device/logins |
POST |
设备上下线数据 |
设备属性统计数据 |
/v1/data/stats/opts |
GET |
设备属性统计数据 |
用户数据类
接口名称 |
接口地址 |
请求方式 |
接口含义 |
用户操作数据 |
/v1/data/user/opts |
POST |
用户操作数据 |
用户上下线数据 |
/v1/data/user/logins |
POST |
用户上下线数据 |
用户位置分布 |
/v1/data/user/area |
GET |
用户位置分布 |
用户当天概况 |
/v1/data/users/summary |
GET |
用户当天概况 |
用户历史概况 |
/v1/data/users/summary/day |
GET |
用户历史概况 |
新增用户详细数据 |
/v1/data/users/increase |
POST |
新增用户详细数据 |
数据回调类(暂未开放)
企业用户可以在企业管理后台中配置回调地址,智城云在发生相应的事件时会把数据作为参数传递给回调服务器,企业的回调服务器需要按照回调的接口规范解析参数。
通用类
接口名称 |
接口地址 |
请求方式 |
接口含义 |
获取服务器最新时间 |
/v1/system/timestamp |
GET |
获取服务器最新时间 |
通过IP获取地理信息 |
/v1/ip/{ip} |
GET |
通过IP获取地理信息 |
获取请求客户端IP |
/v1/ip/clientip |
GET |
获取请求客户端的公网IP |
获取省列表 |
/v1/address/{countryId} |
GET |
获取省列表 |
获取省信息 |
/v1/provinces/{provinceId} |
GET |
根据id获取省信息 |
获取市信息 |
/v1/cities/{cityId} |
GET |
根据id获取市信息 |
获取区信息 |
/v1/districts/{districtId} |
GET |
根据id获取区县级信息 |
获取错误码信息 |
/v1/errorcodes/{errorcode} |
GET |
根据id获取错误码信息 |
终端用户
查询用户列表
- 说明:根据条件查询用户列表
- URL:/v1/users
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9 10 11 12
| { "email": "zcyun@163.com", "endCreateTime": "2021-04-08 23:59:59", "startCreateTime": "2021-04-08 00:00:00", "pageNo": 1, "pageSize": 10, "telephone": "16666666666", "username": "zcyun", "provinceId": 1, "cityId": 1, "districtId": 72 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
username |
账号 |
String |
32 |
否 |
账号 |
telephone |
手机号 |
String |
15 |
否 |
手机号 |
email |
邮箱 |
String |
128 |
否 |
邮箱 |
sex |
性别 |
Integer |
1 |
否 |
性别 |
districtId |
地区ID |
Integer |
11 |
否 |
地区ID |
cityId |
城市ID |
Integer |
11 |
否 |
城市ID |
provinceId |
省ID |
Integer |
11 |
否 |
省ID |
pageNo |
第几页 |
Integer |
11 |
否 |
从1开始,默认为1 |
pageSize |
每页数据大小 |
Integer |
10 |
否 |
每页数据大小,默认10 |
endCreateTime |
创建结束时间 |
String |
20 |
否 |
创建结束时间 |
startCreateTime |
创建开始时间 |
String |
20 |
否 |
创建开始时间 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| { "code": 0, "data": [{ "avatar": "/a.png", "birthday": "2021-04-08", "email": "123@163.com", "extPropVal": {}, "lastLoginTime": "2021-4-8", "nickname": "zcyun", "note": "123", "provinceId": 1, "cityId": 1, "districtId": 72, "sex": 0, "telephone": "16666666666", "uid": "abcdnfjsajfksjfkadasd12313", "username": "zcyun", "createTime": "2014-06-14T11:26:13" }], "total": 22245 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
uid |
用户ID |
String |
用户ID |
username |
账号 |
String |
账号 |
telephone |
手机号 |
String |
手机号 |
email |
邮箱 |
String |
邮箱 |
birthday |
生日 |
String |
生日 |
sex |
性别 |
Integer |
性别,0:男性,1:女性, 2:保密 |
note |
note |
String |
note |
nickname |
昵称 |
String |
昵称 |
lastLoginTime |
上次登陆时间 |
String |
上次登陆时间 |
extPropVal |
用户拓展信息 |
JSONObject |
用户拓展信息 |
provinceId |
省ID |
Integer |
省ID |
cityId |
城市ID |
Integer |
城市ID |
districtId |
地区ID |
Integer |
地区ID |
avatar |
头像文件URL |
String |
头像文件URL |
createTime |
创建时间 |
String |
创建时间 |
total |
数据总数 |
Integer |
数据总数 |
查看用户信息
- 说明:查看某个用户的详细信息
- URL:/v1/user/{uid}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
uid |
用户ID |
String |
32 |
是 |
用户ID |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| { "code": 0, "data": { "avatar": "/a.png", "birthday": "2021-4-8", "cityId": 0, "districtId": 0, "email": "123@163.com", "extPropVal": {}, "lastLoginTime": "2021-4-8", "nickname": "zcyun", "note": "abc", "provinceId": 0, "sex": 0, "telephone": "1666666666", "uid": "sad1321dsa54564asd131", "username": "zcyun" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
uid |
用户ID |
String |
用户ID |
username |
账号 |
String |
账号 |
telephone |
手机号 |
String |
手机号 |
email |
邮箱 |
String |
邮箱 |
birthday |
生日 |
String |
生日 |
sex |
性别 |
Integer |
性别,0:男性,1:女性, 2:保密 |
note |
note |
String |
备注 |
nickname |
昵称 |
String |
昵称 |
lastLoginTime |
上次登陆时间 |
String |
上次登陆时间 |
extPropVal |
用户拓展信息 |
JSONObject |
用户拓展信息 |
districtId |
地区ID |
Integer |
地区ID |
cityId |
城市ID |
Integer |
城市ID |
provinceId |
省ID |
Integer |
省ID |
avatar |
头像文件URL |
String |
头像文件URL |
添加用户记录
- URL:/v1/user
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9 10 11 12 13
| { "birthday": "2021-04-08", "cityId": 0, "districtId": 0, "email": "123@163.com", "extPropVal": {}, "nickname": "zcyun", "provinceId": 0, "sex": 0, "telephone": "16666666666", "username": "zcyun", "password": "*******" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
username |
账号 |
String |
32 |
否 |
账号,手机号,邮箱 ,必须有一个 |
telephone |
手机号 |
String |
11 |
否 |
账号,手机号,邮箱 ,必须有一个 |
email |
邮箱 |
String |
128 |
否 |
账号,手机号,邮箱 ,必须有一个 |
birthday |
生日 |
String |
20 |
否 |
生日 |
sex |
性别 |
Integer |
1 |
否 |
性别,0:男性,1:女性, 2:保密 |
nickname |
昵称 |
String |
64 |
否 |
昵称 |
extPropVal |
用户拓展信息 |
JSONObject |
1024 |
否 |
用户拓展信息 |
districtId |
地区ID |
Integer |
11 |
否 |
地区ID |
cityId |
城市ID |
Integer |
11 |
否 |
城市ID |
provinceId |
省ID |
Integer |
11 |
否 |
省ID |
password |
密码 |
String |
32 |
是 |
密码 |
1 2 3 4
| { "id": "1", "code": 0 }
|
参数名称 |
中文名称 |
类型 |
说明 |
id |
用户uid |
String |
添加成功后返回的用户uid |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
- 接口调试:接口调试地址:添加用户记录
修改用户信息
- 说明:企业提交用户信息,直接修改用户基本信息
- URL:/v1/user/{uid}
- 请求方式:PUT
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6
| { "birthday": "2021-04-08", "extPropVal": {}, "nickname": "zcyun", "sex": 0 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
uid |
用户ID |
String |
32 |
是 |
用户ID |
birthday |
生日 |
String |
20 |
否 |
生日 |
sex |
性别 |
Integer |
1 |
否 |
性别,0:男性,1:女性, 2:保密 |
nickname |
昵称 |
String |
64 |
否 |
昵称 |
extPropVal |
用户拓展信息 |
JSONObject |
1024 |
否 |
用户拓展信息 |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
设备管理
查询设备列表
- 说明:分页查询企业设备列表询(所属用户,产品信息)
- URL:/v1/device/devices
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6
| { "product": "001", "gid": "002", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
productId |
产品id |
String |
3 |
否 |
产品id |
gid |
型号id |
String |
6 |
否 |
6位型号id |
pageNo |
起始位置 |
Integer |
10 |
否 |
分页查询起始位置,不带的话默认为1 |
pageSize |
每页长度 |
Integer |
10 |
否 |
每页显示长度,不带的话默认10 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| { "code": 0, "total": "", "data": [{ "deviceId": "110000001000002020", "companyId": "SCT", "companyName": "SCT", "productId": "001", "productName": "燃气热水器", "modelId": "ABH", "modelName": "ABCD", "gid": "aaaddd", "online": 0, "version": "01", "moduleType": "1", "moduleVersion": "1", "lastLoginTime": "2017-01-06T09:20:10", "faultStatus": 1, "faultTime": "2017-09-26T15:01:28", "alarmStatus": 0, "alarmTime": "2017-09-26T15:01:28", "provinceIdLogin": 1, "cityIdLogin": 2, "districtIdLogin": 3, "createTime": "2017-06-27T15:59:46" }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
deviceId |
设备id |
String |
设备id |
gid |
六位型号编码 |
String |
六位型号编码 |
companyId |
厂商编码 |
String |
厂商id |
companyName |
厂商名称 |
String |
厂商名称 |
productId |
产品id |
String |
产品id |
productName |
产品名称 |
String |
产品名称 |
modelId |
型号id |
String |
型号id |
modelName |
型号名称 |
String |
型号名称 |
online |
在线状态 |
Integer |
在线状态 “0”代表离线,“1”代表在线 |
faultStatus |
故障状态 |
Integer |
故障状态 “0”代表故障,“1”代表正常 |
faultTime |
故障时间 |
String |
故障时间,“0”表示故障恢复时间,“1”表示故障发生时间 |
provinceIdLogin |
省编码 |
Integer |
设备登录省编号 |
cityIdLogin |
城市编码 |
Integer |
设备登录城市编码 |
districtIdLogin |
街道编码 |
Integer |
设备登录街道编码 |
moduleType |
模块类型 |
Integer |
模块类型 |
moduleVersion |
模块版本 |
String |
模块版本 |
version |
设备固件版本 |
String |
设备固件版本 |
lastLoginTime |
上次登录时间 |
String |
上次登录时间 |
createTime |
创建时间 |
String |
创建时间 |
alarmStatus |
告警状态 |
Integer |
告警状态,“0”代表告警,“1”代表正常 |
alarmTime |
告警时间 |
String |
告警时间,“0”表示告警恢复时间,“1”表示告警发生时间 |
modifyTime |
修改时间 |
String |
修改时间 |
createTime |
创建时间 |
String |
创建时间 |
- URL:/v1/device/info/{did}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备id |
String |
32 |
是 |
设备id |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| { "code": 0, "data": { "deviceId": "110000001000002020", "companyId": "SCT", "companyName": "SCT", "productId": "001", "productName": "燃气热水器", "modelId": "ABH", "modelName": "ABCD", "gid": "aaaddd", "online": 0, "version": "01", "moduleType": "1", "moduleVersion": "1", "lastLoginTime": "2017-01-06T09:20:10", "faultStatus": 1, "faultTime": "2017-09-26T15:01:28", "alarmStatus": 0, "alarmTime": "2017-09-26T15:01:28", "provinceId": 1, "cityId": 1, "districtId": 72, "createTime": "2017-06-27T15:59:46" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
deviceId |
设备id |
String |
设备id |
gid |
六位型号编码 |
String |
六位型号编码 |
companyId |
厂商编码 |
String |
厂商id |
companyName |
厂商名称 |
String |
厂商名称 |
productId |
产品id |
String |
产品id |
productName |
产品名称 |
String |
产品名称 |
modelId |
型号id |
String |
型号id |
modelName |
型号名称 |
String |
型号名称 |
online |
在线状态 |
Integer |
在线状态 “0”代表离线,“1”代表在线 |
faultStatus |
故障状态 |
Integer |
故障状态 “0”代表故障,“1”代表正常 |
faultTime |
故障时间 |
String |
故障时间,“0”表示故障恢复时间,“1”表示故障发生时间 |
provinceId |
省编码 |
Integer |
省编号 |
cityId |
城市编码 |
Integer |
城市编码 |
districtId |
街道编码 |
Integer |
街道id |
moduleType |
模块类型 |
Integer |
模块类型 |
moduleVersion |
模块版本 |
String |
模块版本 |
version |
设备固件版本 |
String |
设备固件版本 |
lastLoginTime |
上次登录时间 |
String |
上次登录时间 |
createTime |
创建时间 |
String |
创建时间 |
alarmStatus |
告警状态 |
Integer |
告警状态,“0”代表告警,“1”代表正常 |
alarmTime |
告警时间 |
String |
告警时间,“0”表示告警恢复时间,“1”表示告警发生时间 |
modifyTime |
修改时间 |
String |
修改时间 |
mac |
物联网卡 |
String |
物联网卡 |
- 说明:查询距离当前时间点最近的设备上报的所有属性值
- URL:/v1/device/snapshots/{did}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备id |
String |
32 |
是 |
设备id |
1 2 3 4 5 6 7 8 9 10
| { "code": 0, "data": { "ts": 1513904574388, "as": { "101": 1, "102": 7 } } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
data |
属性集合 |
JsonObject |
数据区 |
ts |
时间戳 |
Long |
属性最新上报的精确到毫秒的时间戳 |
as |
设备上报属性值 |
JsonObject |
设备上报属性值,其key为属性ID,value为属性值 |
控制单个设备
- 说明:控制单个设备
- URL:/v1/device/optDid/{did}
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
as |
属性对象 |
json |
无 |
是 |
控制设备的属性键值对信息 |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
批量控制设备
- 说明:批量控制设备,必须属于同一型号。
- URL:/v1/device/batchControl
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7
| { "gid": "123456", "deviceIds":["deviceId1", "deviceId2"], "as": { "101": 1 } }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
gid |
6位型号ID |
String |
6 |
是 |
设备所属6位型号ID |
deviceIds |
设备ID列表 |
数组 |
无 |
是 |
所要操控的设备ID列表 |
as |
属性对象 |
json |
无 |
是 |
控制设备的属性键值对信息 |
1 2 3 4
| { "code": 0, "msg" : "错误提示" }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
查询设备实时状态
- 说明:向设备发起query命令,获取设备的实时状态
- URL:/v1/device/status/{did}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备id |
String |
32 |
是 |
设备id |
1 2 3 4 5 6 7 8 9 10 11
| { "code": 0, "data": { "as": { "1": 2, "2": 3 }, "fids": [1, 23, 45], "ota": [0, 1, 85] } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
as |
属性对象 |
JsonObject |
key:属性值,value:属性值 |
fids |
故障值 |
JsonArray |
故障码列表 |
ota |
设备的升级状态 |
JsonArray |
1:开始下载,2:下载中,3:下载成功,4:下载失败,5:开始升级,6:升级中,7:升级成功,8:升级失败 |
- 说明:清空设备数据(绑定关系、设备数据等)
- URL:/v1/device/reset/{did}
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数
1 2 3 4 5
| { "ts": "1234567891012", // 用32位设备PIN码的后16位作为Key和偏移量对ts进行AES 128 CBC/PKCS5加密后的值,然后将该值按字节转为16进制字符文本表示 "pin": "das564564dsa1d2312" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备id |
String |
32 |
是 |
设备id |
ts |
时间戳 |
String |
13 |
是 |
13位时间戳 |
pin |
校验的密码 |
String |
32 |
是 |
校验PIN码 |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
- 说明:获取该设备所有属性的详细描述信息列表,包括设备的基本信息及其属性的名称、类型、值范围等信息。
- URL: /v1/device/desc/{did}
- 请求方式: GET
- Header参数:参考请求头信息
- 请求参数
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备id |
String |
32 |
是 |
设备id |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| { "code": 0, "data": { "lastLoginTime": "2017-12-21T09:26:25", "modelId": "kpwjlv", "createTime": "2017-01-06T09:20:10", "moduleVersion": "1.0.0.0", "latitude": 104.08296, "deviceVersion": "1.0.0.0", "deviceName": "智能插座插排4", "longitude": 38.65777, "attrs": [{ "symbol": "KW▪H", "unit": "千瓦时", "min": 0.0, "max": 4.294967296E9, "name": "有功能量总量值", "readOnly": 0, "store": 0, "type": 1, "cond": 0, "aid": 7 }, { "name": "校正命令", "readOnly": 0, "store": 0, "type": 5, "cond": 0, "aid": 8, "vs": { "0": "保存", "1": "删除", "2": "校准" } }] } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
int |
0成功,非0表示失败错误码 |
deviceName |
设备名称 |
string |
用户定义的设备名称 |
companyId |
厂商id |
String |
厂商编码 |
productId |
产品id |
String |
产品编码 |
modelId |
型号ID |
string |
3位型号编码 |
latitude |
经度 |
double |
设备所在位置,纬度 |
longitude |
纬度 |
double |
设备所在位置,经度 |
createTime |
创建时间 |
string |
设备创建时间 |
lastLoginTime |
上次登录时间 |
string |
设备上次登录时间 |
deviceVersion |
固件版本 |
string |
设备固件版本 |
moduleVersion |
模块版本 |
string |
设备模块版本 |
aid |
属性ID |
int |
属性ID |
type |
属性类型 |
int |
1数值、2开关、4泛型、5枚举 |
name |
属性名称 |
string |
属性名称 |
readOnly |
只读标志 |
int |
0读写、1只读 |
cond |
联动标志 |
int |
1联动条件、2联动结果、3条件结果 |
symbol |
符号 |
string |
如 升 |
unit |
单位 |
string |
如 L |
max |
最大值 |
long |
最大值 |
min |
最小值 |
long |
最小值 |
vs |
枚举值 |
JSON对象 |
枚举类型具体映射关系 |
- 说明:添加设备分组
- URL:/v1/device/group
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5
| { "dids": ["110000001000002020", "000000001000000297"], "name": "string", "pid": 4 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
dids |
设备数组 |
String[] |
32 |
否 |
设备ID集合,为空表示新建空分组 |
name |
分组名称 |
String |
32 |
是 |
分组名称 |
pid |
父分组id |
Integer |
11 |
否 |
如果携带表示加的是子分组,其父分组id为pid |
1 2 3 4
| { "code": 0, "id": 19 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
id |
创建的分组id |
Integer |
分组id |
- 说明:获取设备分组列表(树形)
- URL:/v1/device/groups
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| { "code": 0, "data": [{ "children": [{ "children": [{ "icon": "roomc_2", "name": "卧室", "pid": 10, "dids": ["110000001000001000"], "id": 11 }, { "icon": "roomc_2", "name": "卧室", "pid": 10, "dids": [], "id": 14 }, { "icon": "roomc_11", "name": "办公室g", "pid": 10, "dids": ["110000001000001002"], "id": 15 }], "name": "Cc", "pid": 9, "dids": [], "id": 10 }], "name": "顾", "dids": ["110000001000000004"], "id": 9 }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
Id |
分组id |
Integer |
分组主键ID |
icon |
图标 |
string |
图标 |
name |
分组名称 |
String |
分组名称 |
children |
子节点 |
JsonArray |
子节点 |
pid |
父分组id |
Integer |
父分组id |
dids |
分组设备 |
jsonarray |
分组内的设备 |
- 说明:批量删除该分组内的设备列表
- URL:/v1/device/group/patchdel
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4
| { "dids": ["110000001000002020", "000000001000000297"], "groupId": 4 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
dids |
设备数组 |
String[] |
32 |
否 |
设备ID列表 |
groupId |
分组id |
Integer |
11 |
否 |
修改的分组id |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
- 说明:根据设备分组id删除设备分组信息以及分组内的设备列表
- URL:/v1/device/group/{groupId}
- 请求方式:DELETE
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
groupId |
分组id |
Integer |
11 |
是 |
分组id |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
- 说明:批量添加分组内的设备
- URL:/v1/device/group/patchadd
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4
| { "dids": ["did1", "did2", ......], "groupId": 3 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
dids |
分组内容 |
String[] |
无 |
否 |
分组内容,设备id数组 |
groupId |
分组id |
Integer |
11 |
是 |
分组id |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码用户设备关系 |
- 说明:新增设备定时任务
- URL:/v1/device/timertask/add
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9 10
| { "mode": 0 / 1 / 2, "did": "deviceId", "dvid": "1", "value": "0", "enable": 0 / 1, "period": "0", "time": 5690, "type": 1 / 2 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
mode |
模式 |
Integer |
1 |
是 |
模式,0表示单个设备,这时did、dvid、value不能为空 |
did |
设备ID |
String |
32 |
否 |
设备ID |
dvid |
属性ID |
String |
6 |
否 |
属性ID |
value |
属性值 |
String |
512 |
否 |
属性值 |
enable |
说明 |
Integer |
1 |
否 |
0表示有效,1表示无效,默认为1 |
period |
周几执行 |
String |
3 |
否 |
type=1时必须,周几执行,十进制转换成七位二进制,如1010101 |
time |
执行时间 |
Integer |
5 |
是 |
距离零点的秒数,比如00:01:01则传入61 |
type |
定时任务周期类型 |
Integer |
1 |
是 |
定时任务类型,1为周期性的,2为一次性的 |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
删除定时任务
- 说明:删除定时任务
- URL:/v1/device/timertask/{taskId}
- 请求方式:DELETE
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
taskId |
定时任务Id |
string |
32 |
是 |
定时任务唯一Id |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
- 说明:修改定时任务
- URL:/v1/device/timertask/{taskId}
- 请求方式:PUT
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9
| { "did": "deviceId", "dvid": "1", "value": "0", "enable": 0 / 1, "period": "0", "time": 5690, "type": 1 / 2 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备ID |
String |
32 |
否 |
设备ID |
dvid |
属性ID |
String |
6 |
否 |
属性ID |
value |
属性值 |
String |
512 |
否 |
属性值 |
enable |
说明 |
Integer |
1 |
否 |
0表示有效,1表示无效,默认为1 |
period |
周几执行 |
String |
3 |
否 |
type=1时必须,周几执行,十进制转换成七位二进制,如1010101 |
time |
执行时间 |
Integer |
5 |
是 |
距离零点的秒数,比如00:01:01则传入61 |
type |
定时任务周期类型 |
Integer |
1 |
是 |
定时任务类型,1为周期性的,2为一次性的 |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
- 说明:查询定时任务列表
- URL:/v1/device/timertasks/{did}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备ID |
String |
32 |
否 |
设备ID |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| { "code": 0, "data": [{ "mode": 0 / 1 / 2, "did": "deviceId", "dvid": "1", "value": "0", "enable": 0, "expired": true, "period": "0", "taskId": "taskId", "time": 5690, "type": 1 / 2, "action": "{\"cmd\":\"opt\",\"to\":\"deviceId\",\"value\":\"0\",\"mid\":\"123456\",\"dvid\":\"1\"}" }, ......] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
mode |
模式 |
Integer |
模式,0表示单个设备 |
did |
设备ID |
String |
设备ID |
did |
设备ID |
String |
设备ID |
dvid |
属性ID |
String |
属性ID |
value |
属性值 |
String |
属性值 |
enable |
说明 |
Integer |
0表示有效,1表示无效,默认为1 |
period |
周几执行 |
String |
type=1时必须,周几执行,十进制转换成七位二进制,如1010101 |
time |
执行时间 |
Integer |
距离零点的秒数,比如00:01:01则传入61 |
type |
定时任务周期类型 |
Integer |
定时任务类型,1为周期性的,2为一次性的 |
action |
动作内容 |
String |
向服务器发送的命令串 |
- 说明:查询单个定时任务
- URL:/v1/device/timertask/{taskId}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
taskId |
定时任务id |
String |
32 |
否 |
定时任务ID |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| { "code": 0, "data": { "mode": 0 / 1 / 2, "did": "deviceId", "dvid": "1", "value": "0", "enable": 0, "expired": true, "period": "0", "taskId": "taskId", "time": 5690, "type": 1 / 2, "action": "{\"cmd\":\"opt\",\"to\":\"deviceId\",\"value\":\"0\",\"mid\":\"123456\",\"dvid\":\"1\"}" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
mode |
模式 |
Integer |
模式,0表示单个设备,这时did、dvid、value不能为空 |
did |
设备ID |
String |
设备ID |
did |
设备ID |
String |
设备ID |
dvid |
属性ID |
String |
属性ID |
value |
属性值 |
String |
属性值 |
enable |
说明 |
Integer |
0表示有效,1表示无效,默认为1 |
period |
周几执行 |
String |
type=1时必须,周几执行,十进制转换成七位二进制,如1010101 |
time |
执行时间 |
Integer |
距离零点的秒数,比如00:01:01则传入61 |
type |
定时任务周期类型 |
Integer |
定时任务类型,1为周期性的,2为一次性的 |
action |
动作内容 |
String |
向服务器发送的命令串 |
绑定设备
- 说明:企业增加用户设备绑定关系
- URL:/v1/device/bind
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数
1 2 3 4 5 6
| { "did": "123456", "name": "zcyun", "uid": "123456", "gid": "123456" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备id |
String |
32 |
是 |
设备id |
name |
设备名称 |
String |
128 |
否 |
设备名称 |
uid |
用户uid |
String |
32 |
是 |
用户uid |
gid |
型号编号 |
String |
6 |
是 |
6位型号id |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
- 说明:解除用户设备的绑定关系
- URL:/v1/device/unbind
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数
1 2 3 4
| { "uid": "123456", "did": "123456" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
uid |
解绑的用户 |
String |
32 |
是 |
普通用户uid |
did |
解绑的设备 |
String |
32 |
是 |
设备id |
参数名称 |
中文名称 |
类型 |
说明 |
code |
成功标识 |
Integer |
0成功,非0表示失败错误码 |
msg |
失败描述 |
String |
错误描述 |
- 接口调试:接口调试地址:解绑设备
用户绑定的设备列表
- 说明:查询用户绑定的设备列表
- URL:/v1/devices/{uid}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
uid |
普通用户uid |
String |
32 |
是 |
用户主键 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| { "code": 0, "data": [{ "isHost": 1, "modelName": "222", "orderNo": 1, "productId": "111", "bindTime": "2015-09-16T14:43:17", "modelId": "333", "companyName": "zcyun", "online": 0, "deviceId": "595fadc65dbe4fd8b79e31f11048d04e", "deviceName": "我的LED控制器", "productName": "zcyun" }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
数据区 |
isHost |
是否主人 |
Integer |
1:主人;0:客人 |
modelName |
型号名称 |
String |
型号名称 |
deviceId |
设备id |
String |
设备id |
deviceName |
设备名称 |
String |
设备名称 |
productName |
产品名称 |
String |
产品名称 |
orderNo |
序号 |
Integer |
子设备数组 |
online |
是否在线 |
Integer |
是否在线 |
productId |
产品id |
String |
产品id |
bindTime |
绑定时间 |
String |
绑定时间 |
modelId |
型号id |
Integer |
型号id |
- 说明:查询设备的绑定用户列表
- URL:/v1/device/users/{did}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备id |
String |
32 |
是 |
设备id |
1 2 3 4 5 6 7 8 9 10 11 12 13
| { "code": 0, "data": [{ "lastLoginTime": "2017-10-23T14:14:56", "uid": "12das545dasd12xcz12", "bindTime": "2017-10-23T14:14:56", "host": 1, "nickname": "zcyun", "telephone": "1", "username": "zcyun" }, ......] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
数据区 |
host |
主人客人 |
Integer |
厂商id |
uid |
用户uid |
String |
用户uid |
nickname |
昵称 |
String |
昵称 |
telephone |
电话号码 |
String |
电话号码 |
username |
用户名称 |
String |
用户名称 |
lastLoginTime |
最近登录时间 |
String |
最近登录时间 |
bindTime |
绑定时间 |
String |
绑定时间 |
根据物联网卡信息获取设备ID
- 说明:根据IMEI获取设备的deviceId和gid(型号标识)
- URL:/v1/device/getGidByMac/{mac}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
mac |
模块id |
String |
32 |
是 |
模块id |
1 2 3 4 5 6 7
| { "code": 0, "data": { "gid": "ysfydl", "deviceId": "12das545dasd12xcz12" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
数据区 |
gid |
型号标识 |
String |
型号标识 |
deviceId |
设备id |
String |
设备id |
保存指定产品下的模块信息
- 说明:第三方调用接口,传输IMEI与产品gid与平台配置的gid对应关系,将IMEI放入对应产品的设备列表中。
- URL:/v1/youxiDevice/save
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数
1 2 3 4 5 6 7
| { "code": 0, "data": { "gid": "ysfydl", "deviceId": "12das545dasd12xcz12" } }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
gid |
设备的型号码 |
String |
6 |
是 |
设备的型号码 |
deviceId |
IEMI |
String |
32 |
是 |
IEMI |
productKey |
产品密钥 |
String |
32 |
是 |
产品密钥 |
ts |
时间戳 |
String |
13 |
是 |
时间戳 |
sign |
密钥 |
String |
32 |
是 |
密钥 |
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
msg |
错误码 |
String |
错误码 |
获取升级固件详细信息
- 说明:设备发起版本查询。
- URL:/v1/youxiDevice/getInfo
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数
1 2 3 4 5 6 7
| { "code": 0, "data": { "version": "1.0.0.1", "deviceId": "861881054939999" } }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
version |
版本 |
String |
32 |
是 |
版本 |
deviceId |
IEMI |
String |
32 |
是 |
IEMI |
productKey |
产品密钥 |
String |
32 |
是 |
产品密钥 |
ts |
时间戳 |
String |
13 |
是 |
时间戳 |
sign |
密钥 |
String |
32 |
是 |
密钥 |
1 2 3 4 5 6 7 8 9
| { "code": 0, "data": { "productKey": "5e5iwv", "version": "1.0.0.1", "url": "http://static.test.stesh.cn//group1/M00/00/00/wKh8wmUmC5OAH25SAAACkSY23mA62.json", "md5": "f7ad78a92ef501f650f1aaba12cdbc8e" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
数据区 |
productKey |
产品密钥 |
String |
产品密钥 |
version |
版本 |
String |
版本号 |
url |
文件地址 |
String |
文件地址 |
md5 |
md5 |
String |
md5 |
设备数据
设备上报数据
- 说明:根据条件查询某一时间段内设备上报(post)的原始数据。startTime,endTime必填,间隔必须在7天范围以内,否则提示参数非法。按上报时间降序排列。
- URL:/v1/data/datapoints
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9
| { "gid": "123456", "did": "123456", "aid": 1, "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
gid |
设备型号ID |
String |
6 |
是 |
6位型号编码 |
did |
设备ID |
String |
32 |
是 |
设备ID,设备唯一标识 |
aid |
属性ID |
Integer |
11 |
否 |
属性ID |
startTime |
开始时间 |
String |
20 |
是 |
开始时间,yyyy-MM-ddTHH:mm:ss |
endTime |
结束时间 |
String |
20 |
是 |
结束时间,yyyy-MM-ddTHH:mm:ss |
pageNo |
页码 |
int |
11 |
否 |
起始页码,默认从1开始 |
pageSize |
每页条数 |
int |
11 |
否 |
每页条数,默认每页10条 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13
| { "code": 0, "data": [{ "aid": 1, "key": "2017-09-27T11:00:00", "value": "22.22" }, { "aid": 1, "key": "2017-09-27T10:00:00", "value": "22.22" }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
aid |
属性ID |
Integer |
属性ID |
key |
时间戳 |
String |
时间,yyyy-MM-ddTHH:mm:ss |
value |
值 |
String |
数据 |
- 接口调试:接口调试地址:设备上报数据
设备上报数据统计
- 说明:查询某设备某属性的周期性统计数据。
- 周期说明:period为day时,date传入2015-03-15;period为week时,date传入2015-40表示2015年第40周;period为month时,date传入2015-03;period为year时,date传入2015
- URL:/v1/data/stats/{gid}/{did}/{aid}/{type}/{period}/{date}
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
gid |
设备型号ID |
String |
6 |
是 |
6位型号编码 |
did |
设备ID |
String |
32 |
是 |
设备ID |
aid |
设备属性ID |
Integer |
11 |
是 |
设备ID |
type |
统计维度 |
String |
20 |
是 |
统计维度,目前支持sum、avg、max、min |
period |
统计周期 |
String |
20 |
是 |
统计周期可以传入的值:day、week、month、year |
date |
统计日期 |
String |
20 |
是 |
统计日期 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| { "code": 0, "data": [{ "2017-10-18T00:00:00": 66.33 }, { "2017-10-18T01:00:00": 70 }, { "2017-10-18T02:00:00": 0 }, { "2017-10-18T03:00:00": 0 }, { "2017-10-18T04:00:00": 0 }, { "2017-10-18T05:00:00": 0 }, { "2017-10-18T06:00:00": 0 }, { "2017-10-18T07:00:00": 0 }, { "2017-10-18T08:00:00": 0 }, { "2017-10-18T09:00:00": 0 }, { "2017-10-18T10:00:00": 0 }, { "2017-10-18T11:00:00": 70 }, { "2017-10-18T12:00:00": 0 }, { "2017-10-18T13:00:00": 0 }, { "2017-10-18T14:00:00": 0 }, { "2017-10-18T15:00:00": 0 }, { "2017-10-18T16:00:00": 0 }, { "2017-10-18T17:00:00": 0 }, { "2017-10-18T18:00:00": 0 }], "total": 206.33, "max": 70, "min": 0 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
total |
所有值累加和 |
Double |
所有值累加和 |
max |
最大值 |
Double |
最大值 |
min |
最小值 |
Double |
最小值 |
设备故障详细数据
- 说明:获取故障设备统计数据,开始和结束时间最多相差31天
- URL:/v1/device/faults
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9
| { "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "gid": "123456", "faultId": "123456", "productId": "123456", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始时间 |
String |
20 |
是 |
开始时间,yyyy-MM-dd’T’HH:mm:ss |
endTime |
结束时间 |
String |
20 |
是 |
结束时间,yyyy-MM-dd’T’HH:mm:ss |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
productId |
产品id |
String |
3 |
否 |
产品id |
faultId |
故障id |
String |
11 |
否 |
故障id |
pageNo |
起始位置 |
Integer |
6 |
否 |
分页查询起始位置,默认为1 |
pageSize |
每页长度 |
Integer |
4 |
否 |
每页显示长度,默认10 |
- 成功返回
1 2 3 4 5 6 7 8 9 10
| { "code": 0, "data": [{ "did": "deviceId", "faultTime": "2017-10-12T20:50:50", "faultId": "1", "faultStatus": 0 }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
did |
设备id |
String |
设备id |
faultId |
故障id |
String |
故障id |
faultTime |
故障时间 |
String |
故障时间 |
faultStatus |
故障状态 |
Integer |
故障状态 0:故障,1:正常 |
故障次数统计数据
- 说明:故障次数统计数据,startTime、endTime不传默认近7天,最长查询31天范围内的数据
- URL:/v1/device/faults/stats
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7
| { "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "gid": "123456", "faultId": "123456", "productId": "123456" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始时间 |
String |
20 |
否 |
开始时间,yyyy-MM-dd |
endTime |
结束时间 |
String |
20 |
否 |
结束时间,yyyy-MM-dd |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
productId |
产品id |
String |
3 |
否 |
产品id |
faultId |
故障id |
String |
11 |
否 |
故障id |
- 成功返回
1 2 3 4 5 6 7
| { "code": 0, "data": [{ "day": "2017-10-17", "faultNum": 2 }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
day |
日期 |
String |
如:2017-10-17 |
faultNum |
故障数量 |
Integer |
故障数量 |
设备告警详细数据
- 说明:获取报警设备统计数据,开始和结束时间最多相差31天
- URL:/v1/device/alarms
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9
| { "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "gid": "123456", "alarmId": 1, "productId": "123456", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始时间 |
String |
20 |
是 |
开始时间,yyyy-MM-dd’T’HH:mm:ss |
endTime |
结束时间 |
String |
20 |
是 |
结束时间,yyyy-MM-dd’T’HH:mm:ss |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
productId |
产品id |
String |
3 |
否 |
产品id |
alarmId |
报警id |
Integer |
11 |
否 |
报警id |
pageNo |
起始位置 |
Integer |
6 |
否 |
分页查询起始位置,默认为1 |
pageSize |
每页长度 |
Integer |
4 |
否 |
每页显示长度,默认10 |
- 成功返回
1 2 3 4 5 6 7 8 9 10
| { "code": 0, "data": [{ "did": "deviceId", "alarmTime": "2017-10-12T20:50:50", "alarmId": 1, "alarmStatus": 0 }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
did |
设备id |
String |
设备id |
alarmTime |
告警时间 |
String |
告警时间 |
alarmStatus |
告警状态 |
Integer |
告警状态 0:故障,1:恢复正常 |
alarmId |
报警id |
Integer |
报警id |
- 接口调试:接口调试地址:设备告警详细数据
设备告警统计数据
- 说明:设备告警统计数据,startTime、endTime不传默认近7天,最长查询31天范围内的数据
- URL:/v1/device/alarms/stats
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7
| { "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "gid": "123456", "alarmId": 1, "productId": "123456" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始时间 |
string |
20 |
否 |
开始时间,yyyy-MM-dd |
endTime |
结束时间 |
string |
20 |
否 |
结束时间,yyyy-MM-dd |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
productId |
产品id |
String |
3 |
否 |
产品id |
alarmId |
告警id |
Integer |
11 |
否 |
告警id |
- 成功返回
1 2 3 4 5 6 7
| { "code": 0, "data": [{ "day": "2017-10-17", "alarmNum": 2 }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
day |
日期 |
String |
如:2017-10-17 |
alarmNum |
故障数量 |
Integer |
故障数量 |
- 接口调试:接口调试地址:设备告警统计数据
设备当天概况
- 说明:获取当天的激活设备数、设备总数、当前在线数、故障设备数
- URL:/v1/data/devices/summary
- 请求方式:GET
- Header参数:参考请求头信息
- 成功返回
1 2 3 4 5 6 7 8 9
| { "code": 0, "data": { "increaseNum": 2, "onlineNum": 200, "totalNum": 20000, "faultNum": 20 } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
increaseNum |
今日激活数量 |
Integer |
今日激活数量 |
onlineNum |
当前在线数 |
Integer |
当前在线数 |
totalNum |
总数量 |
Integer |
总数量 |
faultNum |
故障数量 |
Integer |
故障设备数量 |
- 接口调试:接口调试地址:设备当天概况
设备历史概况
- 说明:获取每日的激活、活跃设备数、当前在线数,startTime、endTime不传默认近7天,最长查询31天范围内的数据
- URL:/v1/data/devices/summary/day
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始日期 |
String |
10 |
否 |
开始日期,yyyy-MM-dd |
endTime |
结束日期 |
String |
10 |
否 |
结束日期,yyyy-MM-dd |
productId |
产品id |
String |
3 |
否 |
产品id |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
- 成功返回
1 2 3 4 5 6 7 8 9
| { "code": 0, "data": [{ "day": "2017-10-17", "increaseNum": 2, "activeNum": 200, "totalNum": 20000 }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
day |
日期 |
String |
如:2017-10-17 |
increaseNum |
新增数量 |
Integer |
激活数量 |
activeNum |
活跃数量 |
Integer |
活跃数量 |
totalNum |
总数量 |
Integer |
总数量 |
- 接口调试:接口调试地址:设备历史概况
设备激活详细数据
- 说明:自定义查询激活设备详细数据,精确到设备
- URL:/v1/data/devices/increase
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8
| { "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "gid": "123456", "productId": "123456", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始日期 |
String |
10 |
否 |
开始日期,yyyy-MM-dd |
endTime |
结束日期 |
String |
10 |
否 |
结束日期,yyyy-MM-dd |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
productId |
产品id |
String |
3 |
否 |
产品id |
pageNo |
起始位置 |
Integer |
6 |
否 |
分页查询起始位置,默认为1 |
pageSize |
每页长度 |
Integer |
4 |
否 |
每页显示长度,默认10 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { "code": 0, "data": [{ "did": "123456", "productId": "123456", "gid": "123456", "online": 1, "provinceId": 1, "cityId": 1, "districtId": 1, "createTime": "2017-01-17T10:00:00" }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
did |
设备ID |
String |
设备ID |
online |
在线状态 |
Integer |
在线状态: 0:下线,1:上线 |
provinceId |
省id |
Integer |
省id |
cityId |
市id |
Integer |
市id |
districtId |
区县id |
Integer |
区县id |
createTime |
新增时间 |
String |
新增时间 |
设备活跃详细数据
- 说明:自定义查询活跃设备详细数据,startTime,endTime必填,间隔必须在7天范围以内,否则提示参数非法。
- URL:/v1/data/devices/active
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8
| { "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "gid": "123456", "productId": "123456", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始日期 |
String |
10 |
是 |
开始日期,yyyy-MM-dd |
endTime |
结束日期 |
String |
10 |
是 |
结束日期,yyyy-MM-dd |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
productId |
产品id |
String |
3 |
否 |
产品id |
pageNo |
起始位置 |
Integer |
6 |
否 |
分页查询起始位置,默认为1 |
pageSize |
每页长度 |
Integer |
4 |
否 |
每页显示长度,默认10 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13
| { "code": 0, "data": [{ "did": "123456", "productId": "123456", "gid": "123456", "provinceId": 1, "cityId": 1, "districtId": 1, "activeDate": "2017-01-17" }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
did |
设备ID |
String |
设备ID |
provinceId |
省id |
Integer |
省id |
cityId |
市id |
Integer |
市id |
districtId |
区县id |
Integer |
区县id |
activeDate |
活跃日期 |
String |
活跃日期 |
设备位置分布
- 说明:查询当前设备在线/离线地理分布,传入provinceId则查询该省下地市的在线分布
- URL:/v1/data/device/area
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
provinceId |
省id |
Integer |
3 |
否 |
省id |
productId |
产品id |
String |
3 |
否 |
3位产品编码 |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { "code": 0, "data": [{ "provinceId": 13, "num": 221, "name": "山东", "ratio": 2.6 }, { "num": 8169, "name": "其他", "ratio": 95 }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
provinceId |
省id |
Integer |
省id |
num |
数量 |
Integer |
设备数量 |
ratio |
占比 |
Double |
占比 |
name |
名称 |
Double |
省/市名称 |
设备上下线数据
- 说明:查询设备上下线日志记录,默认按上下线时间降序排列。startTime,endTime必填,间隔必须在7天范围以内,必须是同一月份的数据。
- URL:/v1/data/device/logins
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9 10
| { "did": "deviceId", "online": 0, "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "pageNo": 1, "pageSize": 10, "productId": "007", "gid": "cacaca" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
did |
设备ID |
String |
32 |
否 |
设备ID |
online |
上、下线日志 |
Integer |
1 |
否 |
0:下线日志,1:上线日志 |
startTime |
开始时间 |
String |
20 |
是 |
开始时间 |
endTime |
结束时间 |
String |
20 |
是 |
结束时间 |
pageNo |
第几页 |
Integer |
11 |
否 |
从1开始,默认为1 |
pageSize |
每页数据大小 |
Integer |
11 |
否 |
默认为10 |
productId |
产品ID |
String |
3 |
否 |
产品ID |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| { "code": 0, "data": [{ "did": "110000001000016798", "loginTime": "2017-09-27T11:00:00", "clientIp": "192.168.0.11", "online": 0, "serverIp": "192.168.0.177:7778", "provinceId": 1, "cityId": 11, "districtId": 111, "address": "山东济宁" }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
did |
设备ID |
String |
设备ID |
loginTime |
上、下线时间 |
Long |
上、下线时间 |
online |
在线状态 |
Integer |
在线状态: 0:下线,1:上线 |
serverIp |
服务器IP |
String |
长连接服务器地址 |
clientIp |
客户端IP |
String |
客户端地址 |
provinceId |
省id |
Integer |
省id |
cityId |
市id |
Integer |
市id |
districtId |
区县id |
Integer |
区县id |
address |
地址 |
String |
地址信息 |
- 接口调试:接口调试地址:设备上下线数据
设备属性统计数据
- 说明:查询一段时间内的设备属性统计数据,默认按时间降序排列。 startTime,endTime必填,间隔必须在31天范围以内。
- URL:/v1/data/attr/opts
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始时间 |
String |
10 |
是 |
开始时间,yyyy-MM-dd |
endTime |
结束时间 |
String |
10 |
是 |
结束时间,yyyy-MM-dd |
productId |
产品ID |
String |
3 |
是 |
产品ID |
gid |
设备型号ID |
String |
6 |
否 |
6位型号编码 |
- 成功返回
1 2 3 4 5 6 7
| { "code": 0, "data": [{ "aid": 1, "num": 10 }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
aid |
属性ID |
Integer |
属性ID |
num |
使用次数 |
Integer |
使用次数 |
用户数据
用户操作数据
- 说明:查询用户操作设备日志记录,默认按操作时间降序排列。startTime,endTime必填,间隔必须在7天范围以内。
- URL:/v1/data/user/opts
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9 10 11
| { "uid": "uid", "did": "did", "aid": 0, "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "pageNo": 1, "pageSize": 10, "productId": "007", "gid": "cacaca" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
uid |
用户ID |
String |
32 |
否 |
用户ID |
did |
设备id |
String |
32 |
否 |
设备id |
aid |
属性ID |
Integer |
11 |
否 |
属性ID |
startTime |
开始时间 |
String |
20 |
否 |
开始时间 |
endTime |
结束时间 |
String |
20 |
否 |
结束时间 |
pageNo |
第几页 |
Integer |
11 |
否 |
从1开始,默认为1 |
pageSize |
每页数据大小 |
Integer |
11 |
否 |
默认为10 |
productId |
产品ID |
String |
3 |
否 |
产品ID |
gid |
型号ID |
String |
6 |
否 |
6位型号编码 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11
| { "code": 0, "data": [{ "uid": "00004786e5794d84a4239b79c55333ca", "aid": 8, "optTime": "2017-09-24T10:00:00", "value": 190, "did": "110000001000081233" }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
uid |
用户ID |
String |
用户ID |
did |
设备id |
String |
设备id |
aid |
属性ID |
Integer |
属性ID |
optTime |
操作时间 |
String |
操作时间 |
value |
值 |
Double |
操作属性值 |
用户上下线数据
- 说明:查询用户上下线日志记录,默认按上下线时间降序排列。startTime,endTime必填,间隔必须在7天范围以内,必须是同一月份的数据。
- URL:/v1/data/user/logins
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9
| { "uid": "1sad12a3154dasd3213da", "online": 0, "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
uid |
用户ID |
String |
32 |
否 |
用户ID |
online |
上、下线日志 |
Integer |
1 |
否 |
0:下线日志,1:上线日志 |
startTime |
开始时间 |
String |
20 |
否 |
开始时间 |
endTime |
结束时间 |
String |
20 |
否 |
结束时间 |
pageNo |
第几页 |
Integer |
11 |
否 |
从1开始,默认为1 |
pageSize |
每页数据大小 |
Integer |
11 |
否 |
默认为10 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { "code": 0, "data": [{ "uid": "00004786e5794d84a4239b79c55333ca", "loginTime": "2017-09-27T11:00:00", "clientIp": "192.168.0.11", "online": 0, "serverIp": "192.168.0.177:7778", "provinceId": 1, "cityId": 11, "districtId": 111 }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
did |
设备ID |
String |
设备ID |
loginTime |
上、下线时间 |
String |
上、下线时间 |
online |
上、下线日志 |
Integer |
0:下线日志,1:上线日志 |
serverIp |
服务器IP |
String |
长连接服务器地址 |
clientIp |
客户端IP |
String |
客户端地址 |
provinceId |
省id |
Integer |
省id |
cityId |
市id |
Integer |
市id |
districtId |
区县id |
Integer |
区县id |
用户当天概况
- 说明:获取当天的激活、活跃用户数,当前在线数
- URL:/v1/data/users/summary
- 请求方式:GET
- Header参数:参考请求头信息
- 成功返回
1 2 3 4 5 6 7 8
| { "code": 0, "data": { "increaseNum": 2, "onlineNum": 200, "totalNum": 20000 } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
increaseNum |
当日新增用户 |
Integer |
当日新增用户 |
onlineNum |
当前在线用户 |
Integer |
当前在线用户 |
totalNum |
用户总数 |
Integer |
截止到当天的用户总数 |
用户历史概况
- 说明:获取每日的激活、活跃用户数,当前在线数, startTime、endTime不传默认近7天,最长查询31天范围内的数据
- URL:/v1/data/users/summary/day
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始日期 |
String |
10 |
否 |
开始日期,yyyy-MM-dd |
endTime |
结束日期 |
String |
10 |
否 |
结束日期,yyyy-MM-dd |
- 成功返回
1 2 3 4 5 6 7 8 9
| { "code": 0, "data": [{ "day": "2017-10-17", "increaseNum": 2, "activeNum": 200, "totalNum": 20000 }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
data |
数据区 |
JSONArray |
返回的数据 |
day |
日期 |
String |
如:2017-10-17 |
increaseNum |
当日新增用户 |
Integer |
当日新增用户 |
activeNum |
活跃用户 |
Integer |
活跃用户,用户登录app即为活跃 |
totalNum |
用户总数 |
Integer |
截止到当天的用户总数 |
新增用户详细数据
- 说明:自定义查询新增用户详细数据
- URL:/v1/data/users/increase
- 请求方式:POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6
| { "startTime": "2017-10-23T14:14:56", "endTime": "2017-10-23T14:14:56", "pageNo": 1, "pageSize": 10 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
startTime |
开始日期 |
String |
10 |
否 |
开始日期,yyyy-MM-dd |
endTime |
结束日期 |
String |
10 |
否 |
结束日期,yyyy-MM-dd |
pageNo |
起始位置 |
Integer |
6 |
否 |
分页查询起始位置,默认为1 |
pageSize |
每页长度 |
Integer |
4 |
否 |
每页显示长度,默认10 |
- 成功返回
1 2 3 4 5 6 7 8 9 10
| { "code": 0, "data": [{ "uid": "sda12123dasd", "username": "zcyun", "telephone": "16666666666", "createTime": "2017-01-17T10:00:00" }], "total": 1 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
uid |
用户唯一标识 |
String |
用户唯一标识 |
username |
用户名 |
String |
用户名 |
telephone |
电话号码 |
String |
电话号码 |
createTime |
新增时间 |
String |
新增时间 |
用户位置分布
- 说明:查询企业用户位置分布,传入provinceId则查询该省下地市的在线分布
- URL:/v1/data/user/area
- 请求方式:GET
- Header参数:参考请求头信息
- 请求参数:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
provinceId |
省id |
Integer |
3 |
否 |
省id |
- 成功返回:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { "code": 0, "data": [{ "provinceId": 13, "num": 221, "name": "山东", "ratio": 2.6 }, { "num": 8169, "name": "其他", "ratio": 95 }] }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
total |
符合条件的记录总数 |
Integer |
符合查询条件的记录总数 |
data |
数据区 |
JSONArray |
返回的数据 |
provinceId |
省id |
Integer |
省id |
num |
数量 |
Integer |
设备数量 |
ratio |
占比 |
Double |
占比 |
name |
名称 |
Double |
省/市名称 |
数据回调类接口
设备上报数据回调(暂未开放)
- 说明:设备上报的数据,实时回调此订阅地址。
- URL:订阅地址
- 请求方式 POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9
| { "requestId": "12132132456456", "gid": "123456", "did": "123456", "timestamp": 1521019370, "data": { "1": "1" } }
|
请求参数说明:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
requestId |
请求ID |
String |
32 |
是 |
请求ID |
gid |
设备型号ID |
String |
6 |
是 |
设备型号ID |
did |
设备ID |
String |
32 |
是 |
设备ID |
timestamp |
时间戳 |
Integer |
11 |
是 |
时间戳,Unix秒级时间戳 |
data |
数据集合 |
Map |
4 |
是 |
数据集合 |
- 成功返回:
1 2 3 4
| { "code": 0, "requestId": "123456" }
|
返回说明:
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
requestId |
请求ID |
String |
请求ID |
设备上下线数据回调(暂未开放)
- 说明:收到设备上下线数据,实时回调此订阅地址。
- URL:订阅地址
- 请求方式 POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7 8 9
| { "requestId": "123456", "gid": "123456", "did": "123456", "loginTime": "2017-10-23T14:14:56", "online": 1, "serverIp": "192.168.0.1", "clientIp": "192.168.0.11" }
|
请求参数说明:
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
requestId |
请求ID |
String |
32 |
是 |
请求ID |
gid |
设备型号ID |
String |
6 |
是 |
设备型号ID |
did |
设备ID |
String |
32 |
是 |
设备ID |
loginTime |
时间 |
String |
20 |
是 |
格式yyyy-MM-ddTHH:mm:ss |
online |
在线状态 |
Integer |
1 |
是 |
在线状态,0离线 1上线 |
serverIp |
服务器IP |
String |
20 |
否 |
服务器IP |
clientIp |
客户端IP |
String |
20 |
否 |
客户端IP |
1 2 3 4
| { "code": 0, "requestId": "123456" }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
requestId |
请求ID |
String |
请求ID |
设备告警数据回调(暂未开放)
- 说明:收到设备告警数据,实时回调此订阅地址。
- URL:订阅地址
- 请求方式 POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7
| { "requestId": "123456", "gid": "123456", "did": "123456", "occurTime": "2017-10-23T14:14:56", "alarmId": 1 }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
requestId |
请求ID |
String |
32 |
是 |
请求ID |
gid |
设备型号ID |
String |
6 |
是 |
设备型号ID |
did |
设备ID |
String |
32 |
是 |
设备ID |
occurTime |
发生时间 |
String |
20 |
是 |
格式yyyy-MM-ddTHH:mm:ss |
alarmId |
告警id |
Integer |
1 |
是 |
告警id |
- 成功返回:
1 2 3 4
| { "code": 0, "requestId": "123456" }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
requestId |
请求ID |
String |
请求ID |
设备故障数据回调(暂未开放)
- 说明:收到设备上报的故障数据,实时回调此订阅地址。
- URL:订阅地址
- 请求方式 POST
- Header参数:参考请求头信息
- 请求参数:
1 2 3 4 5 6 7
| { "requestId": "123456", "gid": "123456", "did": "123456", "occurTime": "2017-10-23T14:14:56", "faultId": "[1,2]" }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
requestId |
请求ID |
String |
32 |
是 |
请求ID |
gid |
设备型号ID |
String |
6 |
是 |
设备型号ID |
did |
设备ID |
String |
32 |
是 |
设备ID |
occurTime |
发生时间 |
String |
20 |
是 |
格式yyyy-MM-ddTHH:mm:ss |
faultId |
故障id |
String |
1 |
是 |
故障id |
1 2 3 4
| { "code": 0, "requestId": "123456" }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
requestId |
请求ID |
String |
请求ID |
通用接口
获取服务器最新时间
- 说明:获取服务器最新时间
- URL:/v1/system/timestamp
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
1 2 3 4 5 6 7
| { "code": 0, "data": { "ts": 1516605629073, "date": "2017-12-18T14:30:25" } }
|
参数名称 |
中文名称 |
类型 |
限制(长度) |
code |
返回码 |
Integer |
成功固定为0 |
ts |
当前系统时间戳 |
Long |
当前系统时间戳,精确到ms |
date |
当前系统时间 |
Long |
当前系统时间,智城云内部标准日期格式 |
通过IP获取地理信息
- 说明:根据IP查询IP所在地址
- URL:/v1/ip/{ip}
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
参数名称 |
中文名称 |
类型 |
说明 |
ip |
IP地址 |
String |
IP地址,路径上的参数 |
- 成功返回
1 2 3 4 5 6 7 8 9 10 11 12
| { "code": 0, "data": { "districtId": "-1", "cityName": "鞍山市", "isp": "联通", "cityId": "579", "provinceName": "辽宁", "ispId": "10050", "provinceId": "8" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
cityId |
城市ID |
Integer |
城市ID |
districtId |
区ID |
Integer |
区ID |
provinceId |
省ID |
Integer |
省ID |
cityName |
城市名称 |
String |
城市名称 |
districtName |
区名称 |
String |
区名称 |
provinceName |
省名称 |
String |
省名称 |
ispId |
结束时间 |
Integer |
运营商代码 |
isp |
错误码 |
String |
运营商名称 |
获取请求客户端IP
- 说明:获取请求客户端的公网IP
- URL:/v1/ip/clientip
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
1 2 3 4 5 6
| { "code": 0, "data": { "clientIp": "192.168.1.120" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
clientIp |
客户端IP |
String |
客户端IP |
获取省列表
- 说明:获取省列表
- URL:/v1/address/{countryId}
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
countryId |
国家编码 |
Integer |
32 |
否 |
国家编码,中国固定为1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| { "code": 0, "data": [{ "provinceName": "北京", "text": "北京", "provinceId": 1, "value": 1, "countryId": 1 }, { "provinceName": "上海", "text": "上海", "provinceId": 2, "value": 2, "countryId": 1 }, { "provinceName": "台湾", "text": "台湾", "provinceId": 32, "value": 32, "countryId": 1 }, { "provinceName": "香港", "text": "香港", "provinceId": 42, "value": 42, "countryId": 1 }, { "provinceName": "澳门", "text": "澳门", "provinceId": 43, "value": 43, "countryId": 1 }], "total": 34 }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
provinceName |
省名 |
String |
省名 |
text |
中文名称 |
String |
中文名称 |
value |
省编码 |
Integer |
省编码 |
provinceId |
省编码 |
Integer |
省编码 |
countryId |
国家ID |
Integer |
国家ID |
获取省信息
- 说明:根据id获取省信息
- URL:/v1/provinces/{provinceId}
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
provinceId |
省编码 |
Integer |
32 |
否 |
省编码 |
1 2 3 4 5 6 7 8 9 10
| { "code": 0, "data": { "provinceName": "安徽", "text": "安徽", "provinceId": 14, "value": 14, "countryId": 1 } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
provinceName |
省名 |
String |
省名 |
text |
中文名称 |
String |
中文名称 |
value |
省编码 |
Integer |
省编码 |
provinceId |
省编码 |
Integer |
省编码 |
countryId |
国家ID |
Integer |
国家ID |
获取市信息
- 说明:根据id获取市信息
- URL:/v1/cities/{cityId}
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
cityId |
市编码 |
Integer |
11 |
是 |
市编码,路径上的参数 |
1 2 3 4 5 6 7 8 9 10 11 12
| { "code": 0, "data": { "fullCityName": "黑龙江大兴安岭地区", "cityName": "大兴安岭地区", "cityId": 793, "text": "大兴安岭地区", "provinceId": 10, "value": 793, "countryId": 1 } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
fullCityName |
完整市名称 |
String |
完整市名称 |
cityName |
市名 |
String |
市名 |
text |
中文名称 |
String |
中文名称 |
cityId |
市编码 |
Integer |
市编码 |
value |
市编码 |
Integer |
市编码 |
provinceId |
省编码 |
Integer |
省编码 |
countryId |
国家ID |
Integer |
国家ID |
获取区信息
- 说明:根据id获取区县级信息
- URL:/v1/districts/{districtId}
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
districtId |
区编码 |
Integer |
11 |
是 |
区编码,路径上的参数 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { "code": 0, "data": { "districtId": 11432, "districtName": "新林区", "ytfee": 15, "cityId": 793, "text": "新林区", "provinceId": 10, "value": 11432, "countryId": 1, "fullDistrictName": "黑龙江大兴安岭地区新林区" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
districtId |
区编码 |
JSONArray |
区编码 |
districtName |
区名称 |
String |
区名称 |
fullDistrictName |
完整区名称 |
String |
完整区名称 |
text |
区中文名称 |
String |
区中文名称 |
cityId |
市编码 |
Integer |
市编码 |
value |
区编码 |
Integer |
区编码 |
provinceId |
省编码 |
Integer |
省编码 |
countryId |
国家ID |
Integer |
国家ID |
获取错误码信息
- 说明:根据错误码ID获取错误码详细信息
- URL:/v1/errorcodes/{errorcode}
- 请求方式:GET
- Header参数:
Header_Key |
Header_Value |
暂无 |
暂无 |
参数名称 |
中文名称 |
类型 |
限制(长度) |
必须 |
说明 |
errorcode |
错误码 |
Integer |
11 |
是 |
区编码,路径上的参数 |
1 2 3 4 5 6 7
| { "code": 0, "data": { "zh_CN": "请求太频繁", "errorcode": "20002" } }
|
参数名称 |
中文名称 |
类型 |
说明 |
code |
返回码 |
Integer |
成功固定为0 |
zh_CN |
中文说明 |
String |
错误码中文说明 |
errorcode |
错误码 |
String |
错误码 |