用户服务

更新时间:2019-07-25 21:28:48

提供一组与用户相关的服务接口,客户端应用通过本组服务接口可以实现用户绑定设备列表信息的获取,同时可以实现设备和push通道的解绑操作。

用户和设备绑定关系

设备分享

用户和消息绑定关系

虚拟用户

获取用户绑定的设备列表

定义描述

path 版本 描述 是否需要用户身份的鉴权
/uc/listBindingByAccount 1.0.2 根据用户获取设备列表 是,客户端SDK需启用身份的鉴权

请求参数

参数 类型 必填 描述
pageNo Int 当前页号,从1开始的页序号
pageSize Int 页大小,单页的item数量上限
thingType String 设备类型:"VIRTUAL", "VIRTUAL_SHADOW", "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", "VIRTUAL_SHADOW", "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", "VIRTUAL_SHADOW", "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映射关系(用户可自行存储该映射关系),来实现该分享接口的调用;每次分享最多可以分享20个设备 是,客户端SDK需启用身份的鉴权

请求参数

参数 类型 必填 描述
iotIdList List< String > 设备iotId列表,每次最多分享20个
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", "VIRTUAL_SHADOW", "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/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."
}

错误码

错误码 错误信息 来源 详细描述
20050 virtualUserId required. 业务 传入的虚拟用户Id不能为空

更新虚拟用户信息

定义描述

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 虚拟用户ID
attrList List 用户的属性及属性值。属性Key必须是在规定的系统属性中选择,具体系统属性定义参见虚拟用户属性定义表

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地址

results matching ""

    No results matching ""