用户API
更新时间:2019-04-17 10:09:47
目录
手机APP与云端的API命令描述:
获取用户绑定的设备列表
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/listBindingByAccount |
1.0.2 |
根据用户获取设备列表 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
pageNo |
Int |
是 |
当前页号,从1开始的页序号 |
pageSize |
Int |
是 |
页大小,单页的item数量上限 |
thingType |
String |
否 |
设备类型:"VIRTUAL", "WEB", "APP","DEVICE" |
nodeType |
String |
否 |
设备的节点类型:"DEVICE", "GATEWAY" |
owned |
Int |
否 |
表示绑定类型:0:被分享的设备;1:拥有的设备;null:所有 |
返回参数
参数 |
子键 |
类型 |
描述 |
total |
|
Integer |
云端总数 |
pageNo |
|
Integer |
当前页号 |
pageSize |
|
Integer |
页大小 |
data |
|
List<> |
用户绑定设备列表 |
|
identityId |
String |
用户的身份ID |
|
iotId |
String |
设备的iotId |
|
productKey |
String |
设备的productKey |
|
deviceName |
String |
设备的deviceName |
|
productName |
String |
设备的产品名称 |
|
productImage |
String |
设备的产品图片 |
|
productModel |
String |
设备的产品型号 |
|
categoryImage |
String |
品类图标 |
|
nickName |
String |
用户对设备的昵称,用户通过setDeviceNickName设置的昵称 |
|
netType |
String |
设备入网类型: lora: NET_LORA gprs: NET_CELLULAR wifi: NET_WIFI zigbee: NET_ZIGBEE 蓝牙: NET_BT 以太网: NET_ETHERNET 其他: NET_OTHER |
|
thingType |
String |
设备的类型:"VIRTUAL", "WEB", "APP","DEVICE" |
|
nodeType |
String |
设备的节点类型:"DEVICE", "GATEWAY" |
|
status |
Byte |
设备的状态 0:未激活 ;1:在线;3:离线;8:禁用 |
|
owned |
Byte |
0:分享者;1:拥有者 |
|
identityAlias |
String |
用户的显示名(mobile或loginName或email) |
|
gmtModified |
Date |
修改时间(绑定时间) |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"pageNo":1,
"pageSize":10
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"data": [
{
"productModel": "testProduct",
"iotId": "fy2Z1oZFWZQVii6kkFVM00101edf00",
"netType": "NET_WIFI",
"identityId": "5082opabf5192fb1ae453eced9806fbdae6f6093",
"thingType": "DEVICE",
"nodeType": "DEVICE",
"productKey": "a1OwEjYFJNb",
"deviceName": "b65cb59e688e4f74a208592cd695fb",
"productName": "0d2a0e6195",
"status": 3
},
{
"productModel": "testProduct",
"iotId": "wW4uJnjdxISy7QbzUYKS0010ddb200",
"netType": "NET_WIFI",
"identityId": "5082opabf5192fb1ae453eced9806fbdae6f6093",
"thingType": "DEVICE",
"nodeType": "DEVICE",
"productKey": "a1Btn9lxeJg",
"deviceName": "b824b648947c40e6beb378f4f17e90",
"productName": "07b5962ae7",
"status": 3
}
],
"id": "e2d74ffe-308e-44ee-94a5-9b44a43eabc9"
}
异常返回示例
{
"code":2000,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"iotId is blank!"
}
错误码
请参考公共错误码
根据设备获取绑定关系
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/listBindingByDev |
1.0.2 |
根据设备获取绑定关系 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
iotId |
String |
是 |
设备id |
pageNo |
Int |
是 |
当前页号,从1开始的页序号 |
pageSize |
Int |
是 |
页大小,单页的item数量上限 |
owned |
Int |
否 |
表示设备绑定的类型:0:作为分享设备被他人分享;1:设备拥有者;null:所有 |
返回参数
参数 |
子键 |
类型 |
描述 |
total |
|
Integer |
云端总数 |
pageNo |
|
Integer |
当前页号 |
pageSize |
|
Integer |
页大小 |
data |
|
List<> |
用户绑定设备列表 |
|
identityId |
String |
用户的身份ID |
|
iotId |
String |
设备的iotId |
|
productKey |
String |
设备的productKey |
|
deviceName |
String |
设备的deviceName |
|
productName |
String |
设备的产品名称 |
|
productImage |
String |
设备的产品图片 |
|
productModel |
String |
设备的产品型号 |
|
categoryImage |
String |
品类图标 |
|
nickName |
String |
用户对设备的昵称,用户通过setDeviceNickName设置的昵称 |
|
netType |
String |
设备入网类型 |
|
thingType |
String |
设备的类型:"VIRTUAL", "WEB", "APP","DEVICE" |
|
nodeType |
String |
设备的节点类型:"DEVICE", "GATEWAY" |
|
status |
Byte |
设备的状态 0:未激活 ;1:在线;3:离线;8:禁用 |
|
owned |
Byte |
0:分享者;1:拥有者 |
|
identityAlias |
String |
用户的显示名(mobile或loginName或email) |
|
gmtModified |
Date |
修改时间(绑定时间) |
|
description |
String |
描述 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"pageNo":1,
"pageSize":10,
"iotId":"fy2Z1oZFWZQVii6kkFVM00101edf00"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"data": [
{
"productModel": "testProduct",
"iotId": "fy2Z1oZFWZQVii6kkFVM00101edf00",
"netType": "NET_WIFI",
"identityId": "5082opabf5192fb1ae453eced9806fbdae6f6093",
"thingType": "DEVICE",
"nodeType": "DEVICE",
"productKey": "a1OwEjYFJNb",
"deviceName": "b65cb59e688e4f74a208592cd695fb",
"productName": "0d2a0e6195",
"status": 3
}
],
"id": "e2d74ffe-308e-44ee-94a5-9b44a43eabc9"
}
异常返回示例
{
"code":2064,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"need authorize to bind"
}
错误码
请参考公共错误码
设备列表排序
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/sortDevices |
1.0.2 |
对设备进行排序 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
子键 |
类型 |
必填 |
描述 |
groupId |
|
String |
否 |
要排序的空间(如家ID等). 可为空 |
sortDeviceDTOList |
|
List< SortDeviceDTO > |
是 |
设备排序有变化的数据 |
|
iotId |
String |
是 |
设备ID |
|
fromOrder |
Integer |
是 |
排序变化前设备的位置 |
|
toOrder |
Integer |
是 |
排序变化后设备的位置 |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"groupId":"",
"sortDeviceDTOList":[
{"iotId": "Z75bTa4dYNLxj1Y3SeRW001056af10",
"fromOrder": 1,
"toOrder": 3
},
{"iotId": "faHSHCOxsZGWxdEHbQoN00108dcf00",
"fromOrder": 2,
"toOrder": 1
},
{"iotId": "Spb4eatt1LtRY7VxWdeq00108a4410",
"fromOrder": 3,
"toOrder": 2
}
]
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2000,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"sortDevice param error!"
}
错误码
请参考公共错误码
生成分享用的二维码
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/generateShareQrCode |
1.0.2 |
生成设备分享用的二维码,支持批量设备和场,有效期30分钟 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
iotIdList |
List< String > |
否 |
设备iotId列表(iotIdList和sceneIdList不能同时为空) |
sceneIdList |
List< String > |
否 |
场景sceneId列表(iotIdList和sceneIdList不能同时为空) |
groupId |
String |
否 |
设备和场景所在的空间(如家ID等). 可为空 |
返回参数
参数 |
类型 |
描述 |
qrKey |
String |
生成的二维码key |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"iotIdList":["xxxx"],
"sceneIdList":["xxxx"]
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"data": {
"qrKey": "xxxxxx"
},
"id": "6ec222eb-87fc-421e-9b67-351df196ceb3"
}
异常返回示例
{
"code":2081,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"scene not found by sceneId"
}
错误码
请参考公共错误码
通过扫描二维码绑定设备
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/scanBindByShareQrCode |
1.0.2 |
通过扫描二维码绑定设备,绑定后是普通成员 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
qrKey |
String |
是 |
扫描的二维码key |
返回参数
参数 |
类型 |
描述 |
ScanShareQrCodeV2Resp |
Object |
绑定的设备ID列表 |
ScanShareQrCodeV2Res结构
参数 |
类型 |
描述 |
iotIdListp |
List |
绑定的设备ID列表 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"qrKey":"xxxx"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"data": {
"iotIdList":["abc","123"]
},
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2067,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"qrKey not exist"
}
错误码
请参考公共错误码
设备分享给指定的用户
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/shareDevicesAndScenes |
1.0.7 |
通过指定手机、邮箱或具体identityId的方式将设备和场景分享给其他人;对于使用自有账号体系的用户,在智能生活平台一般不会保存对应账号的手机和邮箱等信息,此时可以借助自有账号id和智能生活平台identityId映射关系(用户可自行存储该映射关系),来实现该分享接口的调用; |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
iotIdList |
List< String > |
是 |
设备iotId列表 |
targetIdentityId |
String |
否 |
分享目标身份ID(用户属性对/身份ID 两者须至少有一个) |
accountAttr |
String |
否 |
唯一标识目标用户的属性(如:手机号、邮箱的值) |
accountAttrType |
String |
否 |
唯一标识目标用户的属性类型(如:手机号、邮箱等),手机号:"MOBILE",邮箱: "EMAIL" |
mobileLocationCode |
String |
否 |
手机号区位码,如86 |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"accountAttr":"13656637684",
"accountAttrType": "MOBILE",
"iotIdList":[
"inqfGrp0Cu5IRelvqdpD00100fd600",
"ETytXLwjIMRZK0GFW4qG0010629e00"
]
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2064,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"need authorize to bind"
}
错误码
错误码 |
错误信息 |
来源 |
详细描述 |
2062 |
identityId not exist |
业务 |
iedntityId 不存在 |
2066 |
identityId is not manager |
业务 |
管理员与设备未绑定 |
2073 |
share model of this product is not supported |
业务 |
分享模式不支持 |
2074 |
query msg-center hsf error |
业务 |
调用消息中心错误 |
2075 |
share model not config for this product |
业务 |
分享模式未配置 |
2077 |
"can't get identityId by email and mobile |
业务 |
无法根据手机号或影响找到用户 identityId |
2086 |
can not share to oneself |
业务 |
不能分享给自己 |
2087 |
iotId has bind to target user |
业务 |
设备和目标用户已绑定 |
获取共享通知列表
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/getShareNoticeList |
1.0.2 |
获取共享通知列表 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
pageNo |
Int |
是 |
当前页号,从1开始的页序号 |
pageSize |
Int |
是 |
页大小,单页的item数量上限 |
返回参数
参数 |
子键 |
类型 |
描述 |
total |
|
Integer |
云端总量 |
pageNo |
|
Integer |
当前页号 |
pageSize |
|
Integer |
页大小 |
data |
|
List<> |
分享列表 |
|
initiatorAlias |
String |
发起分享用户别名 |
|
receiverAlias |
String |
被分享用户别名 |
|
targetId |
String |
共享的物的ID |
|
targetType |
String |
共享的物的类型 |
|
productImage |
String |
设备产品图片 |
|
deviceName |
String |
设备的deviceName |
|
isReceiver |
Integer |
当前用户是否是消息接收者 |
|
gmtCreate |
Long |
创建时间 |
|
gmtModified |
Long |
修改时间 |
|
recordId |
String |
分享记录唯一标识 |
|
status |
Integer |
状态: -1: 初始化; 0:同意; 1:拒绝; 2:取消; 3:过期; 4:抢占; 5:删除; 6:发起者已解绑; 99:异常 |
|
description |
String |
描述 |
|
categoryImage |
String |
品类图标 |
|
productName |
String |
产品名称 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"pageNo": 1,
"pageSize":10
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"data": [
{
"gmtCreate": "15275845255",
"gmtModified": "15235845255",
"targetId": "fy2Z1oZFWZQVii6kkFVM00101edf00",
"categoryImage": "http://xxx",
"description": "向15163587365共享设备中,待对方确认",
"targetType": "DEVICE",
"recordId": "a1OwEjY1d555d5dfdFJNb",
"deviceName": "b65cb59e688e4f74a208592cd695fb",
"productName": "0d2a0e6195",
"initiatorAlias":"15632547896",
"receiverAlias":"15163587365",
"isReceiver": 0,
"status": -1
}
],
"id": "e2d74ffe-308e-44ee-94a5-9b44a43eabc9"
}
异常返回示例
{
"code":2062,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"identityId not exist"
}
错误码
请参考公共错误码
发起者取消分享
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/cancelShare |
1.0.2 |
发起者取消分享 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
recordIdList |
List< String > |
是 |
分享记录列表 |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"recordIdList":[
"d4eb352adac248be91fb61d53febd503",
"2568degt2adac248be91fb61d53febd3"
]
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2093,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"forbidden to repeat cancel sharing."
}
错误码
错误码 |
错误信息 |
来源 |
详细描述 |
2078 |
not the same initiator when cancel share dev or scene |
业务 |
不是同一个发起者 |
2082 |
receiver has reject share |
业务 |
接收者已拒绝分享 |
2085 |
receiver has agree share. |
业务 |
接收者已同意分享 |
2093 |
forbidden to repeat cancel sharing |
业务 |
不允许重复取消 |
2096 |
sharing time expired |
业务 |
分享已过期 |
2097 |
sharing record not exist |
业务 |
分享不存在 |
被分享者同意或拒绝分享
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/confirmShare |
1.0.2 |
被分享者同意/拒绝分享 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
recordIdList |
List< String > |
是 |
分享记录列表 |
agree |
Integer |
是 |
0:不同意;1:同意. 必填 |
返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"recordIdList":[
"d4eb352adac248be91fb61d53febd503",
"2568degt2adac248be91fb61d53febd3"
],
"agree":1
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2092,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"forbidden to repeat reject sharing."
}
错误码
请参考公共错误码
设置设备昵称
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/setDeviceNickName |
1.0.2 |
设置设备昵称 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
groupId |
String |
否 |
设备的空间(如家ID等) |
iotId |
String |
是 |
设备ID |
nickName |
String |
是 |
昵称 |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"iotId": "5070op867df8c1941fbb2727449d87c207471699",
"nickName":"nickName"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2062,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"identityId not exist"
}
错误码
请参考公共错误码
解绑用户和设备
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/unbindAccountAndDev |
1.0.2 |
解绑用户和设备。若用户不是拥有者(管理员),则只解绑自己;若用户是拥有者(管理员),则再解绑与该设备绑定的所有用户。若用户是管理员且设备是网关,则还会解绑用户和其所有的子设备。 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
iotId |
String |
否 |
设备ID |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"iotId":"xxxx"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2062,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"identityId not exist"
}
错误码
请参考公共错误码
查询用户和设备的关系
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/getByAccountAndDev |
1.0.2 |
查询用户和设备的关系. 如不存在, 返回一个空对象. |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
iotId |
String |
是 |
设备ID |
返回参数
参数 |
类型 |
描述 |
identityId |
String |
用户的身份ID |
iotId |
String |
设备的iotId |
AproductKey |
String |
设备的productKey |
deviceName |
String |
设备的deviceName |
productName |
String |
设备的产品名称 |
productImage |
String |
设备的产品图片 |
productModel |
String |
设备的产品型号 |
nickName |
String |
用户对设备的昵称 |
netType |
String |
设备入网类型 |
thingType |
String |
设备的类型:"VIRTUAL", "WEB", "APP","DEVICE" |
nodeType |
String |
设备的节点类型:"DEVICE", "GATEWAY" |
status |
Byte |
设备的状态 0:未激活 ;1:在线;3:离线;8:禁用 |
owned |
Byte |
0:分享者;1:拥有者 |
identityAlias |
String |
用户的显示名(mobile或loginName或email) |
gmtModified |
Date |
修改时间(绑定时间) |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"iotId":"xxxx"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"data":
{
"productModel": "testProduct",
"iotId": "fy2Z1oZFWZQVii6kkFVM00101edf00",
"netType": "NET_WIFI",
"identityId": "5082opabf5192fb1ae453eced9806fbdae6f6093",
"thingType": "DEVICE",
"nodeType": "DEVICE",
"productKey": "a1OwEjYFJNb",
"deviceName": "b65cb59e688e4f74a208592cd695fb",
"productName": "0d2a0e6195",
"status": 3
},
"id": "e2d74ffe-308e-44ee-94a5-9b44a43eabc9"
}
异常返回示例
{
"code":2063,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"iotId not exist"
}
错误码
请参考公共错误码
管理员解绑设备
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/unbindByManager |
1.0.2 |
管理员解绑指定的用户和设备。要求当前登录用户是设备的管理员、拥有者。 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
targetIdentityId |
String |
是 |
要解绑的用户(设备的普通成员),不能与identityId相同 |
iotIdList |
List< String> |
是 |
要解绑的设备ID列表 |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"targetIdentityId":"xxxx",
"iotIdList":[
"d4eb352adac248be91fb61d53febd503",
"2568degt2adac248be91fb61d53febd3"
]
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2083,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"you are not the manager of some devices"
}
错误码
请参考公共错误码
清空共享消息列表
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/clearShareNoticeList |
1.0.2 |
清空共享消息列表(包括本人发起和接收全部) |
是,客户端SDK需启用身份的鉴权 |
请求参数
无业务请求参数
返回参数
无业务返回参数
无
示例
请求示例
{
"request": {
"iotToken": "c4b3f642a91880195a5e7a06a3c5dcb3",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2062,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"identityId not exist"
}
错误码
请参考公共错误码
绑定push通道
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/bindPushChannel |
1.0.2 |
绑定push通道 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
deviceId |
String |
是 |
push通道的deviceId |
deviceType |
String |
是 |
设备类型:iOS或ANDROID,值由业务方和app协商 |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"deviceId":"xxxx",
"deviceType":"iOS"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2062,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"identityId not exist"
}
错误码
请参考公共错误码
解绑push通道
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/unbindPushChannel |
1.0.2 |
绑定push通道 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
deviceId |
String |
是 |
push通道的deviceId |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"deviceId":"xxxx"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2062,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"identityId not exist"
}
错误码
请参考公共错误码
获取网关的子设备列表
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/subdevices/list |
1.0.2 |
获取用户绑定的网关子设备列表 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
iotId |
String |
是 |
设备ID |
pageNo |
Int |
是 |
当前页号,从1开始的页序号 |
pageSize |
Int |
是 |
页大小,单页的item数量上限 |
返回参数
参数 |
子键 |
类型 |
描述 |
total |
|
Integer |
云端总数 |
pageNo |
|
Integer |
当前页号 |
pageSize |
|
Integer |
页大小 |
data |
List<> |
子设备列表 |
|
|
iotId |
String |
设备的iotId |
|
productKey |
String |
设备的productKey |
|
deviceName |
String |
设备的deviceName |
|
nickName |
String |
设备的产品名称 |
|
image |
String |
品类图片 |
|
status |
Byte |
设备的在线状态:0 - 未激活, 1 - 在线, 3 - 离线, 8 - 禁用 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"iotId":"xxxxxxx",
"pageNo":1,
"pageSize":10
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"data": [
{
"iotId": "testIot",
"productKey": "fy2Z1oZFWZQVii6kkFVM00101edf00",
"deviceName": "NET_WIFI",
"nickName": "xxxxxx",
"image": "http://abc.jpg",
"status": 0
},
{
"iotId": "testIot",
"productKey": "fy2Z1oZFWZQVii6kkFVM00101edf00",
"deviceName": "NET_WIFI",
"nickName": "xxxxxx",
"image": "http://abc.jpg",
"status": 0
}
],
"id": "e2d74ffe-308e-44ee-94a5-9b44a43eabc9"
}
异常返回示例
{
"code":2062,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"identityId not exist"
}
错误码
请参考公共错误码
解绑用户和场景
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/unbindAccountAndScene |
1.0.2 |
解绑用户和场景. 若用户不是场景的拥有者(管理员), 则只解绑自己; 若用户是拥有者(管理员), 则再解绑与该场景绑定的所有用户 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
sceneId |
String |
是 |
场景ID |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.2"
},
"id": 1508212818676,
"params": {
"sceneId":"xxxx"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"id":"bb179e80-39fd-4a79-ba97-48ca87a3f5c5"
}
异常返回示例
{
"code":2081,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"请求错误",
"message":"scene not found by sceneId"
}
错误码
请参考公共错误码
创建虚拟用户
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/virtual/user/create |
1.0.4 |
创建当前登录用户名下的虚拟用户 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
attrList |
List |
否 |
用户的属性及属性值。 若为空,则表示只创建一个无属性的用户。属性Key必须是在规定的系统属性中选择,具体系统属性定义参见虚拟用户属性定义表 |
attrList列表结构
参数 |
类型 |
必填 |
描述 |
attrKey |
String |
是 |
属性Key |
attrValue |
String |
是 |
属性值 |
返回参数
参数 |
类型 |
描述 |
userId |
String |
创建的虚拟用户ID |
attrList |
List |
用户的属性值,意义同请求参数 |
attrList列表结构
参数 |
类型 |
必填 |
描述 |
attrKey |
String |
是 |
属性Key |
attrValue |
String |
是 |
属性值 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.4"
},
"id": 1508212818676,
"params": {
"attrList": [
{
"attrKey":"name",
"attrValue":"小明"
}
]
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"message": "success",
"data": {
"userId":"10B6336EFE05374FF99BDD428F58AA5A18",
"attrList":[
{
"attrKey":"name",
"attrValue":"小明"
}
]
}
}
异常返回示例
{
"code":503,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"服务不可用",
"message":"service not available."
}
错误码
请参考公共错误码
删除虚拟用户
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/virtual/user/delete |
1.0.4 |
删除当前登录用户名下的虚拟用户 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
virtualUserId |
String |
是 |
虚拟用户ID |
返回参数
无业务返回参数
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.4"
},
"id": 1508212818676,
"params": {
"userId":"10B6336EFE05374FF99BDD428F58AA5A18"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"message": "success",
"data": null
}
异常返回示例
{
"code":503,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"服务不可用",
"message":"service not available."
}
错误码
请参考公共错误码
更新虚拟用户信息
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/virtual/user/update |
1.0.4 |
更新当前登录用户名下的虚拟用户信息 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
virtualUserId |
String |
是 |
虚拟用户ID |
opType |
Integer |
是 |
更新时属性时的操作类型(opType)的类型,目前仅支持三种:1:ADD,2:UPDATE,3:DELETE |
attrList |
List |
是 |
用户的属性及属性值。属性Key必须是在规定的系统属性中选择,具体系统属性定义参见虚拟用户属性定义表 |
attrList列表结构
参数 |
类型 |
必填 |
描述 |
attrKey |
String |
是 |
属性Key |
attrValue |
String |
是 |
属性值 |
返回参数
参数 |
类型 |
描述 |
userId |
String |
创建的虚拟用户ID |
attrList |
List |
用户的属性值,意义同请求参数 |
attrList列表结构
参数 |
类型 |
必填 |
描述 |
attrKey |
String |
是 |
属性Key |
attrValue |
String |
是 |
属性值 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.4"
},
"id": 1508212818676,
"params": {
"userId":"10B6336EFE05374FF99BDD428F58AA5A18",
"opType":2,
"attrList":[
{
"attrKey":"name",
"attrValue":"小李"
}
]
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"message": "success",
"data": {
"userId":"10B6336EFE05374FF99BDD428F58AA5A18",
"attrList":[
{
"attrKey":"name",
"attrValue":"小明"
}
]
}
}
异常返回示例
{
"code":503,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"服务不可用",
"message":"service not available."
}
错误码
错误码 |
错误信息 |
来源 |
详细描述 |
28528 |
operation type not support. |
业务 |
不支持当前传入的虚拟用户信息更新操作类型 |
28529 |
virtual user attr list is empty. |
业务 |
虚拟用户的属性列表为空 |
查询虚拟用户列表
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/virtual/user/list |
1.0.4 |
查询当前登录用户名下的虚拟用户列表 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
pageNo |
Integer |
是 |
当前页号,从1开始的页序号 |
pageSize |
Integer |
是 |
页大小,单页的item数量上限 |
返回参数
参数 |
类型 |
描述 |
total |
Long |
虚拟用户总数 |
pageNo |
Integer |
当前页号 |
pageSize |
Integer |
页大小 |
data |
List |
虚拟用户列表 |
data列表结构
参数 |
类型 |
必填 |
描述 |
userId |
String |
是 |
虚拟用户ID |
attrList |
List |
是 |
用户的属性及属性值。属性Key必须是在规定的系统属性中选择,具体系统属性定义参见虚拟用户属性定义表 |
attrList列表结构
参数 |
类型 |
必填 |
描述 |
attrKey |
String |
是 |
属性Key |
attrValue |
String |
是 |
属性值 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.4"
},
"id": 1508212818676,
"params": {
"pageNo":1,
"pageSize":10
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"message": "success",
"data": {
"total":1,
"pageNo":1,
"pageSize":10,
"data":[
{
"userId":"10B6336EFE05374FF99BDD428F58AA5A18",
"attrList":[
{
"attrKey":"name",
"attrValue":"小明"
}
]
}
]
}
}
异常返回示例
{
"code":503,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"服务不可用",
"message":"service not available."
}
错误码
请参考公共错误码
查询虚拟用户详情
定义描述
path |
版本 |
描述 |
是否需要用户身份的鉴权 |
/uc/virtual/user/query |
1.0.4 |
查询当前登录用户名下的虚拟用户详情 |
是,客户端SDK需启用身份的鉴权 |
请求参数
参数 |
类型 |
必填 |
描述 |
virtualUserId |
String |
是 |
虚拟用户ID |
返回参数
参数 |
类型 |
描述 |
userId |
String |
是 |
attrList |
List |
是 |
attrList列表结构
参数 |
类型 |
必填 |
描述 |
attrKey |
String |
是 |
属性Key |
attrValue |
String |
是 |
属性值 |
示例
请求示例
{
"request": {
"iotToken": "109049c80bcde4c06b15f6f62e29a3ba",
"apiVer": "1.0.4"
},
"id": 1508212818676,
"params": {
"userId":"10B6336EFE05374FF99BDD428F58AA5A18"
},
"version": "1.0"
}
正常返回示例
{
"code": 200,
"message": "success",
"data": {
"userId":"10B6336EFE05374FF99BDD428F58AA5A18",
"attrList":[
{
"attrKey":"name",
"attrValue":"小明"
}
]
}
}
异常返回示例
{
"code":503,
"id":"4fa207ca-fffd-48bb-94b8-e6f7ca6c99c3",
"localizedMsg":"服务不可用",
"message":"service not available."
}
错误码
请参考公共错误码
虚拟用户属性定义表
attrKey |
attrType |
attrName |
备注 |
displayName |
STRING |
显示名 |
|
name |
STRING |
姓名 |
|
gender |
INTEGER |
性别 |
1男;2女 |
birthday |
STRING |
生日 |
|
QQ |
STRING |
QQ号码 |
|
employeeID |
STRING |
工号 |
|
extNum |
STRING |
办公分机号 |
|
homeAddress |
STRING |
家庭地址 |
|
companyAddress |
STRING |
公司地址 |
|
companyName |
STRING |
公司名称 |
|
country |
STRING |
国家名称 |
|
region |
STRING |
所在地区 |
|
avatar |
STRING |
头像 |
头像的图片URL地址 |