# Get Tenant Robot Allocation

> GET endpoint for retrieving the number of robot runtimes allocated to and in use by a specific tenant.

Retrieves the number of unattended robot runtimes allocated to a specific tenant and, when available, how many of them are currently in use. The in-use count is read live from Orchestrator on each call. Requires one of the following:

* An external application with the scope `PM.License.Read` (or `PM.License`). Find out how to [create an external application](https://docs.uipath.com/automation-cloud/automation-cloud/latest/admin-guide/authorizing-external-applications).
* An Organization Administrator user token.
* An internal service-to-service token.

## API Endpoint

`GET` `{accessURL}/{organizationName}/license_/api/account/{accountId}/tenant/{tenantId}/robots`

Replace `{accessURL}` in all endpoint paths with the base URL for your cloud platform:

| Cloud platform | Access URL |
| --- | --- |
| Automation Cloud | `https://cloud.uipath.com/` |
| Automation Cloud Public Sector | `https://govcloud.uipath.us/` |
| Automation Cloud Dedicated | `https://{customURL}.dedicated.uipath.com/` |

:::note
`{organizationName}` and `{accountId}` both identify the same organization: `{organizationName}` is the organization name in the URL routing prefix, while `{accountId}` is the organization ID (GUID) used as a path parameter. The organization ID is also accepted in the routing prefix, as in any standard URL.
:::

## Request Headers

```
--header 'Authorization: Bearer {access_token}'
```

:::note
To obtain the `{access_token}` for an external application, authenticate using the client credentials grant, as described on the [Authentication Methods page](https://docs.uipath.com/automation-cloud/automation-cloud/latest/api-guide/authentication-methods#authentication-methods).
:::

## Path Parameters

| Path param | Data type | Description |
| --- | --- | --- |
| `accountId` (required) | Guid | The ID of the organization in which the tenant resides. |
| `tenantId` (required) | Guid | The ID of the tenant for which to retrieve the robot allocation. |

## Responses

### 200 OK

Returns the robot allocation for the specified tenant.

* `serviceScopeId`: the tenant ID from the request.
* `serviceType`: always `orchestrator`.
* `usageAvailable`: `true` when the in-use counts were retrieved from Orchestrator. `false` when Orchestrator could not be reached; in that case, `inUse` is omitted from every entry in `robots` so that unavailable usage is never reported as zero.
* `robots`: for each unattended robot type allocated to the tenant, the allocated quantity (`allocated`) and, when available, the quantity currently in use (`inUse`). Only products allocated to the tenant are listed. See [Robots](https://docs.uipath.com/automation-cloud/automation-cloud/latest/api-guide/license-codes#robots) for the available codes.

`robots` is returned as an empty array, with `usageAvailable` set to `false`, when the tenant has no Orchestrator service license or has no unattended robot licenses allocated. In that case, no call is made to Orchestrator.

:::note
This endpoint covers unattended robot runtimes only (`UNATT`, `NONPR`, `UNATT-HOSTING`, `TAUNATT`, `APPTESTR`). Attended and other named-user licenses aren't included, as those are user licenses, not runtimes. It also returns allocation for one tenant per call: to retrieve robot allocation for every tenant in an organization, call the endpoint once per tenant.
:::

## Example Request

The request should resemble the following example (cURL):

```
curl --location --request GET 'https://cloud.uipath.com/{organizationName}/license_/api/account/11111111-1111-1111-1111-111111111111/tenant/22222222-2222-2222-2222-222222222222/robots' \
--header 'Authorization: Bearer {access_token}'
```

Here's the response body for a successful robot allocation retrieval:

```json
{
  "serviceScopeId": "22222222-2222-2222-2222-222222222222",
  "serviceType": "orchestrator",
  "usageAvailable": true,
  "robots": [
    { "code": "UNATT", "allocated": 10, "inUse": 3 },
    { "code": "NONPR", "allocated": 2, "inUse": 0 }
  ]
}
```
