C++ / Cognite API v1 / Convert engineering diagrams to SVG format.
Back to Collection Items
#include <CkHttp.h>
#include <CkJsonObject.h>
#include <CkHttpResponse.h>
void ChilkatSample(void)
{
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkHttp http;
bool success;
// Use this online tool to generate code from sample JSON: Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "items": [
// {
// "annotations": [
// {
// "text": "ullamco sit do id",
// "region": {
// "shape": "rectangle",
// "vertices": [
// {
// "x": 0.3313160824131578,
// "y": 0.06017099978470597
// },
// {
// "x": 0.4553815976895428,
// "y": 0.144886445412165
// }
// ],
// "page": 37
// },
// "confidence": 0.13333561382131243,
// "entities": [
// {},
// {}
// ]
// },
// {
// "text": "nulla incididunt eu elit",
// "region": {
// "shape": "rectangle",
// "vertices": [
// {
// "x": 0.7156592481743367,
// "y": 0.574575250659763
// },
// {
// "x": 0.3406638759937599,
// "y": 0.9382533039282044
// }
// ],
// "page": 27
// },
// "confidence": 0.4455875462977701,
// "entities": [
// {},
// {}
// ]
// }
// ],
// "fileId": -57827040,
// "fileExternalId": "ea aliquip ipsum"
// },
// {
// "annotations": [
// {
// "text": "aliquip exercitation",
// "region": {
// "shape": "rectangle",
// "vertices": [
// {
// "x": 0.2442804051829428,
// "y": 0.4917796879609626
// },
// {
// "x": 0.7404857062791013,
// "y": 0.8271623596435489
// }
// ],
// "page": 4
// },
// "confidence": 0.4320602168658312,
// "entities": [
// {},
// {}
// ]
// },
// {
// "text": "aliqua ea ut voluptate",
// "region": {
// "shape": "rectangle",
// "vertices": [
// {
// "x": 0.25343046275755277,
// "y": 0.8190223707736768
// },
// {
// "x": 0.9117316520574312,
// "y": 0.865071569037893
// }
// ],
// "page": 38
// },
// "confidence": 0.4476938516764881,
// "entities": [
// {},
// {}
// ]
// }
// ],
// "fileId": 98464957,
// "fileExternalId": 20163608
// }
// ],
// "grayscale": true
// }
CkJsonObject json;
json.UpdateString("items[0].annotations[0].text","ullamco sit do id");
json.UpdateString("items[0].annotations[0].region.shape","rectangle");
json.UpdateNumber("items[0].annotations[0].region.vertices[0].x","0.3313160824131578");
json.UpdateNumber("items[0].annotations[0].region.vertices[0].y","0.06017099978470597");
json.UpdateNumber("items[0].annotations[0].region.vertices[1].x","0.4553815976895428");
json.UpdateNumber("items[0].annotations[0].region.vertices[1].y","0.144886445412165");
json.UpdateInt("items[0].annotations[0].region.page",37);
json.UpdateNumber("items[0].annotations[0].confidence","0.13333561382131243");
json.UpdateString("items[0].annotations[1].text","nulla incididunt eu elit");
json.UpdateString("items[0].annotations[1].region.shape","rectangle");
json.UpdateNumber("items[0].annotations[1].region.vertices[0].x","0.7156592481743367");
json.UpdateNumber("items[0].annotations[1].region.vertices[0].y","0.574575250659763");
json.UpdateNumber("items[0].annotations[1].region.vertices[1].x","0.3406638759937599");
json.UpdateNumber("items[0].annotations[1].region.vertices[1].y","0.9382533039282044");
json.UpdateInt("items[0].annotations[1].region.page",27);
json.UpdateNumber("items[0].annotations[1].confidence","0.4455875462977701");
json.UpdateInt("items[0].fileId",-57827040);
json.UpdateString("items[0].fileExternalId","ea aliquip ipsum");
json.UpdateString("items[1].annotations[0].text","aliquip exercitation");
json.UpdateString("items[1].annotations[0].region.shape","rectangle");
json.UpdateNumber("items[1].annotations[0].region.vertices[0].x","0.2442804051829428");
json.UpdateNumber("items[1].annotations[0].region.vertices[0].y","0.4917796879609626");
json.UpdateNumber("items[1].annotations[0].region.vertices[1].x","0.7404857062791013");
json.UpdateNumber("items[1].annotations[0].region.vertices[1].y","0.8271623596435489");
json.UpdateInt("items[1].annotations[0].region.page",4);
json.UpdateNumber("items[1].annotations[0].confidence","0.4320602168658312");
json.UpdateString("items[1].annotations[1].text","aliqua ea ut voluptate");
json.UpdateString("items[1].annotations[1].region.shape","rectangle");
json.UpdateNumber("items[1].annotations[1].region.vertices[0].x","0.25343046275755277");
json.UpdateNumber("items[1].annotations[1].region.vertices[0].y","0.8190223707736768");
json.UpdateNumber("items[1].annotations[1].region.vertices[1].x","0.9117316520574312");
json.UpdateNumber("items[1].annotations[1].region.vertices[1].y","0.865071569037893");
json.UpdateInt("items[1].annotations[1].region.page",38);
json.UpdateNumber("items[1].annotations[1].confidence","0.4476938516764881");
json.UpdateInt("items[1].fileId",98464957);
json.UpdateInt("items[1].fileExternalId",20163608);
json.UpdateBool("grayscale",true);
http.SetRequestHeader("content-type","application/json");
http.SetRequestHeader("api-key","{{api-key}}");
CkHttpResponse *resp = http.PostJson3("https://domain.com/api/v1/projects/{{project}}/context/diagram/convert","application/json",json);
if (http.get_LastMethodSuccess() == false) {
std::cout << http.lastErrorText() << "\r\n";
return;
}
std::cout << resp->get_StatusCode() << "\r\n";
std::cout << resp->bodyStr() << "\r\n";
delete resp;
}
Curl Command
curl -X POST
-H "api-key: {{api-key}}"
-H "content-type: application/json"
-d '{
"items": [
{
"annotations": [
{
"text": "ullamco sit do id",
"region": {
"shape": "rectangle",
"vertices": [
{
"x": 0.3313160824131578,
"y": 0.06017099978470597
},
{
"x": 0.4553815976895428,
"y": 0.144886445412165
}
],
"page": 37
},
"confidence": 0.13333561382131243,
"entities": [
{},
{}
]
},
{
"text": "nulla incididunt eu elit",
"region": {
"shape": "rectangle",
"vertices": [
{
"x": 0.7156592481743367,
"y": 0.574575250659763
},
{
"x": 0.3406638759937599,
"y": 0.9382533039282044
}
],
"page": 27
},
"confidence": 0.4455875462977701,
"entities": [
{},
{}
]
}
],
"fileId": -57827040,
"fileExternalId": "ea aliquip ipsum"
},
{
"annotations": [
{
"text": "aliquip exercitation",
"region": {
"shape": "rectangle",
"vertices": [
{
"x": 0.2442804051829428,
"y": 0.4917796879609626
},
{
"x": 0.7404857062791013,
"y": 0.8271623596435489
}
],
"page": 4
},
"confidence": 0.4320602168658312,
"entities": [
{},
{}
]
},
{
"text": "aliqua ea ut voluptate",
"region": {
"shape": "rectangle",
"vertices": [
{
"x": 0.25343046275755277,
"y": 0.8190223707736768
},
{
"x": 0.9117316520574312,
"y": 0.865071569037893
}
],
"page": 38
},
"confidence": 0.4476938516764881,
"entities": [
{},
{}
]
}
],
"fileId": 98464957,
"fileExternalId": 20163608
}
],
"grayscale": true
}'
https://domain.com/api/v1/projects/{{project}}/context/diagram/convert
Postman Collection Item JSON
{
"id": "diagramConvert",
"name": "Convert engineering diagrams to SVG format.",
"request": {
"url": {
"host": "{{baseUrl}}",
"path": [
"api",
"v1",
"projects",
"{{project}}",
"context",
"diagram",
"convert"
],
"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": "Create interactive engineering diagrams in SVG format with highlighted annotations.",
"body": {
"mode": "raw",
"raw": "{\n \"items\": [\n {\n \"annotations\": [\n {\n \"text\": \"ullamco sit do id\",\n \"region\": {\n \"shape\": \"rectangle\",\n \"vertices\": [\n {\n \"x\": 0.3313160824131578,\n \"y\": 0.06017099978470597\n },\n {\n \"x\": 0.4553815976895428,\n \"y\": 0.144886445412165\n }\n ],\n \"page\": 37\n },\n \"confidence\": 0.13333561382131243,\n \"entities\": [\n {},\n {}\n ]\n },\n {\n \"text\": \"nulla incididunt eu elit\",\n \"region\": {\n \"shape\": \"rectangle\",\n \"vertices\": [\n {\n \"x\": 0.7156592481743367,\n \"y\": 0.574575250659763\n },\n {\n \"x\": 0.3406638759937599,\n \"y\": 0.9382533039282044\n }\n ],\n \"page\": 27\n },\n \"confidence\": 0.4455875462977701,\n \"entities\": [\n {},\n {}\n ]\n }\n ],\n \"fileId\": -57827040,\n \"fileExternalId\": \"ea aliquip ipsum\"\n },\n {\n \"annotations\": [\n {\n \"text\": \"aliquip exercitation\",\n \"region\": {\n \"shape\": \"rectangle\",\n \"vertices\": [\n {\n \"x\": 0.2442804051829428,\n \"y\": 0.4917796879609626\n },\n {\n \"x\": 0.7404857062791013,\n \"y\": 0.8271623596435489\n }\n ],\n \"page\": 4\n },\n \"confidence\": 0.4320602168658312,\n \"entities\": [\n {},\n {}\n ]\n },\n {\n \"text\": \"aliqua ea ut voluptate\",\n \"region\": {\n \"shape\": \"rectangle\",\n \"vertices\": [\n {\n \"x\": 0.25343046275755277,\n \"y\": 0.8190223707736768\n },\n {\n \"x\": 0.9117316520574312,\n \"y\": 0.865071569037893\n }\n ],\n \"page\": 38\n },\n \"confidence\": 0.4476938516764881,\n \"entities\": [\n {},\n {}\n ]\n }\n ],\n \"fileId\": 98464957,\n \"fileExternalId\": 20163608\n }\n ],\n \"grayscale\": true\n}"
}
}
}