C++ / Orchestrator / Robot Service - Get Robot Mappings
Back to Collection Items
#include <CkHttp.h>
#include <CkJsonObject.h>
#include <CkHttpResponse.h>
#include <CkStringBuilder.h>
#include <CkJsonArray.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;
CkJsonObject queryParams;
queryParams.UpdateString("licenseKey","86753095683");
queryParams.UpdateString("machineName","TESTLAPTOP");
http.SetRequestHeader("Content-Type","application/json");
// Adds the "Authorization: Bearer <access_token>" header.
http.put_AuthToken("<access_token>");
http.SetRequestHeader("X-UIPATH-OrganizationUnitId","{{folderId}}");
http.SetRequestHeader("X-UIPATH-TenantName","{{tenantName}}");
CkHttpResponse *resp = http.QuickRequestParams("GET","https://domain.com/api/RobotsService/GetRobotMappings",queryParams);
if (http.get_LastMethodSuccess() == false) {
std::cout << http.lastErrorText() << "\r\n";
return;
}
CkStringBuilder sbResponseBody;
resp->GetBodySb(sbResponseBody);
CkJsonArray jarrResp;
jarrResp.LoadSb(sbResponseBody);
jarrResp.put_EmitCompact(false);
std::cout << "Response Body:" << "\r\n";
std::cout << jarrResp.emit() << "\r\n";
int respStatusCode = resp->get_StatusCode();
std::cout << "Response Status Code = " << respStatusCode << "\r\n";
if (respStatusCode >= 400) {
std::cout << "Response Header:" << "\r\n";
std::cout << resp->header() << "\r\n";
std::cout << "Failed." << "\r\n";
delete resp;
return;
}
delete resp;
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// [
// {
// "robotKey": "1234567-abcd-890p-a67b-6d5b987dj",
// "user": "dean",
// "machineName": "TESTLAPTOP",
// "machineId": 20000,
// "robotName": "joe",
// "robotType": 3,
// "hasLicense": false,
// "tenantId": 1234,
// "organizationUnitId": 5678,
// "executionSettings": null,
// "id": 33445
// }
// ]
// Sample code for parsing the JSON response...
// Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
// Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.
CkJsonObject *json = 0;
const char *robotKey = 0;
const char *user = 0;
const char *machineName = 0;
int machineId;
const char *robotName = 0;
int robotType;
bool hasLicense;
int tenantId;
int organizationUnitId;
const char *executionSettings = 0;
int id;
int i = 0;
int count_i = jarrResp.get_Size();
while (i < count_i) {
json = jarrResp.ObjectAt(i);
robotKey = json->stringOf("robotKey");
user = json->stringOf("user");
machineName = json->stringOf("machineName");
machineId = json->IntOf("machineId");
robotName = json->stringOf("robotName");
robotType = json->IntOf("robotType");
hasLicense = json->BoolOf("hasLicense");
tenantId = json->IntOf("tenantId");
organizationUnitId = json->IntOf("organizationUnitId");
executionSettings = json->stringOf("executionSettings");
id = json->IntOf("id");
delete json;
i = i + 1;
}
}
Curl Command
curl -G -d "licenseKey=86753095683"
-d "machineName=TESTLAPTOP"
-H "Authorization: Bearer <access_token>"
-H "Content-Type: application/json"
-H "X-UIPATH-TenantName: {{tenantName}}"
-H "X-UIPATH-OrganizationUnitId: {{folderId}}"
https://domain.com/api/RobotsService/GetRobotMappings
Postman Collection Item JSON
{
"name": "Robot Service - Get Robot Mappings",
"request": {
"method": "GET",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"type": "text"
},
{
"key": "X-UIPATH-TenantName",
"value": "{{tenantName}}",
"type": "text"
},
{
"key": "X-UIPATH-OrganizationUnitId",
"value": "{{folderId}}",
"type": "text"
}
],
"url": {
"raw": "{{url}}/api/RobotsService/GetRobotMappings?licenseKey=86753095683&machineName=TESTLAPTOP",
"host": [
"{{url}}"
],
"path": [
"api",
"RobotsService",
"GetRobotMappings"
],
"query": [
{
"key": "licenseKey",
"value": "86753095683"
},
{
"key": "machineName",
"value": "TESTLAPTOP"
}
]
}
},
"response": [
{
"name": "Robot Service - Get Robot Service Mappings",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"url": {
"raw": "{{url}}/api/RobotsService/GetRobotMappings?licenseKey=86753095683&machineName=TESTLAPTOP",
"host": [
"{{url}}"
],
"path": [
"api",
"RobotsService",
"GetRobotMappings"
],
"query": [
{
"key": "licenseKey",
"value": "86753095683"
},
{
"key": "machineName",
"value": "TESTLAPTOP"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Date",
"value": "Mon, 28 Jan 2019 23:05:37 GMT"
},
{
"key": "Content-Type",
"value": "application/json; charset=utf-8"
},
{
"key": "Content-Length",
"value": "122"
},
{
"key": "Connection",
"value": "keep-alive"
},
{
"key": "Cache-Control",
"value": "no-store, must-revalidate, no-cache, max-age=0"
},
{
"key": "Content-Encoding",
"value": "gzip"
},
{
"key": "Vary",
"value": "Accept-Encoding"
},
{
"key": "Set-Cookie",
"value": "; SameSite=lax"
},
{
"key": "api-supported-versions",
"value": "7.0"
},
{
"key": "Request-Context",
"value": "appId=cid-v1:d00ce63d-0891-41e4-a17c-25b2c5382e49"
},
{
"key": "Access-Control-Expose-Headers",
"value": "Request-Context"
},
{
"key": "X-Content-Type-Options",
"value": "nosniff"
},
{
"key": "X-Frame-Options",
"value": "DENY"
},
{
"key": "Strict-Transport-Security",
"value": "max-age=31536000; includeSubDomains"
},
{
"key": "Expect-CT",
"value": "max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""
},
{
"key": "Server",
"value": "cloudflare"
},
{
"key": "CF-RAY",
"value": "4a071ad5fc4a247a-IAD"
}
],
"cookie": [
],
"body": "[\n {\n \"robotKey\": \"1234567-abcd-890p-a67b-6d5b987dj\",\n \"user\": \"dean\",\n \"machineName\": \"TESTLAPTOP\",\n \"machineId\": 20000,\n \"robotName\": \"joe\",\n \"robotType\": 3,\n \"hasLicense\": false,\n \"tenantId\": 1234,\n \"organizationUnitId\": 5678,\n \"executionSettings\": null,\n \"id\": 33445\n }\n]"
}
]
}