修改设备快照信息
此接口用于修改指定设备的属性信息。
属性key需提前在iot管理平台定义,且大小写以页面显示为准,未定义的属性将被过滤,流程:
- 校验设备存在性、是否禁用、全部下发属性是否未定义
- 针对已定义的属性更新到期望。至此,同步调用结束
- 设备在线时,异步下发属性到设备,若成功,则将期望值更新到上报值
- 设备不在线,但上线后,会将期望值下发到设备,若成功,则将期望值更新到上报值
1 接口路径
POST /api/v1/device/attributes/{deviceId}
2 请求参数
路径参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
deviceId | BigInteger | 是 | 设备ID |
body参数,json格式:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
productKey | String | 是 | 产品标识 |
desired | Object | 是 | 期望值,用户自定义的json对象 |
3 返回参数
统一返回参数说明参考:公共参数,正常的返回业务参数(data
) 如下:
名称 | 类型 | 描述 |
---|---|---|
filterKeys | String[] | 已过滤的属性(未定义或大小写不一致) |
failedKeys | String[] | 更新失败的属性 |
4 返回状态码
公共状态码说明参考:公共参数,以下是业务关联的状态码说明:
code | 描述 |
---|---|
120106 | 设备不存在或无权限 |
120105 | 设备属性期望值不能为空 |
120110 | 设备已禁用或状态未知 |
5 示例
请求示例
{
"productKey": "1_783dcb3cf4d",
"desired": {
"color": "aqua",
"coloR": "red",
"color1": "green"
}
}
返回示例
{
"code": "000000",
"data": {
"filterKeys": [ //已过滤的属性(未定义或大小写不一致)
"color1",
"coloR"
],
"failedKeys": [] //更新失败的属性
},
"message": "success"
}