- Getting Started
- Swagger Definition
- Orchestrator APIs
- Assets Requests
- Calendars Requests
- Environments Requests
- Folders Requests
- Generic Tasks Requests
- Jobs Requests
- Libraries Requests
- License Requests
- Packages Requests
- Permissions Requests
- Processes Requests
- Robots Requests
- Roles Requests
- Schedules Requests
- Settings Requests
- Tasks Requests
- Task Catalogs Requests
- Task Forms Requests
- Tenants Requests
- Transactions Requests
- Users Requests
- Webhooks Requests
Orchestrator API Guide
Robots Requests
LicenseKey
parameter, you have to make a GET request to the /odata/Robots(Id)
endpoint.
The following example enables you to view the current status of the Robot with the 749 Id.
GET
/odata/Sessions?$top=10&$filter=Robot/Id eq 749&$select=State
Request headers
Key |
Value |
---|---|
Authorization |
Bearer |
Response code
200 OK
Response body
{
"@odata.context": "/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
{
"@odata.context": "/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
The following example enables you to view the current status of the Robot with the DocBot Name.
GET
/odata/Sessions?$top=10&$filter=Robot/Name eq 'DocBot'&$select=State
Request headers
Key |
Value |
---|---|
Authorization |
Bearer |
Response code
200 OK
Response body
{
"@odata.context": "/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
{
"@odata.context": "/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
The example below requests the first 10 Robots that have the Available status and sent a heartbeat in the last 2 minutes. Only the relevant robot information is displayed. You can check the heartbeat by using the Reporting Time parameter and subtract 2 minutes from the current time. As you might know, if a Robot has not sent a heartbeat in the last 2 minutes, it is flagged as unresponsive.
GET
/odata/Sessions?$top=10&$filter=State eq 'Available' and ReportingTime gt 2018-03-05T03:48:04.147Z&$select=Robot&$expand=Robot
{
"@odata.context": "/odata/$metadata#Sessions(Robot)",
"@odata.count": 2,
"value": [
{
"Robot": {
"LicenseKey": null,
"MachineName": "MBOBOC",
"Name": "DocBot",
"Username": "UIPATH\\MADALINA.BOBOC",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "doc_env,WR_env,Group1",
"Id": 749,
"ExecutionSettings": null
}
},
{
"Robot": {
"LicenseKey": null,
"MachineName": "midragomir",
"Name": "mr-Rob",
"Username": "uipath\\mircea.dragomir",
"Description": "Alerts",
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "",
"Id": 902,
"ExecutionSettings": null
}
}
]
}
{
"@odata.context": "/odata/$metadata#Sessions(Robot)",
"@odata.count": 2,
"value": [
{
"Robot": {
"LicenseKey": null,
"MachineName": "MBOBOC",
"Name": "DocBot",
"Username": "UIPATH\\MADALINA.BOBOC",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "doc_env,WR_env,Group1",
"Id": 749,
"ExecutionSettings": null
}
},
{
"Robot": {
"LicenseKey": null,
"MachineName": "midragomir",
"Name": "mr-Rob",
"Username": "uipath\\mircea.dragomir",
"Description": "Alerts",
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "",
"Id": 902,
"ExecutionSettings": null
}
}
]
}
The following example looks for the top 10 Robots that have the Disconnected status and expands Robot information.
GET
/odata/Sessions?$top=10&$filter=State eq 'Disconnected'&$expand=Robot
{
"@odata.context": "/odata/$metadata#Sessions",
"@odata.count": 2,
"value": [
{
"State": "Disconnected",
"ReportingTime": "2018-01-15T18:47:07.93Z",
"Info": null,
"IsUnresponsive": false,
"Id": 718,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Type": "Unattended",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
}
},
{
"State": "Disconnected",
"ReportingTime": "2018-01-18T18:14:14.34Z",
"Info": null,
"IsUnresponsive": false,
"Id": 730,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "!~#$%^&*()_+=-",
"Username": "dragomirmir",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "WR_env",
"Id": 771,
"ExecutionSettings": null
}
}
]
}
{
"@odata.context": "/odata/$metadata#Sessions",
"@odata.count": 2,
"value": [
{
"State": "Disconnected",
"ReportingTime": "2018-01-15T18:47:07.93Z",
"Info": null,
"IsUnresponsive": false,
"Id": 718,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Type": "Unattended",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
}
},
{
"State": "Disconnected",
"ReportingTime": "2018-01-18T18:14:14.34Z",
"Info": null,
"IsUnresponsive": false,
"Id": 730,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "!~#$%^&*()_+=-",
"Username": "dragomirmir",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "WR_env",
"Id": 771,
"ExecutionSettings": null
}
}
]
}
The following example retrieves the details of the Robot with the 216 Id. Please note that this Robot uses smart card authentication.
GET
/odata/Robots(216)
{
"@odata.context": "/odata/$metadata#Robots/$entity",
"LicenseKey": "fc157179-3724-4bb0-acd2-8261bef82d01",
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustavee",
"Username": "uipath\\john.smith",
"ExternalName": null,
"Description": null,
"Type": "Development",
"HostingType": "Standard",
"ProvisionType": "Manual",
"Password": null,
"CredentialStoreId": null,
"UserId": 45,
"Enabled": true,
"CredentialType": null,
"RobotEnvironments": "",
"IsExternalLicensed": false,
"LimitConcurrentExecution": false,
"Id": 216,
"ExecutionSettings": {
"ResolutionHeight": 0,
"ResolutionDepth": 0,
"FontSmoothing": false,
"AutoDownloadProcess": false
}
}
{
"@odata.context": "/odata/$metadata#Robots/$entity",
"LicenseKey": "fc157179-3724-4bb0-acd2-8261bef82d01",
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustavee",
"Username": "uipath\\john.smith",
"ExternalName": null,
"Description": null,
"Type": "Development",
"HostingType": "Standard",
"ProvisionType": "Manual",
"Password": null,
"CredentialStoreId": null,
"UserId": 45,
"Enabled": true,
"CredentialType": null,
"RobotEnvironments": "",
"IsExternalLicensed": false,
"LimitConcurrentExecution": false,
"Id": 216,
"ExecutionSettings": {
"ResolutionHeight": 0,
"ResolutionDepth": 0,
"FontSmoothing": false,
"AutoDownloadProcess": false
}
}
/odata/Robots/UiPath.Server.Configuration.OData.GetRobotsForProcess
. It enables you to identify, on the fly, which Robots can execute the package with the input_output_arguments_example
id.
GET
/odata/Robots/UiPath.Server.Configuration.OData.GetRobotsForProcess(processId='input_output_arguments_example')
{
"@odata.context": "/odata/$metadata#Robots",
"@odata.count": 2,
"value": [
{
"LicenseKey": null,
"MachineName": "DESKTOP-ASBD",
"MachineId": 129,
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Version": null,
"Type": "Unattended",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
},
{
"LicenseKey": null,
"MachineName": "Doc",
"MachineId": 1066,
"Name": "DocBot",
"Username": "uipath\\documentation",
"Description": null,
"Version": "18.3.0.558",
"Type": "NonProduction",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env",
"Id": 1684,
"ExecutionSettings": null
}
]
}
{
"@odata.context": "/odata/$metadata#Robots",
"@odata.count": 2,
"value": [
{
"LicenseKey": null,
"MachineName": "DESKTOP-ASBD",
"MachineId": 129,
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Version": null,
"Type": "Unattended",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
},
{
"LicenseKey": null,
"MachineName": "Doc",
"MachineId": 1066,
"Name": "DocBot",
"Username": "uipath\\documentation",
"Description": null,
"Version": "18.3.0.558",
"Type": "NonProduction",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env",
"Id": 1684,
"ExecutionSettings": null
}
]
}
The following example enables you to view Robot logs for the Robot named DocBot.
GET
/odata/RobotLogs?$top=100&$skip=200&$filter=RobotName eq 'DocBot'
{
"@odata.context": "/odata/$metadata#RobotLogs",
"@odata.count": 202,
"value": [
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:55:18.2473626Z",
"Message": "TestingSequence_DOC execution started",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution started\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:55:18.2473626+00:00\",\r\n \"fingerprint\": \"972a32c3-95d9-4264-ae5d-af589bf4f0b5\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
},
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:57:21.4985672Z",
"Message": "TestingSequence_DOC execution ended",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution ended\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:57:21.4985672+00:00\",\r\n \"fingerprint\": \"e973b4f2-deec-4290-978b-3a8af0769b35\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"totalExecutionTimeInSeconds\": 123,\r\n \"totalExecutionTime\": \"00:02:03\",\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
}
]
}
{
"@odata.context": "/odata/$metadata#RobotLogs",
"@odata.count": 202,
"value": [
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:55:18.2473626Z",
"Message": "TestingSequence_DOC execution started",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution started\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:55:18.2473626+00:00\",\r\n \"fingerprint\": \"972a32c3-95d9-4264-ae5d-af589bf4f0b5\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
},
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:57:21.4985672Z",
"Message": "TestingSequence_DOC execution ended",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution ended\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:57:21.4985672+00:00\",\r\n \"fingerprint\": \"e973b4f2-deec-4290-978b-3a8af0769b35\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"totalExecutionTimeInSeconds\": 123,\r\n \"totalExecutionTime\": \"00:02:03\",\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
}
]
}
GET requests for Robot logs stored using Elasticsearch only retrieve the first 10000 entries. This is due to an Elasticsearch limitation, and it does not occur if you are using SQL.
$top
and $skip
parameters which go beyond the 10,000 limit returns the following error message: "Depth of pagination is limited in Elasticsearch
by the max_result_window index setting. Make sure skip + take is lower than 10000".
RobotName eq
, JobKey eq
, MachineId eq
, Level ge
, TimeStamp gt
.
X-UIPATH-OrganizationUnitId
in the request header, and the Robot Id and the machine name in the request body.
When making PUT requests to the Robots endpoint please take into account the following:
- the Robot username and password are not updated when you send the same username and a null or empty password.
- if a new username is sent with a null or empty password, the Robot credentials are updated and the new username is used.
PUT
/odata/Robots(749)
Key |
Value |
---|---|
Authorization |
Bearer |
X-UIPATH-OrganizationUnitId |
The container folder ID. For example,
36886 .
|
{
"LicenseKey": "8ec4t984-b2d7-44f2-b5be-0a64ee9a487b",
"MachineName": "MBOBOC",
"Name": "DocBot",
"Type": "Development",
"Id": 749,
"Username": "UIPATH\\JustAnotherRobot",
"ExecutionSettings":{
"TracingLevel":"Information",
"StudioNotifyServer":true,
"LoginToConsole":false,
"ResolutionWidth":0,
"ResolutionHeight":0,
"ResolutionDepth":0,
"FontSmoothing":false,
"AutoDownloadProcess":false
}
}
{
"LicenseKey": "8ec4t984-b2d7-44f2-b5be-0a64ee9a487b",
"MachineName": "MBOBOC",
"Name": "DocBot",
"Type": "Development",
"Id": 749,
"Username": "UIPATH\\JustAnotherRobot",
"ExecutionSettings":{
"TracingLevel":"Information",
"StudioNotifyServer":true,
"LoginToConsole":false,
"ResolutionWidth":0,
"ResolutionHeight":0,
"ResolutionDepth":0,
"FontSmoothing":false,
"AutoDownloadProcess":false
}
}
odata/Robots({robot_id})
endpoint.
DELETE
/odata/Robots(79)
Request headers
Key |
Value |
---|---|
Authorization |
Bearer |
Response code
204 No Content
/Robots/UiPath.Server.Configuration.OData.DeleteBulk
endpoint.
POST
/odata/Robots/UiPath.Server.Configuration.OData.DeleteBulk
Request headers
Key |
Value |
---|---|
Authorization |
Bearer |
Request body
{
"robotIds": [119, 120]
}
{
"robotIds": [119, 120]
}
Response code
204 No Content
/odata/Robots
endpoint. Note that this endpoint returns null for the ExecutionSettings
parameter. Use the /odata/Robots(Id)
endpoint as a workaround to retrieve execution settings for a particular robot.
GET
{OrchestratorURL}/odata/RobotLogs?$top=100&$skip=200&$filter=RobotName eq 'DocBot'
{
"@odata.context": "{OrchestratorURL}/odata/$metadata#Robots",
"@odata.count": 1,
"value": [
{
"LicenseKey": null,
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustave",
"Username": "uipath\\john.smith",
"ExternalName": null,
"Description": null,
"Type": "Development",
"HostingType": "Standard",
"ProvisionType": "Manual",
"Password": null,
"CredentialStoreId": null,
"UserId": 45,
"Enabled": true,
"CredentialType": null,
"RobotEnvironments": "",
"IsExternalLicensed": false,
"LimitConcurrentExecution": false,
"Id": 8,
"ExecutionSettings": null
}
]
}
{
"@odata.context": "{OrchestratorURL}/odata/$metadata#Robots",
"@odata.count": 1,
"value": [
{
"LicenseKey": null,
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustave",
"Username": "uipath\\john.smith",
"ExternalName": null,
"Description": null,
"Type": "Development",
"HostingType": "Standard",
"ProvisionType": "Manual",
"Password": null,
"CredentialStoreId": null,
"UserId": 45,
"Enabled": true,
"CredentialType": null,
"RobotEnvironments": "",
"IsExternalLicensed": false,
"LimitConcurrentExecution": false,
"Id": 8,
"ExecutionSettings": null
}
]
}
- Retrieving Robot Statuses
- According to Its Id
- According to Its Name
- Retrieving Robot Information According to Its State: Example 1
- Request headers
- Response code
- Response body
- Retrieving Robot Information According to Its State: Example 2
- Request headers
- Response code
- Response body
- Retrieving Robot Information According to Its Id
- Request headers
- Response code
- Response body
- Retrieving All Robots That Can Execute a Specific Process
- Request headers
- Response code
- Response body
- Retrieving Robot Logs According to the Robot Name
- Request headers
- Response code
- Response body
- Editing Robot Information
- Request headers
- Request body
- Response code
- Deleting Robots
- Deleting a Single Robot
- Deleting Several Robots
- Retrieving Robot Information
- Request headers
- Response code
- Response body