VB6 / Orchestrator / Assets - Get all + Per Robot Values
Back to Collection Items
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim http As New ChilkatHttp
Dim success As Long
Dim queryParams As New ChilkatJsonObject
success = queryParams.UpdateString("$expand","RobotValues")
http.SetRequestHeader "Content-Type","application/json"
' Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = "<access_token>"
http.SetRequestHeader "X-UIPATH-OrganizationUnitId","{{folderId}}"
http.SetRequestHeader "X-UIPATH-TenantName","{{tenantName}}"
Dim resp As ChilkatHttpResponse
Set resp = http.QuickRequestParams("GET","https://domain.com/odata/Assets",queryParams)
If (http.LastMethodSuccess = 0) Then
Debug.Print http.LastErrorText
Exit Sub
End If
Dim sbResponseBody As New ChilkatStringBuilder
success = resp.GetBodySb(sbResponseBody)
Dim jResp As New ChilkatJsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = 0
Debug.Print "Response Body:"
Debug.Print jResp.Emit()
Dim respStatusCode As Long
respStatusCode = resp.StatusCode
Debug.Print "Response Status Code = " & respStatusCode
If (respStatusCode >= 400) Then
Debug.Print "Response Header:"
Debug.Print resp.Header
Debug.Print "Failed."
Exit Sub
End If
' Sample JSON response:
' (Sample code for parsing the JSON response is shown below)
' {
' "@odata.context": "https://platform.uipath.com/deanmauro/dean/odata/$metadata#Assets",
' "@odata.count": 2,
' "value": [
' {
' "Name": "Asset 2",
' "CanBeDeleted": true,
' "ValueScope": "Global",
' "ValueType": "Text",
' "Value": "I would not, Cassius, yet I love him well.",
' "StringValue": "I would not, Cassius, yet I love him well.",
' "BoolValue": false,
' "IntValue": 0,
' "CredentialUsername": "",
' "CredentialPassword": "",
' "ExternalName": "",
' "CredentialStoreId": null,
' "HasDefaultValue": true,
' "Description": null,
' "Id": 8588,
' "KeyValueList": [
' ],
' "RobotValues": [
' ]
' },
' {
' "Name": "blah",
' "CanBeDeleted": true,
' "ValueScope": "PerRobot",
' "ValueType": "Integer",
' "Value": null,
' "StringValue": "",
' "BoolValue": false,
' "IntValue": 0,
' "CredentialUsername": "",
' "CredentialPassword": "",
' "ExternalName": "",
' "CredentialStoreId": null,
' "HasDefaultValue": false,
' "Description": null,
' "Id": 23656,
' "KeyValueList": [
' ],
' "RobotValues": [
' {
' "RobotId": 33530,
' "RobotName": "joe",
' "KeyTrail": "***4ef589a",
' "ValueType": "Integer",
' "StringValue": "",
' "BoolValue": false,
' "IntValue": 1,
' "Value": "1",
' "CredentialUsername": "",
' "CredentialPassword": "",
' "ExternalName": "",
' "CredentialStoreId": null,
' "Id": 199104,
' "KeyValueList": [
' ]
' },
' {
' "RobotId": 42307,
' "RobotName": "jose",
' "KeyTrail": "***88bvb04",
' "ValueType": "Integer",
' "StringValue": "",
' "BoolValue": false,
' "IntValue": 2,
' "Value": "2",
' "CredentialUsername": "",
' "CredentialPassword": "",
' "ExternalName": "",
' "CredentialStoreId": null,
' "Id": 199105,
' "KeyValueList": [
' ]
' }
' ]
' }
' ]
' }
' Sample code for parsing the JSON response...
' Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
Dim Name As String
Dim CanBeDeleted As Long
Dim ValueScope As String
Dim ValueType As String
Dim Value As String
Dim StringValue As String
Dim BoolValue As Long
Dim IntValue As Long
Dim CredentialUsername As String
Dim CredentialPassword As String
Dim ExternalName As String
Dim CredentialStoreId As String
Dim HasDefaultValue As Long
Dim Description As String
Dim Id As Long
Dim j As Long
Dim count_j As Long
Dim RobotId As Long
Dim RobotName As String
Dim KeyTrail As String
Dim k As Long
Dim count_k As Long
Dim odata_context As String
odata_context = jResp.StringOf("""@odata.context""")
Dim odata_count As Long
odata_count = jResp.IntOf("""@odata.count""")
Dim i As Long
i = 0
Dim count_i As Long
count_i = jResp.SizeOfArray("value")
Do While i < count_i
jResp.I = i
Name = jResp.StringOf("value[i].Name")
CanBeDeleted = jResp.BoolOf("value[i].CanBeDeleted")
ValueScope = jResp.StringOf("value[i].ValueScope")
ValueType = jResp.StringOf("value[i].ValueType")
Value = jResp.StringOf("value[i].Value")
StringValue = jResp.StringOf("value[i].StringValue")
BoolValue = jResp.BoolOf("value[i].BoolValue")
IntValue = jResp.IntOf("value[i].IntValue")
CredentialUsername = jResp.StringOf("value[i].CredentialUsername")
CredentialPassword = jResp.StringOf("value[i].CredentialPassword")
ExternalName = jResp.StringOf("value[i].ExternalName")
CredentialStoreId = jResp.StringOf("value[i].CredentialStoreId")
HasDefaultValue = jResp.BoolOf("value[i].HasDefaultValue")
Description = jResp.StringOf("value[i].Description")
Id = jResp.IntOf("value[i].Id")
j = 0
count_j = jResp.SizeOfArray("value[i].KeyValueList")
Do While j < count_j
jResp.J = j
j = j + 1
Loop
j = 0
count_j = jResp.SizeOfArray("value[i].RobotValues")
Do While j < count_j
jResp.J = j
RobotId = jResp.IntOf("value[i].RobotValues[j].RobotId")
RobotName = jResp.StringOf("value[i].RobotValues[j].RobotName")
KeyTrail = jResp.StringOf("value[i].RobotValues[j].KeyTrail")
ValueType = jResp.StringOf("value[i].RobotValues[j].ValueType")
StringValue = jResp.StringOf("value[i].RobotValues[j].StringValue")
BoolValue = jResp.BoolOf("value[i].RobotValues[j].BoolValue")
IntValue = jResp.IntOf("value[i].RobotValues[j].IntValue")
Value = jResp.StringOf("value[i].RobotValues[j].Value")
CredentialUsername = jResp.StringOf("value[i].RobotValues[j].CredentialUsername")
CredentialPassword = jResp.StringOf("value[i].RobotValues[j].CredentialPassword")
ExternalName = jResp.StringOf("value[i].RobotValues[j].ExternalName")
CredentialStoreId = jResp.StringOf("value[i].RobotValues[j].CredentialStoreId")
Id = jResp.IntOf("value[i].RobotValues[j].Id")
k = 0
count_k = jResp.SizeOfArray("value[i].RobotValues[j].KeyValueList")
Do While k < count_k
jResp.K = k
k = k + 1
Loop
j = j + 1
Loop
i = i + 1
Loop
Curl Command
curl -G -d "$expand=RobotValues"
-H "Authorization: Bearer <access_token>"
-H "Content-Type: application/json"
-H "X-UIPATH-TenantName: {{tenantName}}"
-H "X-UIPATH-OrganizationUnitId: {{folderId}}"
https://domain.com/odata/Assets
Postman Collection Item JSON
{
"name": "Assets - Get all + Per Robot Values",
"event": [
{
"listen": "test",
"script": {
"exec": [
""
],
"type": "text/javascript"
}
}
],
"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}}/odata/Assets?$expand=RobotValues",
"host": [
"{{url}}"
],
"path": [
"odata",
"Assets"
],
"query": [
{
"key": "$expand",
"value": "RobotValues"
}
]
},
"description": "Get all Assets and display Per Robot values in the response. For global Assets, this call provides no extra features."
},
"response": [
{
"name": "Assets - Get all (Including Per Robot Values)",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{url}}/odata/Assets?$expand=RobotValues",
"host": [
"{{url}}"
],
"path": [
"odata",
"Assets"
],
"query": [
{
"key": "$expand",
"value": "RobotValues"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "CF-RAY",
"value": "443012f809dd91fa-EWR",
"name": "CF-RAY",
"description": "Custom header"
},
{
"key": "Cache-Control",
"value": "no-store, must-revalidate, no-cache, max-age=0",
"name": "Cache-Control",
"description": "Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"
},
{
"key": "Connection",
"value": "keep-alive",
"name": "Connection",
"description": "Options that are desired for the connection"
},
{
"key": "Content-Encoding",
"value": "gzip",
"name": "Content-Encoding",
"description": "The type of encoding used on the data."
},
{
"key": "Content-Length",
"value": "588",
"name": "Content-Length",
"description": "The length of the response body in octets (8-bit bytes)"
},
{
"key": "Content-Type",
"value": "application/json; odata.metadata=minimal",
"name": "Content-Type",
"description": "The mime type of this content"
},
{
"key": "Date",
"value": "Tue, 31 Jul 2018 12:30:03 GMT",
"name": "Date",
"description": "The date and time that the message was sent"
},
{
"key": "Expect-CT",
"value": "max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\"",
"name": "Expect-CT",
"description": "Custom header"
},
{
"key": "OData-Version",
"value": "4.0",
"name": "OData-Version",
"description": "Custom header"
},
{
"key": "Server",
"value": "cloudflare",
"name": "Server",
"description": "A name for the server"
},
{
"key": "Set-Cookie",
"value": "; SameSite=lax",
"name": "Set-Cookie",
"description": "an HTTP cookie"
},
{
"key": "Strict-Transport-Security",
"value": "max-age=31536000; includeSubDomains",
"name": "Strict-Transport-Security",
"description": "A HSTS Policy informing the HTTP client how long to cache the HTTPS only policy and whether this applies to subdomains."
},
{
"key": "Vary",
"value": "Accept-Encoding",
"name": "Vary",
"description": "Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."
},
{
"key": "X-Content-Type-Options",
"value": "nosniff",
"name": "X-Content-Type-Options",
"description": "The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"
},
{
"key": "X-Frame-Options",
"value": "DENY",
"name": "X-Frame-Options",
"description": "Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"
},
{
"key": "api-supported-versions",
"value": "5.0",
"name": "api-supported-versions",
"description": "Custom header"
}
],
"cookie": [
{
"expires": "Wed Dec 19 2018 11:35:02 GMT-0600 (Central Standard Time)",
"httpOnly": true,
"domain": "uipath.com",
"path": "/",
"secure": true,
"value": "d3b89a558feb68050f4b847c971f595771513704902",
"key": "__cfduid"
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/QueueProcessingRecords",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/api/RobotsService",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/Processes",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/Settings",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/Robots",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/Queues",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/Assets",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/api/Account",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/Users",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata/Jobs",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/api/Logs",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/Account",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/odata",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/api",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/",
"secure": false,
"value": "",
"key": ""
},
{
"expires": "Mon Jan 18 2038 21:14:07 GMT-0600 (Central Standard Time)",
"httpOnly": false,
"domain": "platform.uipath.com",
"path": "/",
"secure": false,
"value": "GC-osp2U-YDhoXTOqXnUp3DaN1cN_siVCaNVue_jljOcqJLYHQrRk5msz52KHL8XauydRYx_3JyjLtLDpItypCPdEL20jFnxlF2g-f86Qk41",
"key": "__RequestVerificationToken"
}
],
"body": "{\r\n \"@odata.context\": \"https://platform.uipath.com/deanmauro/dean/odata/$metadata#Assets\",\r\n \"@odata.count\": 2,\r\n \"value\": [\r\n {\r\n \"Name\": \"Asset 2\",\r\n \"CanBeDeleted\": true,\r\n \"ValueScope\": \"Global\",\r\n \"ValueType\": \"Text\",\r\n \"Value\": \"I would not, Cassius, yet I love him well.\",\r\n \"StringValue\": \"I would not, Cassius, yet I love him well.\",\r\n \"BoolValue\": false,\r\n \"IntValue\": 0,\r\n \"CredentialUsername\": \"\",\r\n \"CredentialPassword\": \"\",\r\n \"ExternalName\": \"\",\r\n \"CredentialStoreId\": null,\r\n \"HasDefaultValue\": true,\r\n \"Description\": null,\r\n \"Id\": 8588,\r\n \"KeyValueList\": [],\r\n \"RobotValues\": []\r\n },\r\n {\r\n \"Name\": \"blah\",\r\n \"CanBeDeleted\": true,\r\n \"ValueScope\": \"PerRobot\",\r\n \"ValueType\": \"Integer\",\r\n \"Value\": null,\r\n \"StringValue\": \"\",\r\n \"BoolValue\": false,\r\n \"IntValue\": 0,\r\n \"CredentialUsername\": \"\",\r\n \"CredentialPassword\": \"\",\r\n \"ExternalName\": \"\",\r\n \"CredentialStoreId\": null,\r\n \"HasDefaultValue\": false,\r\n \"Description\": null,\r\n \"Id\": 23656,\r\n \"KeyValueList\": [],\r\n \"RobotValues\": [\r\n {\r\n \"RobotId\": 33530,\r\n \"RobotName\": \"joe\",\r\n \"KeyTrail\": \"***4ef589a\",\r\n \"ValueType\": \"Integer\",\r\n \"StringValue\": \"\",\r\n \"BoolValue\": false,\r\n \"IntValue\": 1,\r\n \"Value\": \"1\",\r\n \"CredentialUsername\": \"\",\r\n \"CredentialPassword\": \"\",\r\n \"ExternalName\": \"\",\r\n \"CredentialStoreId\": null,\r\n \"Id\": 199104,\r\n \"KeyValueList\": []\r\n },\r\n {\r\n \"RobotId\": 42307,\r\n \"RobotName\": \"jose\",\r\n \"KeyTrail\": \"***88bvb04\",\r\n \"ValueType\": \"Integer\",\r\n \"StringValue\": \"\",\r\n \"BoolValue\": false,\r\n \"IntValue\": 2,\r\n \"Value\": \"2\",\r\n \"CredentialUsername\": \"\",\r\n \"CredentialPassword\": \"\",\r\n \"ExternalName\": \"\",\r\n \"CredentialStoreId\": null,\r\n \"Id\": 199105,\r\n \"KeyValueList\": []\r\n }\r\n ]\r\n }\r\n ]\r\n}"
}
]
}