Get Asset AI Data with Aggregation Logic¶
Get the AI normalized data of specified measurement points of specified devices within a certain period. The queried data can also be aggregated by the specified logic.
Operation Permissions¶
Required Authorization |
Required Operation Permission |
---|---|
Asset |
Read |
For more information about resources and required permission, see Policies, Roles and Permissions>>
Using GET Method¶
Request Format¶
GET https://{apigw-address}/tsdb-service/v2.0/ai-normalized
Request Parameters (URI)¶
Name |
Location (Path/Query) |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|---|
orgId |
Query |
Mandatory |
String |
The organization ID which the asset belongs to. How to get organization ID>> |
modelId |
Query |
Optional |
String |
The model ID. How to get model ID>> |
assetIds |
Query |
Mandatory |
String |
The asset ID. Supports the query of multiple asset IDs, separated by commas. How to get asset ID>> |
measurepointsWithLogic |
Query |
Mandatory |
String |
The aggregation logic with the measurement point ID. The supported aggregation calculation methods include count, avg, sum, max, min, first, and last. The time range for the aggregation query is (startTime, endTime), that is, the aggregation operand contains the data at the time of |
interval |
Query |
Mandatory |
Integer |
The time interval for the aggregation algorithm to work. The range is 0-1440, calculated in minutes. If the interval value is 0, the measurement point has no aggregation logic; if the interval value is greater than 0, the measurement point must have the aggregation logic. |
startTime |
Query |
Mandatory |
String |
The start time of the sampling data, where both UTC and local time formats are supported.
|
endTime |
Query |
Mandatory |
String |
The end time of the sampling data. Its format must be consistent with |
pageSize |
Query |
Optional |
Integer |
The upper limit of the returned records in a single page for a single measurement point of a single device, which is 1,000 by default. |
accessKey |
Query |
Optional |
String |
The service account for authentication purposes. How to get the accessKey>> |
localTimeAccuracy |
Query |
Optional |
Boolean |
|
Response Parameters ¶
Name |
Data Type |
Description |
---|---|---|
data |
List<JSONObject> |
The list of asset data. The data returned for a single point of a single device is sorted by the data timestamp in ascending order. For more information, see items |
items¶
Sample¶
{
"sum(yourPointId)": 4.4944,
"assetId": "yourAssetId",
"timestamp": 1560249300000,
"localtime": "2019-06-11 18:35:00"
}
Parameters¶
Name |
Data Type |
Description |
---|---|---|
pointIdWithLogic |
Double |
This parameter is a variable, representing the identifier and data of the measurement point (with or without aggregation logic) |
assetId |
String |
The asset ID. |
timestamp |
Long |
The data timestamp (UNIX time, accurate to the second). |
localtime |
String |
The data timestamp in local time format (accurate to the second). If UTC time format is used when specifying the |
Error Codes¶
For description of error codes, see Common Error Codes.
Sample 1 (GET Method)¶
Request Sample¶
Local time format:
url: https://{apigw-address}/tsdb-service/v2.0/ai-normalized?orgId=yourOrgId&modelId=&assetIds=yourAssetIds&measurepointsWithLogic=sum(yourPointId)&interval=10&startTime=2019-06-01%2000:00:00&endTime=2019-06-11%2023:00:00&pageSize=&accessKey=accessKeyOfYourAPP
method: GET
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"sum(yourPointId)": 4.4944,
"assetId": "yourAssetId",
"timestamp": 1560249300000,
"localtime": "6/11/2019 6:35:00 PM"
},
{
"sum(yourPointId)": 6.0,
"assetId": "yourAssetId",
"timestamp": 1560257100000,
"localtime": "6/11/2019 8:45:00 PM"
}
]
}
}
Sample 2 (GET Method)¶
Request Sample¶
UTC time format:
url: https://{apigw-address}/tsdb-service/v2.0/ai-normalized?accessKey=accessKeyOfYourAPP&assetIds=yourAssetId&pageSize=5000&interval=10&startTime=2019-06-01T00:00:00%2B08:00&endTime=2019-06-11T23:00:00%2B08:00&orgId=yourOrgId&measurepointsWithLogic=sum(yourPointId)
method: GET
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"localtime": null,
"sum(yourPointId)": 4.4944,
"assetId": "yourAssetId",
"timestamp": 1560249300000
},
{
"localtime": null,
"sum(yourPointId)": 6.0,
"assetId": "yourAssetId",
"timestamp": 1560257100000
}
]
}
}
Using POST Method¶
Request Format¶
POST https://{apigw-address}/tsdb-service/v2.0/ai-normalized
Request Parameters (Body)¶
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
orgId |
Mandatory |
String |
The organization ID which the asset belongs to. How to get organization ID>> |
modelId |
Optional |
String |
The model ID. How to get model ID>> |
assetIds |
Mandatory |
String |
The asset ID. Supports the query of multiple asset IDs, separated by commas. How to get asset ID>> |
measurepointsWithLogic |
Mandatory |
String |
The aggregation logic with measurement point ID. The supported aggregation calculation methods include count, avg, sum, max, min, first, and last. The time range for the aggregation query is (startTime, endTime), that is, the aggregation operand contains the data at the time of |
interval |
Mandatory |
String |
The time interval for the aggregation algorithm to work. The range is 0-1440, calculated in minutes. If the interval value is 0, the measurement point has no aggregation logic; if the interval value is greater than 0, the measurement point must have the aggregation logic. |
startTime |
Mandatory |
String |
The start time of the sampling data, where both UTC and local time formats are supported.
|
endTime |
Mandatory |
String |
The end time of the sampling data. Its format must be consistent with |
pageSize |
Optional |
String |
The upper limit of the returned records in a single page for a single measurement point of a single device, which is 1,000 by default. |
accessKey |
Optional |
String |
The service account for authentication purposes. How to get the accessKey>> |
localTimeAccuracy |
Optional |
String |
|
Response Parameters¶
See description in Response Parameters of the Using GET Method section.
Error Codes¶
For description of error codes, see Common Error Codes.
Sample 1 (POST Method)¶
Request Sample¶
Local time format:
url: https://{apigw-address}/tsdb-service/v2.0/ai-normalized
method: POST
Content-Type: multipart/form-data;charset=UTF-8
requestBody:
{
"orgId": "yourOrgId",
"assetIds": "yourAssetIds",
"measurepointsWithLogic": "sum(yourPointId)",
"startTime": "2020-04-20 00:00:00",
"endTime": "2020-04-21 00:00:00",
"interval": 10,
"pageSize": 10,
"accessKey": "accessKey of your APP"
}
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"sum(yourPointId)": 4.4944,
"assetId": "yourAssetId",
"timestamp": 1560249300000,
"localtime": "6/11/2019 6:35:00 PM"
},
{
"sum(yourPointId)": 6.0,
"assetId": "yourAssetId",
"timestamp": 1560257100000,
"localtime": "6/11/2019 8:45:00 PM"
}
]
}
}
Sample 2 (POST Method)¶
Request Sample¶
UTC time format:
url: https://{apigw-address}/tsdb-service/v2.0/ai-normalized
method: POST
Content-Type: multipart/form-data;charset=UTF-8
requestBody:
{
"orgId": "yourOrgId",
"assetIds": "yourAssetId",
"measurepointsWithLogic": "sum(yourPointId)",
"startTime": "2019-06-01T00:00:00%2B08:00",
"endTime": "2019-06-11T23:00:00%2B08:00",
"interval": 10,
"pageSize": 10,
"accessKey": "accessKey of your APP"
}
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"localtime": null,
"sum(yourPointId)": 4.4944,
"assetId": "yourAssetId",
"timestamp": 1560249300000
},
{
"localtime": null,
"sum(yourPointId)": 6.0,
"assetId": "yourAssetId",
"timestamp": 1560257100000
}
]
}
}
SDK Samples¶
You can access the `Java SDK Samples<https://github.com/EnvisionIot/sample-code-java/tree/EnOS2.4/tsdbdata>`__for TSDB data service on Github.