Get Asset Raw Data by Time Range¶
Get the original data of specified measurement points of specified devices within a certain period (covering AI, DI, and common data types) and perform application development.
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/raw
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>> |
measurepoints |
Query |
Mandatory |
String |
The measurement point ID. Supports the query of multiple measurement point IDs, separated by commas. How to get measurement point ID>> |
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>> |
orderBy |
Query |
Optional |
String |
Specify whether to sort the response result according to a certain field. Only the field timestamp is supported for now.
|
withQuality |
Query |
Optional |
Boolean |
|
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 time stamp in ascending order. For more information, see items |
items¶
Sample¶
{
"assetId": "yourAssetId",
"timestamp": 1560249312446,
"yourPointId": 1.1236,
"localtime": "6/11/2019 6:35:12 PM",
"quality": null
}
Parameters¶
Name |
Data Type |
Description |
---|---|---|
assetId |
String |
The asset ID. |
timestamp |
Long |
The data timestamp (UNIX time, accurate to the second). |
pointId |
Double |
This parameter is a variable, representing the identifier and data of the measurement point. |
localtime |
String |
The data timestamp in local time format (accurate to the second). If UTC time format is used when specifying the |
quality |
Integer |
The quality indicator. |
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/raw?orgId=yourOrgId&modelId=yourModelId&assetIds=yourAssetIds&measurepoints=yourPointIds&startTime=2019-05-26%2010:00:00&endTime=2019-06-28%2023:00:00&pageSize=&accessKey=accessKeyOfYourAPP
method: GET
Response Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"assetId": "yourAssetId",
"timestamp": 1560249312446,
"yourPointId": 1.1236,
"localtime": "2019-06-11 18:35:12"
},
{
"localtime": "2019-06-11 18:35:12",
"yourPointId": "0",
"assetId": "yourAssetId",
"timestamp": 1560329369735
}
]
}
}
Sample 2 (GET Method)¶
Request Sample¶
UTC time format:
url: https://{apigw-address}/tsdb-service/v2.0/raw?orgId=yourOrgId&accessKey=accessKeyOfYourAPP&modelId=yourModelId&assetIds=yourAssetIds&measurepoints=yourPointIds&startTime=2019-06-01T00:00:00%2B08:00&endTime=2019-06-11T23:00:00%2B08:00&pageSize=100
method: GET
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"data": [
{
"localtime": "2019-06-11 18:35:12",
"assetId": "yourAssetId",
"yourPointId": 1.1236,
"timestamp": 1560249312446
},
{
"localtime": "2019-06-11 18:35:12",
"yourPointId": 0,
"assetId": "yourAssetId",
"timestamp": 1560329369735
}
]
}
}
Sample 3 (GET Method)¶
Request Sample¶
Request with quality indicator:
url: https://{apigw-address}/tsdb-service/v2.0/raw?orgId=yourOrgId&modelId=yourModelId&assetIds=yourAssetIds&measurepoints=yourPointIds&startTime=2019-06-01%2010:00:00&endTime=2019-06-11%2023:00:00&pageSize=&accessKey=accessKeyOfYourAPP&withQuality=true
method: GET
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"assetId": "yourAssetId",
"timestamp": 1560249312446,
"yourPointId": 1.1236,
"localtime": "2019-06-11 18:35:12",
"quality": 0
},
{
"assetId": "yourAssetId",
"timestamp": 1560249332446,
"yourPointId": 1.1236,
"localtime": "2019-06-11 18:35:32",
"quality": 0
}
]
}
}
Java SDK Sample¶
import com.alibaba.fastjson.JSONObject;
import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;
import com.envision.apim.poseidon.request.PoseidonRequest;
public class GetMethod {
private static class Request extends PoseidonRequest {
public void setQueryParam(String key, Object value){
queryEncodeParams().put(key, value);
}
public void setMethod(String method) {
this.method = method;
}
private String method;
@Override
public String baseUri() {
return "";
}
@Override
public String method() {
return method;
}
}
public void GetAssetsRawDataByTimeRangeTest(){
//1. Click Application Registration in the left navigation of the EnOS Management Console.
//2. Click the application that needs to call the API, and click Basic Information. accessKey and secretKey correspond to AccessKey and SecretKey in EnOS.
String accessKey = "AccessKey of your APP";
String secretKey = "SecretKey of your APP";
//Create a request and pass the required parameters into the map that exists in the query. The key is the parameter name and the value is the parameter value.
Request request = new Request();
request.setQueryParam("orgId", "yourOrgId");
request.setQueryParam("modelId", "yourModelId");
request.setQueryParam("assetIds","yourAssetIds");
request.setQueryParam("measurepoints", "yourPointId1,yourPointId2");
request.setQueryParam("startTime", "2019-06-01 00:00:00"); //For UTC time format: 2019-06-01T00:00:00+08:00
request.setQueryParam("endTime", "2019-06-11 23:00:00"); //For UTC time format: 2019-06-11T23:00:00+08:00
request.setQueryParam("pageSize", 10);
request.setMethod("GET");
try {
JSONObject response = Poseidon.config(PConfig.init().appKey(accessKey).appSecret(secretKey).debug())
.url("https://{apigw-address}/tsdb-service/v2.0/raw")
.getResponse(request, JSONObject.class);
System.out.println(response);
} catch (Exception e) {
e.printStackTrace();
}
}
}
Using POST Method¶
Request Format¶
POST https://{apigw-address}/tsdb-service/v2.0/raw
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>> |
measurepoints |
Mandatory |
String |
The measurement point ID. Supports the query of multiple measurement point IDs, separated by commas. How to get measurement point ID>> |
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>> |
orderBy |
Optional |
String |
Specify whether to sort the response result according to a certain field. Only the field timestamp is supported for now.
|
withQuality |
Optional |
String |
|
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/raw
method: POST
Content-Type: multipart/form-data;charset=UTF-8
requestBody:
{
"orgId": "yourOrgId",
"assetIds": "yourAssetIds",
"measurepoints": "yourPointIds",
"startTime": "2020-04-20 00:00:00",
"endTime": "2020-04-21 00:00:00",
"pageSize": 1000,
"accessKey": "accessKey of your APP"
}
Response Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"assetId": "yourAssetId",
"timestamp": 1560249312446,
"yourPointId": 1.1236,
"localtime": "2019-06-11 18:35:12"
},
{
"localtime": "2019-06-11 18:35:12",
"yourPointId": 0,
"assetId": "yourAssetId",
"timestamp": 1560329369735
}
]
}
}
Sample 2 (POST Method)¶
Request Sample¶
UTC time format:
url: https://{apigw-address}/tsdb-service/v2.0/raw
method: POST
Content-Type: multipart/form-data;charset=UTF-8
requestBody:
{
"orgId": "yourOrgId",
"assetIds": "yourAssetIds",
"measurepoints": "yourPointId1,yourPointId2",
"startTime": "2019-06-01T00:00:00%2B08:00",
"endTime": "2019-06-11T23:00:00%2B08:00",
"pageSize": 1000
}
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"data": [
{
"localtime": "2019-06-11 18:35:12",
"assetId": "yourAssetId",
"yourPointId1": 1.1236,
"timestamp": 1560249312446
},
{
"localtime": "2019-06-11 18:35:12",
"yourPointId2": 0,
"assetId": "yourAssetId",
"timestamp": 1560329369735
}
]
}
}
Sample 3 (POST Method)¶
Request Sample¶
Request with quality indicator:
url: https://{apigw-address}/tsdb-service/v2.0/raw
method: POST
Content-Type: multipart/form-data;charset=UTF-8
requestBody:
{
"orgId": "yourOrgId",
"assetIds": "yourAssetIds",
"measurepoints": "yourPointIds",
"startTime": "2020-04-20 00:00:00",
"endTime": "2020-04-21 00:00:00",
"accessKey": "accessKey of your APP",
"withQuality": true
}
Return Sample¶
{
"status": 0,
"requestId": null,
"msg": "success",
"submsg": null,
"data": {
"items": [
{
"assetId": "yourAssetId",
"timestamp": 1560249312446,
"yourPointId": 1.1236,
"localtime": "2019-06-11 18:35:12",
"quality": 0
},
{
"assetId": "yourAssetId",
"timestamp": 1560249332446,
"yourPointId": 1.1236,
"localtime": "2019-06-11 18:35:32",
"quality": 0
}
]
}
}
Java SDK Sample¶
import com.alibaba.fastjson.JSONObject;
import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;
import com.envision.apim.poseidon.request.PoseidonRequest;
public class PostMethod {
private static class Request extends PoseidonRequest {
public void setFormParam(String key, String value){
formParams().put(key, value);
}
public void setMethod(String method) {
this.method = method;
}
private String method;
@Override
public String baseUri() {
return "";
}
@Override
public String method() {
return method;
}
}
public static void main(String[] args){
//1. Click Application Registration in the left navigation of the EnOS Management Console.
//2. Click the application that needs to call the API, and click Basic Information. accessKey and secretKey correspond to AccessKey and SecretKey in EnOS.
String accessKey = "AccessKey of your APP";
String secretKey = "SecretKey of your APP";
//Create a request and pass the required parameters into the map that exists in the form. The key is the parameter name and the value is the parameter value.
Request request = new Request();
request.setFormParam("orgId", "yourOrgId");
request.setFormParam("modelId", "yourModelId");
request.setFormParam("assetIds","yourAssetIds");
request.setFormParam("measurepoints", "yourPointId1,yourPointId2");
request.setFormParam("startTime", "2019-06-01 00:00:00"); //For UTC time format: 2019-06-01T00:00:00+08:00
request.setFormParam("endTime", "2019-06-11 23:00:00"); //For UTC time format: 2019-06-11T23:00:00+08:00
request.setFormParam("pageSize", "10");
request.setMethod("POST");
try {
JSONObject response = Poseidon.config(PConfig.init().appKey(accessKey).appSecret(secretKey).debug())
.url("https://{apigw-address}/tsdb-service/v2.0/raw")
.getResponse(request, JSONObject.class);
System.out.println(response);
} catch (Exception e) {
e.printStackTrace();
}
}
}