unicodeC / Orchestrator / Robot Service - Get Robot Mappings
Back to Collection Items
#include <C_CkHttpW.h>
#include <C_CkJsonObjectW.h>
#include <C_CkHttpResponseW.h>
#include <C_CkStringBuilderW.h>
#include <C_CkJsonArrayW.h>
void ChilkatSample(void)
{
HCkHttpW http;
BOOL success;
HCkJsonObjectW queryParams;
HCkHttpResponseW resp;
HCkStringBuilderW sbResponseBody;
HCkJsonArrayW jarrResp;
int respStatusCode;
HCkJsonObjectW json;
const wchar_t *robotKey;
const wchar_t *user;
const wchar_t *machineName;
int machineId;
const wchar_t *robotName;
int robotType;
BOOL hasLicense;
int tenantId;
int organizationUnitId;
const wchar_t *executionSettings;
int id;
int i;
int count_i;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttpW_Create();
queryParams = CkJsonObjectW_Create();
CkJsonObjectW_UpdateString(queryParams,L"licenseKey",L"86753095683");
CkJsonObjectW_UpdateString(queryParams,L"machineName",L"TESTLAPTOP");
CkHttpW_SetRequestHeader(http,L"Content-Type",L"application/json");
// Adds the "Authorization: Bearer <access_token>" header.
CkHttpW_putAuthToken(http,L"<access_token>");
CkHttpW_SetRequestHeader(http,L"X-UIPATH-OrganizationUnitId",L"{{folderId}}");
CkHttpW_SetRequestHeader(http,L"X-UIPATH-TenantName",L"{{tenantName}}");
resp = CkHttpW_QuickRequestParams(http,L"GET",L"https://domain.com/api/RobotsService/GetRobotMappings",queryParams);
if (CkHttpW_getLastMethodSuccess(http) == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
CkHttpW_Dispose(http);
CkJsonObjectW_Dispose(queryParams);
return;
}
sbResponseBody = CkStringBuilderW_Create();
CkHttpResponseW_GetBodySb(resp,sbResponseBody);
jarrResp = CkJsonArrayW_Create();
CkJsonArrayW_LoadSb(jarrResp,sbResponseBody);
CkJsonArrayW_putEmitCompact(jarrResp,FALSE);
wprintf(L"Response Body:\n");
wprintf(L"%s\n",CkJsonArrayW_emit(jarrResp));
respStatusCode = CkHttpResponseW_getStatusCode(resp);
wprintf(L"Response Status Code = %d\n",respStatusCode);
if (respStatusCode >= 400) {
wprintf(L"Response Header:\n");
wprintf(L"%s\n",CkHttpResponseW_header(resp));
wprintf(L"Failed.\n");
CkHttpResponseW_Dispose(resp);
CkHttpW_Dispose(http);
CkJsonObjectW_Dispose(queryParams);
CkStringBuilderW_Dispose(sbResponseBody);
CkJsonArrayW_Dispose(jarrResp);
return;
}
CkHttpResponseW_Dispose(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.
i = 0;
count_i = CkJsonArrayW_getSize(jarrResp);
while (i < count_i) {
json = CkJsonArrayW_ObjectAt(jarrResp,i);
robotKey = CkJsonObjectW_stringOf(json,L"robotKey");
user = CkJsonObjectW_stringOf(json,L"user");
machineName = CkJsonObjectW_stringOf(json,L"machineName");
machineId = CkJsonObjectW_IntOf(json,L"machineId");
robotName = CkJsonObjectW_stringOf(json,L"robotName");
robotType = CkJsonObjectW_IntOf(json,L"robotType");
hasLicense = CkJsonObjectW_BoolOf(json,L"hasLicense");
tenantId = CkJsonObjectW_IntOf(json,L"tenantId");
organizationUnitId = CkJsonObjectW_IntOf(json,L"organizationUnitId");
executionSettings = CkJsonObjectW_stringOf(json,L"executionSettings");
id = CkJsonObjectW_IntOf(json,L"id");
CkJsonObjectW_Dispose(json);
i = i + 1;
}
CkHttpW_Dispose(http);
CkJsonObjectW_Dispose(queryParams);
CkStringBuilderW_Dispose(sbResponseBody);
CkJsonArrayW_Dispose(jarrResp);
}
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]"
}
]
}