查询设备影子历史数据
接口说明
应用服务器通过“修改设备影子”接口修改设备影子的配置时,物联网平台会保存修改记录。当应用服务器需要查看设备影子的历史配置记录时,可调用此接口查询获取。
URI
| 请求方法 | GET |
|---|---|
| URI | /iocm/app/shadow/v1.5.0/deviceDesiredHistory |
| 传输协议 | HTTPS |
请求参数
| 参数 | 必选/可选 | 类型 | 位置 | 描述 |
|---|---|---|---|---|
| app_key | 必选 | String | header | 访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。 |
| Authorization | 必选 | String | header | 访问物联网平台的认证信息,值为“Bearer {accessToken}”,其中{accessToken}为调用鉴权接口返回的accessToken。 |
| appId | 可选 | String | query | 设备所属的应用ID,当查询授权应用下设备的设备影子历史数据时才需要填写。 |
| deviceId | 必选 | String | query | 设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。 |
| gatewayId | 必选 | String | query | 网关ID,用于标识一个网关设备。当设备是直连设备时,gatewayId与设备的deviceId一致。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)的deviceId。 |
| serviceId | 可选 | String | query | 设备的服务标识。 |
| property | 可选 | String | query | 服务属性数据。 |
| pageNo | 可选 | Integer | query | 分页查询参数,查询结果分页显示时指定要查看的页信息,默认值0,查询第一页,取值范围为大于等于0的整数。 |
| pageSize | 可选 | Integer | query | 分页查询参数,查询结果分页显示时每页显示的记录数,默认值为25,取值范围为1-250的整数。 |
| startTime | 可选 | String | query | 查询产生时间在startTime之后的历史数据。需要填写UTC时间,格式:yyyyMMdd'T'HHmmss'Z',如 20151212T121212Z。 您需要根据本地所在时区自己进行时间转换。 |
| endTime | 可选 | String | query | 查询产生时间在endTime之前的历史数据。需要填写UTC时间,格式:yyyyMMdd'T'HHmmss'Z',如 20151212T121212Z。 您需要根据本地所在时区自己进行时间转换。 |
响应参数
StatusCode: 200 OK
| 参数 | 类型 | 描述 |
|---|---|---|
| totalCount | Long | 查询的记录数量。 |
| pageNo | Long | 查询的页码。 |
| pageSize | Long | 查询每页信息的数量。 |
| DeviceDesiredHistoryDTO | List<DeviceDesiredHistoryDTO> | 设备影子历史配置数据列表。 |
| 参数 | 类型 | 描述 |
|---|---|---|
| serviceId | String(256) | 设备的服务标识。 |
| deviceId | String(256) | 设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。 |
| gatewayId | String(256) | 网关ID,用于标识一个网关设备。当设备是直连设备时,gatewayId与设备的deviceId一致。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)的deviceId。 |
| appId | String(256) | 设备所属的应用ID。 |
| desired | JsonObject | 要向设备下发的配置信息。 |
| timestamp | String(256) | 数据配置的UTC时间,时间格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。 若需要显示本地时区时间,您需要自己进行时间转换。 |
请求示例
GET https://{host}:{port}/iocm/app/shadow/v1.5.0/deviceDesiredHistory?deviceId={deviceId}&gatewayId={gatewayId}&appId={appId}&serviceId={serviceId}&property={property}&pageNo={pageNo}&pageSize={pageSize}&startTime={startTime}&endTime={endTime}
Content-Type: application/json
app_key: ******
Authorization: Bearer ***** 正常响应示例
Status Code: 200 OK
Content-Type: application/json
{
"totalCount":"****",
"pageNo":"*****",
"pageSize":"*****",
"DeviceDesiredHistoryDTO":[
{
"serviceId":"*****",
"deviceId":"*****",
"gatewayId":"*****",
"appId":"*****",
"desired":"*****",
"timestamp":"*****"
}
]
} 错误码
| Http状态码 | 错误码 | 错误描述 | 说明 |
|---|---|---|---|
| 200 | 100203 | The application is not existed. | 应用不存在。 处理建议:
|
| 400 | 100216 | The application input is invalid. | 应用输入无效。 处理建议:请参考请求参数说明检查接口请求中的参数是否有误。 |
| 400 | 100419 | The deviceId and gatewayId can't be both null. | deviceId和gatewayId不能同时为空。 处理建议:请检查请求参数中deviceId和gatewayId是否填写。 |
| 403 | 100203 | The application is not existed. | 应用不存在。 处理建议:
|
| 403 | 100217 | The application hasn't been authorized. | 应用未被授权。 处理建议:若非应用授权场景,请确认请求参数中的appId为空。 |
| 403 | 1010009 | app throttle exceed. | 应用调用接口过于频繁,超过流控值(默认值是100次/60s)。 处理建议:联系物联网平台维护人员调大流控阈值或者控制接口的调用频率。 |
| 403 | 1010005 | Invalid access token or appId. | 错误的token信息。 处理建议:请检查接口请求中所携带的accessToken是否有误。 |
| 500 | 100203 | The application is not existed. | 应用不存在。 处理建议:
|
| 500 | 50252 | Internal server error. | 服务器运行内部错误。 处理建议:物联网平台内部错误,请联系物联网平台维护人员处理。 |
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.