调用该接口查询存储的时序数据。
使用说明
仅标准型和尊享型企业版实例下,支持调用该接口查询时序数据。
时序数据存储详细说明,请参见配置时序数据存储。
使用限制
-
调用该接口的每秒请求写入数据数,由您购买实例下的时序数据存储IOPS规格决定。详细内容,请参见购买企业版实例和查看时序数据存储IOPS。
-
仅可查询存储时效内的数据。数据存储时效,请参见存储配置。
说明数据存储时间从存储字段的时间戳表示的时间当日开始计算。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 |
类型 |
是否必选 |
示例值 |
描述 |
Action | String | 是 | QueryDevicesHotStorageData | 系统规定参数。取值:QueryDevicesHotStorageData。 |
Asc | Integer | 是 | 0 | 返回结果中数据记录的排序方式,取值:
|
EndTime | Long | 是 | 1579249499000 | 要查询的数据记录的结束时间,必须大于起始时间StartTime。取值为毫秒值时间戳,例如:1579249499000。 |
Identifier | String | 是 | temperature | 已存储时序数据中的字段标识符。即调用WriteDevicesHotStorageData接口写入时序数据中请求参数Items中的字段标识符。 |
IotInstanceId | String | 是 | iot-2w**** | 实例ID。您可在物联网平台控制台的实例概览页面,查看当前实例的ID。 |
PageSize | Integer | 是 | 10 | 单个字段标识符可返回的数据记录数量,最大值为100。 任意一个字段返回的数据记录数量均不超过该值。 |
StartTime | Long | 是 | 1579249499000 | 要查询的数据记录的开始时间,必须小于结束时间EndTime。取值为毫秒值时间戳,例如:1579249499000。 |
UserTopic | String | 是 | user/a***/b*** | 要查询数据所属自定义Topic。从 自定义Topic详细说明,请参见自定义Topic。 |
ProductKey | String | 否 | a1BwAGV**** | 设备所属的产品ProductKey。 重要 如果传入该参数,需同时传入DeviceName。 |
DeviceName | String | 否 | device1 | 设备的名称。 重要 如果传入该参数,需同时传入ProductKey。 |
NextPageToken | String | 否 | Bo***x44Qx | 下一页标识。如果存在下一页,服务会返回此Token,下次请求带上即可。 |
IotId | String | 否 | y4u2weAI********HMle1234 | 设备ID。 重要 IotId作为设备唯一标识符,和ProductKey与DeviceName组合是一一对应的关系。如果传入该参数,则无需传入ProductKey和DeviceName。如果您同时传入IotId和ProductKey与DeviceName组合,则以IotId为准。 |
调用API时,除了本文介绍的该API的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档。
返回数据
名称 |
类型 |
示例值 |
描述 |
Code | String | iot.system.SystemException | 调用失败时,返回错误码。详细信息,请参见下文错误码。 |
Data | Struct | 调用成功后,返回的数据。 |
|
List | Array of PropertyInfo | 时序数据集合。 |
|
PropertyInfo | |||
Time | String | 1516541885630 | 字段值对应时间戳,单位为毫秒。 |
Value | String | 2 | 字段值。 |
NextValid | Boolean | true | 是否有下一页属性记录。
返回NextValid为true时,可以将NextPageToken的值作为下次查询的NextPageToken,继续查询本次查询不显示的数据。 |
nextPageToken | String | Bo***x44Qx | 下一页标识。 |
ErrorMessage | String | 系统异常 | 调用失败时,返回的出错信息。 |
RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 | 阿里云为该请求生成的唯一标识符。 |
Success | Boolean | true | 是否调用成功。
|
示例
请求示例
http(s)://iot.cn-shanghai.aliyuncs.com/?Action=QueryDevicesHotStorageData
&Asc=0
&EndTime=1579249499000
&Identifier=temperature
&IotInstanceId=iot-2w****
&PageSize=10
&StartTime=1579249499000
&UserTopic=user/a***/b***
$ProductKey=a1BwAGV****
$DeviceName=device1
&<公共请求参数>
正常返回示例
XML
格式
<QueryDevicesHotStorageDataResponse>
<RequestId>E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565</RequestId>
<Data>
<NextValid>true</NextValid>
<nextPageToken>Bo***x44Qx</nextPageToken>
<List>
<PropertyInfo>
<Value>2</Value>
<Time>1516541885630</Time>
</PropertyInfo>
</List>
</Data>
<Success>true</Success>
</QueryDevicesHotStorageDataResponse>
JSON
格式
{
"RequestId": "E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565",
"Data": {
"NextValid": true,
"nextPageToken": "Bo***x44Qx",
"List": {
"PropertyInfo": [{
"Value": 2,
"Time": 1516541885630
}]
}
},
"Success": true
}
错误码
HttpCode |
错误码 |
错误信息 |
描述 |
400 | iot.device.InvalidTimeBucket | The specified time range is invalid. | 指定的时间区间不合法。 |
400 | iot.device.NullDeviceName | The DeviceName parameter cannot be empty. | 设备名称不能为空。 |
400 | iot.prod.NullProductKey | The ProductKey parameter cannot be empty. | 入参产品ProductKey不能为空。 |
400 | iot.common.InvalidPageParams | The specified pagination size or pagination parameter is invalid. | 分页大小或者分页页号不合法。 |
400 | iot.prod.NotExistedProduct | The specified product does not exist. | 指定的产品不存在。 |
400 | iot.device.PageTokenIsIllegal | The paging token is invalid. | 分页token非法。 |
400 | Iot.Device.NotExistedDevice | The device does not exist. | 设备不存在或未激活。 |
400 | iot.device.InvalidFormattedDeviceName | The DeviceName format is invalid. | 设备名称格式错误。 |
400 | iot.prod.InvalidFormattedProductkey | The ProductKey format is invalid. | 入参产品ProductKey格式错误。 |
400 | iot.system.IllegalRequest | The request parameter is invalid. | 非法的请求参数。 |
400 | iot.device.InvalidIoTId | The specified device ID is invalid. | 设备ID错误。 |
400 | iot.storage.HotStorageIopsReadNotEnough | The timeline storage read IOPS is not enough. | 时序存储读IOPS不足。 |
访问错误中心查看更多错误码。