# Pontos de extremidade da API REST para o cache do GitHub Actions

Use a API REST para interagir com o cache para repositórios em GitHub Actions.

## Sobre o cache em GitHub Actions

Você pode usar a API REST para consultar e gerenciar o cache para repositórios em GitHub Actions. Você também pode instalar uma GitHub CLI extensão para gerenciar seus caches na linha de comando. Para saber mais, confira [Referência do cache de dependência](/pt/enterprise-server@3.22/actions/reference/workflows-and-actions/dependency-caching).

> \[!NOTE]
> Most endpoints use `Authorization: Bearer <YOUR-TOKEN>` and `Accept: application/vnd.github+json` headers, plus `X-GitHub-Api-Version: 2026-03-10`. Curl examples below omit these standard headers for brevity.

## Get GitHub Actions cache usage for an enterprise

```
GET /enterprises/{enterprise}/actions/cache/usage
```

Gets the total GitHub Actions cache usage for an enterprise.
The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
OAuth tokens and personal access tokens (classic) need the admin:enterprise scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`enterprise`** (string) (required)
  The slug version of the enterprise name.

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X GET \
  http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/cache/usage
```

**Response schema (Status: 200):**

* `total_active_caches_count`: required, integer
* `total_active_caches_size_in_bytes`: required, integer

## Get GitHub Actions cache usage policy for an enterprise

```
GET /enterprises/{enterprise}/actions/cache/usage-policy
```

Gets the GitHub Actions cache usage policy for an enterprise.
OAuth tokens and personal access tokens (classic) need the admin:enterprise scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`enterprise`** (string) (required)
  The slug version of the enterprise name.

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X GET \
  http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/cache/usage-policy
```

**Response schema (Status: 200):**

* `repo_cache_size_limit_in_gb`: integer
* `max_repo_cache_size_limit_in_gb`: integer

## Set GitHub Actions cache usage policy for an enterprise

```
PATCH /enterprises/{enterprise}/actions/cache/usage-policy
```

Sets the GitHub Actions cache usage policy for an enterprise.
OAuth app tokens and personal access tokens (classic) need the admin:enterprise scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`enterprise`** (string) (required)
  The slug version of the enterprise name.

#### Body parameters

* **`repo_cache_size_limit_in_gb`** (integer)
  For repositories in an enterprise, the default size limit for the sum of all caches in a repository, in gigabytes.

* **`max_repo_cache_size_limit_in_gb`** (integer)
  For repositories in an enterprise, the maximum value that can be set as the limit for the sum of all caches in a repository, in gigabytes.

### HTTP response status codes

* **204** - No Content

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X PATCH \
  http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/cache/usage-policy \
  -d '{
  "repo_cache_size_limit_in_gb": 10,
  "max_repo_cache_size_limit_in_gb": 15
}'
```

**Response schema (Status: 204):**

## Get GitHub Actions cache usage for an organization

```
GET /orgs/{org}/actions/cache/usage
```

Gets the total GitHub Actions cache usage for an organization.
The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
OAuth tokens and personal access tokens (classic) need the read:org scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`org`** (string) (required)
  The organization name. The name is not case sensitive.

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X GET \
  http(s)://HOSTNAME/api/v3/orgs/ORG/actions/cache/usage
```

**Response schema (Status: 200):**

Same response schema as [Get GitHub Actions cache usage for an enterprise](#get-github-actions-cache-usage-for-an-enterprise).

## List repositories with GitHub Actions cache usage for an organization

```
GET /orgs/{org}/actions/cache/usage-by-repository
```

Lists repositories and their GitHub Actions cache usage for an organization.
The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
OAuth tokens and personal access tokens (classic) need the read:org scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`org`** (string) (required)
  The organization name. The name is not case sensitive.

* **`per_page`** (integer)
  The number of results per page (max 100). For more information, see "Using pagination in the REST API."
  Default: `30`

* **`page`** (integer)
  The page number of the results to fetch. For more information, see "Using pagination in the REST API."
  Default: `1`

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X GET \
  http(s)://HOSTNAME/api/v3/orgs/ORG/actions/cache/usage-by-repository
```

**Response schema (Status: 200):**

* `total_count`: required, integer
* `repository_cache_usages`: required, array of `Actions Cache Usage by repository`:
  * `full_name`: required, string
  * `active_caches_size_in_bytes`: required, integer
  * `active_caches_count`: required, integer

## Get GitHub Actions cache usage for a repository

```
GET /repos/{owner}/{repo}/actions/cache/usage
```

Gets GitHub Actions cache usage for a repository.
The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
Anyone with read access to the repository can use this endpoint.
If the repository is private, OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`owner`** (string) (required)
  The account owner of the repository. The name is not case sensitive.

* **`repo`** (string) (required)
  The name of the repository without the .git extension. The name is not case sensitive.

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X GET \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/cache/usage
```

**Response schema (Status: 200):**

* `full_name`: required, string
* `active_caches_size_in_bytes`: required, integer
* `active_caches_count`: required, integer

## Get GitHub Actions cache usage policy for a repository

```
GET /repos/{owner}/{repo}/actions/cache/usage-policy
```

Gets GitHub Actions cache usage policy for a repository.
OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`owner`** (string) (required)
  The account owner of the repository. The name is not case sensitive.

* **`repo`** (string) (required)
  The name of the repository without the .git extension. The name is not case sensitive.

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X GET \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/cache/usage-policy
```

**Response schema (Status: 200):**

* `repo_cache_size_limit_in_gb`: required, integer

## Set GitHub Actions cache usage policy for a repository

```
PATCH /repos/{owner}/{repo}/actions/cache/usage-policy
```

Sets GitHub Actions cache usage policy for a repository.
OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`owner`** (string) (required)
  The account owner of the repository. The name is not case sensitive.

* **`repo`** (string) (required)
  The name of the repository without the .git extension. The name is not case sensitive.

#### Body parameters

* **`repo_cache_size_limit_in_gb`** (integer) (required)
  The size limit for the sum of all caches, in gigabytes.

### HTTP response status codes

* **204** - No Content

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X PATCH \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/cache/usage-policy \
  -d '{
  "repo_cache_size_limit_in_gb": 14
}'
```

**Response schema (Status: 204):**

## List GitHub Actions caches for a repository

```
GET /repos/{owner}/{repo}/actions/caches
```

Lists the GitHub Actions caches for a repository.
OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`owner`** (string) (required)
  The account owner of the repository. The name is not case sensitive.

* **`repo`** (string) (required)
  The name of the repository without the .git extension. The name is not case sensitive.

* **`per_page`** (integer)
  The number of results per page (max 100). For more information, see "Using pagination in the REST API."
  Default: `30`

* **`page`** (integer)
  The page number of the results to fetch. For more information, see "Using pagination in the REST API."
  Default: `1`

* **`ref`** (string)
  The full Git reference for narrowing down the cache. The ref for a branch should be formatted as refs/heads/<branch name>. To reference a pull request use refs/pull/<number>/merge.

* **`key`** (string)
  An explicit key or prefix for identifying the cache

* **`sort`** (string)
  The property to sort the results by. created\_at means when the cache was created. last\_accessed\_at means when the cache was last accessed. size\_in\_bytes is the size of the cache in bytes.
  Default: `last_accessed_at`
  Can be one of: `created_at`, `last_accessed_at`, `size_in_bytes`

* **`direction`** (string)
  The direction to sort the results by.
  Default: `desc`
  Can be one of: `asc`, `desc`

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X GET \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/caches
```

**Response schema (Status: 200):**

* `total_count`: required, integer
* `actions_caches`: required, array of objects:
  * `id`: integer
  * `ref`: string
  * `key`: string
  * `version`: string
  * `last_accessed_at`: string, format: date-time
  * `created_at`: string, format: date-time
  * `size_in_bytes`: integer

## Delete GitHub Actions caches for a repository (using a cache key)

```
DELETE /repos/{owner}/{repo}/actions/caches
```

Deletes one or more GitHub Actions caches for a repository, using a complete cache key. By default, all caches that match the provided key are deleted, but you can optionally provide a Git ref to restrict deletions to caches that match both the provided key and the Git ref.
OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`owner`** (string) (required)
  The account owner of the repository. The name is not case sensitive.

* **`repo`** (string) (required)
  The name of the repository without the .git extension. The name is not case sensitive.

* **`key`** (string) (required)
  A key for identifying the cache.

* **`ref`** (string)
  The full Git reference for narrowing down the cache. The ref for a branch should be formatted as refs/heads/<branch name>. To reference a pull request use refs/pull/<number>/merge.

### HTTP response status codes

* **200** - OK

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X DELETE \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/caches
```

**Response schema (Status: 200):**

Same response schema as [List GitHub Actions caches for a repository](#list-github-actions-caches-for-a-repository).

## Delete a GitHub Actions cache for a repository (using a cache ID)

```
DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}
```

Deletes a GitHub Actions cache for a repository, using a cache ID.
OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

### Parameters

#### Headers

* **`accept`** (string)
  Setting to `application/vnd.github+json` is recommended.

#### Path and query parameters

* **`owner`** (string) (required)
  The account owner of the repository. The name is not case sensitive.

* **`repo`** (string) (required)
  The name of the repository without the .git extension. The name is not case sensitive.

* **`cache_id`** (integer) (required)
  The unique identifier of the GitHub Actions cache.

### HTTP response status codes

* **204** - No Content

### Code examples

#### Example

**Request:**

```curl
curl -L \
  -X DELETE \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/caches/CACHE_ID
```

**Response schema (Status: 204):**