PureBasic / Cognite API v1 / Aggregate time series
Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
; Use this online tool to generate code from sample JSON: Generate Code to Create JSON
; The following JSON is sent in the request body.
; {
; "filter": {
; "name": "et exercitation s",
; "unit": "pariatur esse qui",
; "isString": true,
; "isStep": false,
; "metadata": {},
; "assetIds": [
; 2274246036570026,
; 8922483798410046
; ],
; "assetExternalIds": [
; "proident Ut consequat in",
; "elit incididunt aliqua"
; ],
; "rootAssetIds": [
; 7714215516056826,
; 4275780546438472
; ],
; "assetSubtreeIds": [
; {
; "id": 7555548287718054
; },
; {
; "externalId": "re"
; }
; ],
; "dataSetIds": [
; {
; "id": 5946532482497628
; },
; {
; "externalId": "exercitation nisi elit"
; }
; ],
; "externalIdPrefix": "aute Ut nostrud commodo in",
; "createdTime": {
; "max": 16041500,
; "min": 71538919
; },
; "lastUpdatedTime": {
; "max": 2438620,
; "min": 18087967
; }
; }
; }
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckUpdateString(json,"filter.name","et exercitation s")
CkJsonObject::ckUpdateString(json,"filter.unit","pariatur esse qui")
CkJsonObject::ckUpdateBool(json,"filter.isString",1)
CkJsonObject::ckUpdateBool(json,"filter.isStep",0)
CkJsonObject::ckUpdateNewObject(json,"filter.metadata")
CkJsonObject::ckUpdateInt(json,"filter.assetIds[0]",2274246036570026)
CkJsonObject::ckUpdateInt(json,"filter.assetIds[1]",8922483798410046)
CkJsonObject::ckUpdateString(json,"filter.assetExternalIds[0]","proident Ut consequat in")
CkJsonObject::ckUpdateString(json,"filter.assetExternalIds[1]","elit incididunt aliqua")
CkJsonObject::ckUpdateInt(json,"filter.rootAssetIds[0]",7714215516056826)
CkJsonObject::ckUpdateInt(json,"filter.rootAssetIds[1]",4275780546438472)
CkJsonObject::ckUpdateInt(json,"filter.assetSubtreeIds[0].id",123)
CkJsonObject::ckUpdateString(json,"filter.assetSubtreeIds[1].externalId","re")
CkJsonObject::ckUpdateInt(json,"filter.dataSetIds[0].id",123)
CkJsonObject::ckUpdateString(json,"filter.dataSetIds[1].externalId","exercitation nisi elit")
CkJsonObject::ckUpdateString(json,"filter.externalIdPrefix","aute Ut nostrud commodo in")
CkJsonObject::ckUpdateInt(json,"filter.createdTime.max",16041500)
CkJsonObject::ckUpdateInt(json,"filter.createdTime.min",71538919)
CkJsonObject::ckUpdateInt(json,"filter.lastUpdatedTime.max",2438620)
CkJsonObject::ckUpdateInt(json,"filter.lastUpdatedTime.min",18087967)
CkHttp::ckSetRequestHeader(http,"content-type","application/json")
CkHttp::ckSetRequestHeader(http,"api-key","{{api-key}}")
resp.i = CkHttp::ckPostJson3(http,"https://domain.com/api/v1/projects/{{project}}/timeseries/aggregate","application/json",json)
If CkHttp::ckLastMethodSuccess(http) = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndIf
Debug Str(CkHttpResponse::ckStatusCode(resp))
Debug CkHttpResponse::ckBodyStr(resp)
CkHttpResponse::ckDispose(resp)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndProcedure
Curl Command
curl -X POST
-H "api-key: {{api-key}}"
-H "content-type: application/json"
-d '{
"filter": {
"name": "et exercitation s",
"unit": "pariatur esse qui",
"isString": true,
"isStep": false,
"metadata": {},
"assetIds": [
2274246036570026,
8922483798410046
],
"assetExternalIds": [
"proident Ut consequat in",
"elit incididunt aliqua"
],
"rootAssetIds": [
7714215516056826,
4275780546438472
],
"assetSubtreeIds": [
{
"id": 7555548287718054
},
{
"externalId": "re"
}
],
"dataSetIds": [
{
"id": 5946532482497628
},
{
"externalId": "exercitation nisi elit"
}
],
"externalIdPrefix": "aute Ut nostrud commodo in",
"createdTime": {
"max": 16041500,
"min": 71538919
},
"lastUpdatedTime": {
"max": 2438620,
"min": 18087967
}
}
}'
https://domain.com/api/v1/projects/{{project}}/timeseries/aggregate
Postman Collection Item JSON
{
"id": "aggregateTimeSeries",
"name": "Aggregate time series",
"request": {
"url": {
"host": "{{baseUrl}}",
"path": [
"api",
"v1",
"projects",
"{{project}}",
"timeseries",
"aggregate"
],
"query": [
],
"variable": [
]
},
"method": "POST",
"header": [
{
"key": "api-key",
"value": "{{api-key}}",
"description": "An admin can create API keys in the Cognite console."
},
{
"key": "content-type",
"value": "application/json"
}
],
"description": "Count the number of time series that match the given filter",
"body": {
"mode": "raw",
"raw": "{\n \"filter\": {\n \"name\": \"et exercitation s\",\n \"unit\": \"pariatur esse qui\",\n \"isString\": true,\n \"isStep\": false,\n \"metadata\": {},\n \"assetIds\": [\n 2274246036570026,\n 8922483798410046\n ],\n \"assetExternalIds\": [\n \"proident Ut consequat in\",\n \"elit incididunt aliqua\"\n ],\n \"rootAssetIds\": [\n 7714215516056826,\n 4275780546438472\n ],\n \"assetSubtreeIds\": [\n {\n \"id\": 7555548287718054\n },\n {\n \"externalId\": \"re\"\n }\n ],\n \"dataSetIds\": [\n {\n \"id\": 5946532482497628\n },\n {\n \"externalId\": \"exercitation nisi elit\"\n }\n ],\n \"externalIdPrefix\": \"aute Ut nostrud commodo in\",\n \"createdTime\": {\n \"max\": 16041500,\n \"min\": 71538919\n },\n \"lastUpdatedTime\": {\n \"max\": 2438620,\n \"min\": 18087967\n }\n }\n}"
}
}
}