- Getting started
 - Authentication
 - Swagger definition
 - Orchestrator APIs
- Alerts Requests
 - Assets requests
 - Calendars requests
 - Environments requests
 - Folders requests
 - Generic Tasks requests
 - Jobs requests
 - Libraries requests
 - License requests
 - Packages requests
 - Permissions requests
 - Personal workspaces requests
 - Processes requests
 - Queue Items requests
 - Queue retention policy requests
 - Robots requests
 - Roles requests
 - Schedules requests
 - Settings requests
 - Storage bucket requests
 - Tasks requests
 - Task Catalogs requests
 - Task Forms requests
 - Tenants requests
 - Transactions requests
 - Users requests
 - Webhooks requests
 
 - Platform Management APIs
 

Orchestrator API guide
- GET requests to the 
/odata/Usersor/odata/Users({})endpoints return an empty Domain for AD users. - The 
GetOrganizationUnits(Id)andGetRoles(Id)requests only return folders and roles explicitly set for an auto-provisioned user. The ones inherited from the group configuration can be retrieved through the/api/DirectoryService/GetDirectoryPermissions?userId={userId}endpoint. 
DELETE
https://{yourDomain}/odata/Users(446)
Request headers
| 
                                  Key  | 
                                  Value  | 
|---|---|
| 
                                  Authorization  | 
                                  Bearer  | 
Response code
204 No content
The following example enables you to change the language for the user with the 749 Id to Japanese.
POST
https://{yourDomain}/odata/Users(749)/UiPath.Server.Configuration.OData.ChangeUserCulture
Request headers
| 
                                  Key  | 
                                  Value  | 
|---|---|
| 
                                  Authorization  | 
                                  Bearer  | 
Request body
{
    "culture": "ja"
}{
    "culture": "ja"
}Response code
200 OK
PUT
https://{yourDomain}/odata/Users(13)
Request headers
| 
                                  Key  | 
                                  Value  | 
|---|---|
| 
                                  Authorization  | 
                                  Bearer  | 
Request body
{
  "RobotProvision": {
     "UserName": "uipath\\john.smith",
     "RobotId": 53,
     "RobotType": "Development",
     "ExecutionSettings": {}
  }
}{
  "RobotProvision": {
     "UserName": "uipath\\john.smith",
     "RobotId": 53,
     "RobotType": "Development",
     "ExecutionSettings": {}
  }
}Response code
200 OK
You can use this endpoint to assign one or more roles to the specified user ID, which can be the ID of a group, a user account, or a robot account.
POST
https://{yourDomain}/odata/Users(9)/UiPath.Server.Configuration.OData.AssignRoles
Request headers
| 
                                  Key  | 
                                  Value  | 
|---|---|
| 
                                  Authorization  | 
                                  Bearer  | 
Request body
{
  "roleIds": [
    1,3
  ]
}{
  "roleIds": [
    1,3
  ]
}Example
9 by overwriting its assigned roles with the roles that have IDs 1 and 3.
                  | 
                                  Roles before request  | 
                                  Roles after request  | 
                                  Changes  | 
|---|---|---|
| 
                                  No roles  | 
                                 1 and 3 | 
                                  Roles with IDs  
                                 
                              1 and 3 have been assigned.
                                  | 
| 
                                  Roles with IDs  
                                 
                              1 and 2 | 
                                 1 and 3 | 
                                  Role with ID  
                                 
                              2 was removed and role with ID 3 was assigned.
                                  | 
| 
                                  Role with ID  
                                 
                              2 | 
                                 1 and 3 | 
                                  Role with ID  
                                 
                              2 was removed, and roles with IDs 1 and 3 were assigned.
                                  | 
cURL
curl -X POST "https://{yourDomain}/odata/Users({key})/UiPath.Server.Configuration.OData.AssignRoles" -H "accept: application/json" -H "Content-Type: application/json"
                        -d "{ \"roleIds\": [ {RoleID1},{RoleID2} ] }"
https://https://{yourDomain}/swagger)
                  Step by step
Here's an example procedure for how to assign roles to an account:
- 
                        Make a GET request at
/odata/Rolesto retrieve the list of roles.You can use any type of filter that OData supports, if needed.
 - Note the IDs for the roles you want to assign.
 - 
                        Make a GET request at
/odata/Usersto retrieve the list of accounts.The list includes groups, user accounts, and robot accounts.
You can use any type of filter that OData supports, if needed.
 - Note the IDs for the accounts to which you want to assign roles.
 - 
                        Make a POST request to
/odata/Users({key})/UiPath.Server.Configuration.OData.AssignRolesfor each account to which you want to assign roles.{key}is a single account ID for the account to which you want to assign roles{roleID}is a single role ID for the role you want to assign; you can list multiple IDs, separated by a comma.