> ## Documentation Index
> Fetch the complete documentation index at: https://docs.incredibuild.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Build Cache API

Last updated on Dec 17, 2025

This feature is only available in Incredibuild's [Enterprise Plan](/windows/10.31.0/pricing-plans).

API method: buildCache Version = 1.5.0 MAKE THE SAME AS OTHERS

The Build Cache API enables API users to perform build cache actions automatically with most of the capabilities of the Build Cache Manager UI. These include **Cluster level** and **Specific Node** actions. In addition, requests can be sent to multiple nodes simultaneously. Use of this API requires an [API Key](/windows/10.31.0/api-keys) and an Enterprise license.

| Cluster Level actions Stop <br /> Start <br /> Restart (stop, then start) <br /> Clear Cache <br /> LogLevel | Specific Node actions Stop <br /> Start <br /> Restart (stop, then start) <br /> Clear Cache |
| ------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------- |

## Requirements - API Key and Syntax

**Header**

Every API call must include a header with a key called **client-api-key** and its value (case sensitive).

* **Coordinator IP Address/Hostname** - The IP address or hostname of the Coordinator.

* **Coordinator UI Port** - The port number you defined during installation. By default, this is 8000.

* **Coordinator ID** - The ID assigned by Incredibuild to your Coordinator. You can view this in the Coordinator Manager > Settings > API Access area.

**Request Endpoint**

```
POST https://coordinatorPC:8000/api/buildCache?version=1.5.0
```

```
POST https://{IB Coordinator IP Address/Hostname}:{Web Access Port}/api/buildCache?version=1.5.0
```

Where **"version"** is the version of the Incredibuild API. If you do not specify a version in the API call, the lowest supported version will be used.

**The Request Format**

**Header:** The header must include a key called **client-api-key** and the value of your API key as a string. All APIs are case sensitive.

The request URL can contain any of the following fields.

| Request Parameter           | Values                                                   | Type   | Appearance in UI          |
| --------------------------- | -------------------------------------------------------- | ------ | ------------------------- |
| "clusterName" or "nodeName" | Any                                                      | String | Build Cache Cluster Name  |
|                             | Any                                                      | String | Build Cache Node Hostname |
| "action"                    | "stop" \| "start" \| "restart" \| "clear"                | String | The action to perform     |
| "logLevel"                  | Minimal \| Basic \| Intermediate \| Extended \| Detailed | String | Log Level                 |

## Perform Actions

### **HTTP Method - POST**

##### Single node

POST     /api/buildCache/nodes/\{nodeName}/*action*}

Response: \{status code}

##### Multiple nodes

POST     /api/buildcache/nodes/\{*action*}

|   | Note: This body is relevant for actions on multiple nodes. <br /> \{ <br /> "nodes":\[ "nodeName1", "nodeName2", "nodeName3"] <br /> } |
| - | -------------------------------------------------------------------------------------------------------------------------------------- |

**Response:** \{status code}

##### Cluster level

POST     /api/buildcache/clusters/\{clusterName}/\{*action*}

**Response:** \{status code}

### **HTTP Method - GET**

##### Request: Lists

**GET**     /api/buildcache/**clusters**

**Response:** à retrieves a list of clusters.

**GET**    /api /buildcache/**clusters/clusterName/nodes**

**Response:** à retrieves a list of clusters' nodes.

## Request: Log level

**GET**   /api/buildcache/clusters/\{clustername}/logLevel

**Response:** \{logLevel}

### **HTTP Method - PUT**

##### Request: Log level

PUT   /api/buildcache /clusters/\{clustername}/logLevel

**Response:** \{status code}

## **Response Status Codes**

This API uses standard

| Code | Description                                                                                                                                                    |
| ---- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 200  | OK: When the request was successfully processed (even if there are partial failures in the resultsList, this still indicates the overall request was handled). |
| 202  | Accepted: If the operation is long-running and processed asynchronously.                                                                                       |
| 400  | Bad Request: If the request is malformed (e.g., invalid action, or missing required fields).                                                                   |
| 401  | Unauthorized: If the API key is not active or missing.                                                                                                         |
| 403  | Forbidden: If the user does not have appropriate permissions to perform the action.                                                                            |
| 404  | Not Found: If the clusterName or nodeName specified in the URL path does not exist.                                                                            |
| 429  | Too Many Requests: If the rate limit is exceeded                                                                                                               |
| 500  | Internal Server Error: For unexpected server-side errors                                                                                                       |
