REST API endpoints for GitHub Actions cache - GitHub Docs (original) (raw)
Use the REST API to interact with the cache for repositories in GitHub Actions.
About the cache in GitHub Actions
You can use the REST API to query and manage the cache for repositories in GitHub Actions. You can also install a GitHub CLI extension to manage your caches from the command line. For more information, see Dependency caching reference.
Get GitHub Actions cache retention limit for an enterprise
Gets GitHub Actions cache retention limit for an enterprise. All organizations and repositories under this enterprise may not set a higher cache retention limit.
OAuth tokens and personal access tokens (classic) need the admin:enterprise scope to use this endpoint.
Fine-grained access tokens for "Get GitHub Actions cache retention limit for an enterprise"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Enterprise administration" enterprise permissions (write)
Parameters for "Get GitHub Actions cache retention limit for an enterprise"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| enterprise string RequiredThe slug version of the enterprise name. |
HTTP response status codes for "Get GitHub Actions cache retention limit for an enterprise"
| Status code | Description |
|---|---|
| 200 | OK |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Get GitHub Actions cache retention limit for an enterprise"
Request example
get/enterprises/{enterprise}/actions/cache/retention-limit
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/actions/cache/retention-limit
Response
Status: 200
{ "max_cache_retention_days": 80 }
Set GitHub Actions cache retention limit for an enterprise
Sets GitHub Actions cache retention limit for an enterprise. All organizations and repositories under this enterprise may not set a higher cache retention limit.
OAuth tokens and personal access tokens (classic) need the admin:enterprise scope to use this endpoint.
Fine-grained access tokens for "Set GitHub Actions cache retention limit for an enterprise"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Enterprise administration" enterprise permissions (write)
Parameters for "Set GitHub Actions cache retention limit for an enterprise"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| enterprise string RequiredThe slug version of the enterprise name. |
Body parameters
| Name, Type, Description |
|---|
| max_cache_retention_days integer For repositories & organizations in an enterprise, the maximum duration, in days, for which caches in a repository may be retained. |
HTTP response status codes for "Set GitHub Actions cache retention limit for an enterprise"
| Status code | Description |
|---|---|
| 204 | No Content |
| 400 | Bad Request |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Set GitHub Actions cache retention limit for an enterprise"
Request example
put/enterprises/{enterprise}/actions/cache/retention-limit
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/actions/cache/retention-limit \ -d '{"max_cache_retention_days":80}'
Response
Get GitHub Actions cache storage limit for an enterprise
Gets GitHub Actions cache storage limit for an enterprise. All organizations and repositories under this enterprise may not set a higher cache storage limit.
OAuth tokens and personal access tokens (classic) need the admin:enterprise scope to use this endpoint.
Fine-grained access tokens for "Get GitHub Actions cache storage limit for an enterprise"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Enterprise administration" enterprise permissions (write)
Parameters for "Get GitHub Actions cache storage limit for an enterprise"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| enterprise string RequiredThe slug version of the enterprise name. |
HTTP response status codes for "Get GitHub Actions cache storage limit for an enterprise"
| Status code | Description |
|---|---|
| 200 | OK |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Get GitHub Actions cache storage limit for an enterprise"
Request example
get/enterprises/{enterprise}/actions/cache/storage-limit
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/actions/cache/storage-limit
Response
Status: 200
{ "max_cache_size_gb": 150 }
Set GitHub Actions cache storage limit for an enterprise
Sets GitHub Actions cache storage limit for an enterprise. All organizations and repositories under this enterprise may not set a higher cache storage limit.
OAuth tokens and personal access tokens (classic) need the admin:enterprise scope to use this endpoint.
Fine-grained access tokens for "Set GitHub Actions cache storage limit for an enterprise"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Enterprise administration" enterprise permissions (write)
Parameters for "Set GitHub Actions cache storage limit for an enterprise"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| enterprise string RequiredThe slug version of the enterprise name. |
Body parameters
| Name, Type, Description |
|---|
| max_cache_size_gb integer For repositories & organizations in an enterprise, the maximum size limit for the sum of all caches in a repository, in gigabytes. |
HTTP response status codes for "Set GitHub Actions cache storage limit for an enterprise"
| Status code | Description |
|---|---|
| 204 | No Content |
| 400 | Bad Request |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Set GitHub Actions cache storage limit for an enterprise"
Request example
put/enterprises/{enterprise}/actions/cache/storage-limit
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/actions/cache/storage-limit \ -d '{"max_cache_size_gb":150}'
Response
Get GitHub Actions cache retention limit for an organization
Gets GitHub Actions cache retention limit for an organization. All repositories under this organization may not set a higher cache retention limit.
OAuth tokens and personal access tokens (classic) need the admin:organization scope to use this endpoint.
Fine-grained access tokens for "Get GitHub Actions cache retention limit for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" organization permissions (read)
Parameters for "Get GitHub Actions cache retention limit for an organization"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| org string RequiredThe organization name. The name is not case sensitive. |
HTTP response status codes for "Get GitHub Actions cache retention limit for an organization"
| Status code | Description |
|---|---|
| 200 | OK |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Get GitHub Actions cache retention limit for an organization"
Request example
get/organizations/{org}/actions/cache/retention-limit
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/organizations/ORG/actions/cache/retention-limit
Response
Status: 200
{ "max_cache_retention_days": 80 }
Set GitHub Actions cache retention limit for an organization
Sets GitHub Actions cache retention limit for an organization. All repositories under this organization may not set a higher cache retention limit.
OAuth tokens and personal access tokens (classic) need the admin:organization scope to use this endpoint.
Fine-grained access tokens for "Set GitHub Actions cache retention limit for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" organization permissions (write)
Parameters for "Set GitHub Actions cache retention limit for an organization"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| org string RequiredThe organization name. The name is not case sensitive. |
Body parameters
| Name, Type, Description |
|---|
| max_cache_retention_days integer For repositories in this organization, the maximum duration, in days, for which caches in a repository may be retained. |
HTTP response status codes for "Set GitHub Actions cache retention limit for an organization"
| Status code | Description |
|---|---|
| 204 | No Content |
| 400 | Bad Request |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Set GitHub Actions cache retention limit for an organization"
Request example
put/organizations/{org}/actions/cache/retention-limit
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/organizations/ORG/actions/cache/retention-limit \ -d '{"max_cache_retention_days":80}'
Response
Get GitHub Actions cache storage limit for an organization
Gets GitHub Actions cache storage limit for an organization. All repositories under this organization may not set a higher cache storage limit.
OAuth tokens and personal access tokens (classic) need the admin:organization scope to use this endpoint.
Fine-grained access tokens for "Get GitHub Actions cache storage limit for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" organization permissions (read)
Parameters for "Get GitHub Actions cache storage limit for an organization"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| org string RequiredThe organization name. The name is not case sensitive. |
HTTP response status codes for "Get GitHub Actions cache storage limit for an organization"
| Status code | Description |
|---|---|
| 200 | OK |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Get GitHub Actions cache storage limit for an organization"
Request example
get/organizations/{org}/actions/cache/storage-limit
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/organizations/ORG/actions/cache/storage-limit
Response
Status: 200
{ "max_cache_size_gb": 150 }
Set GitHub Actions cache storage limit for an organization
Sets GitHub Actions cache storage limit for an organization. All organizations and repositories under this organization may not set a higher cache storage limit.
OAuth tokens and personal access tokens (classic) need the admin:organization scope to use this endpoint.
Fine-grained access tokens for "Set GitHub Actions cache storage limit for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" organization permissions (write)
Parameters for "Set GitHub Actions cache storage limit for an organization"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| org string RequiredThe organization name. The name is not case sensitive. |
Body parameters
| Name, Type, Description |
|---|
| max_cache_size_gb integer For repositories in the organization, the maximum size limit for the sum of all caches in a repository, in gigabytes. |
HTTP response status codes for "Set GitHub Actions cache storage limit for an organization"
| Status code | Description |
|---|---|
| 204 | No Content |
| 400 | Bad Request |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Set GitHub Actions cache storage limit for an organization"
Request example
put/organizations/{org}/actions/cache/storage-limit
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/organizations/ORG/actions/cache/storage-limit \ -d '{"max_cache_size_gb":150}'
Response
Get GitHub Actions cache usage for an organization
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.
Fine-grained access tokens for "Get GitHub Actions cache usage for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" organization permissions (read)
Parameters for "Get GitHub Actions cache usage for an organization"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| org string RequiredThe organization name. The name is not case sensitive. |
HTTP response status codes for "Get GitHub Actions cache usage for an organization"
| Status code | Description |
|---|---|
| 200 | OK |
Code samples for "Get GitHub Actions cache usage for an organization"
Request example
get/orgs/{org}/actions/cache/usage
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/orgs/ORG/actions/cache/usage
Response
Status: 200
{ "total_active_caches_size_in_bytes": 3344284, "total_active_caches_count": 5 }
List repositories with GitHub Actions cache usage for an organization
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.
Fine-grained access tokens for "List repositories with GitHub Actions cache usage for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" organization permissions (read)
Parameters for "List repositories with GitHub Actions cache usage for an organization"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| org string RequiredThe organization name. The name is not case sensitive. |
Query parameters
| Name, Type, Description |
|---|
| 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 for "List repositories with GitHub Actions cache usage for an organization"
| Status code | Description |
|---|---|
| 200 | OK |
Code samples for "List repositories with GitHub Actions cache usage for an organization"
Request example
get/orgs/{org}/actions/cache/usage-by-repository
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/orgs/ORG/actions/cache/usage-by-repository
Response
Status: 200
{ "total_count": 2, "repository_cache_usages": [ { "full_name": "octo-org/Hello-World", "active_caches_size_in_bytes": 2322142, "active_caches_count": 3 }, { "full_name": "octo-org/server", "active_caches_size_in_bytes": 1022142, "active_caches_count": 2 } ] }
Get GitHub Actions cache retention limit for a repository
Gets GitHub Actions cache retention limit for a repository. This determines how long caches will be retained for, if not manually removed or evicted due to size constraints.
OAuth tokens and personal access tokens (classic) need the admin:repository scope to use this endpoint.
Fine-grained access tokens for "Get GitHub Actions cache retention limit for a repository"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" repository permissions (read)
Parameters for "Get GitHub Actions cache retention limit for a repository"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
HTTP response status codes for "Get GitHub Actions cache retention limit for a repository"
| Status code | Description |
|---|---|
| 200 | OK |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Get GitHub Actions cache retention limit for a repository"
Request example
get/repos/{owner}/{repo}/actions/cache/retention-limit
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/repos/OWNER/REPO/actions/cache/retention-limit
Response
Status: 200
{ "max_cache_retention_days": 80 }
Set GitHub Actions cache retention limit for a repository
Sets GitHub Actions cache retention limit for a repository. This determines how long caches will be retained for, if not manually removed or evicted due to size constraints.
OAuth tokens and personal access tokens (classic) need the admin:repository scope to use this endpoint.
Fine-grained access tokens for "Set GitHub Actions cache retention limit for a repository"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" repository permissions (write)
Parameters for "Set GitHub Actions cache retention limit for a repository"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
Body parameters
| Name, Type, Description |
|---|
| max_cache_retention_days integer The maximum number of days to keep caches in this repository. |
HTTP response status codes for "Set GitHub Actions cache retention limit for a repository"
| Status code | Description |
|---|---|
| 204 | No Content |
| 400 | Bad Request |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Set GitHub Actions cache retention limit for a repository"
Request example
put/repos/{owner}/{repo}/actions/cache/retention-limit
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/repos/OWNER/REPO/actions/cache/retention-limit \ -d '{"max_cache_retention_days":80}'
Response
Get GitHub Actions cache storage limit for a repository
Gets GitHub Actions cache storage limit for a repository. This determines the maximum size of caches that can be stored before eviction occurs.
OAuth tokens and personal access tokens (classic) need the admin:repository scope to use this endpoint.
Fine-grained access tokens for "Get GitHub Actions cache storage limit for a repository"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Actions" repository permissions (read)
Parameters for "Get GitHub Actions cache storage limit for a repository"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
HTTP response status codes for "Get GitHub Actions cache storage limit for a repository"
| Status code | Description |
|---|---|
| 200 | OK |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Get GitHub Actions cache storage limit for a repository"
Request example
get/repos/{owner}/{repo}/actions/cache/storage-limit
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/repos/OWNER/REPO/actions/cache/storage-limit
Response
Status: 200
{ "max_cache_size_gb": 150 }
Set GitHub Actions cache storage limit for a repository
Sets GitHub Actions cache storage limit for a repository. This determines the maximum size of caches that can be stored before eviction occurs.
OAuth tokens and personal access tokens (classic) need the admin:repository scope to use this endpoint.
Fine-grained access tokens for "Set GitHub Actions cache storage limit for a repository"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Administration" repository permissions (write)
Parameters for "Set GitHub Actions cache storage limit for a repository"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
Body parameters
| Name, Type, Description |
|---|
| max_cache_size_gb integer The maximum total cache size for this repository, in gigabytes. |
HTTP response status codes for "Set GitHub Actions cache storage limit for a repository"
| Status code | Description |
|---|---|
| 204 | No Content |
| 400 | Bad Request |
| 403 | Forbidden |
| 404 | Resource not found |
Code samples for "Set GitHub Actions cache storage limit for a repository"
Request example
put/repos/{owner}/{repo}/actions/cache/storage-limit
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/repos/OWNER/REPO/actions/cache/storage-limit \ -d '{"max_cache_size_gb":150}'
Response
Get GitHub Actions cache usage for a repository
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.
Fine-grained access tokens for "Get GitHub Actions cache usage for a repository"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Actions" repository permissions (read)
This endpoint can be used without authentication or the aforementioned permissions if only public resources are requested.
Parameters for "Get GitHub Actions cache usage for a repository"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
HTTP response status codes for "Get GitHub Actions cache usage for a repository"
| Status code | Description |
|---|---|
| 200 | OK |
Code samples for "Get GitHub Actions cache usage for a repository"
Request example
get/repos/{owner}/{repo}/actions/cache/usage
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/repos/OWNER/REPO/actions/cache/usage
Response
Status: 200
{ "full_name": "octo-org/Hello-World", "active_caches_size_in_bytes": 2322142, "active_caches_count": 3 }
List GitHub Actions caches for a repository
Lists the GitHub Actions caches for a repository.
OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.
Fine-grained access tokens for "List GitHub Actions caches for a repository"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Actions" repository permissions (read)
This endpoint can be used without authentication or the aforementioned permissions if only public resources are requested.
Parameters for "List GitHub Actions caches for a repository"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
Query parameters
| Name, Type, Description |
|---|
| 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/. To reference a pull request use refs/pull//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_atCan be one of: created_at, last_accessed_at, size_in_bytes |
| direction string The direction to sort the results by.Default: descCan be one of: asc, desc |
HTTP response status codes for "List GitHub Actions caches for a repository"
| Status code | Description |
|---|---|
| 200 | OK |
Code samples for "List GitHub Actions caches for a repository"
Request example
get/repos/{owner}/{repo}/actions/caches
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/repos/OWNER/REPO/actions/caches
Response
Status: 200
{ "total_count": 1, "actions_caches": [ { "id": 505, "ref": "refs/heads/main", "key": "Linux-node-958aff96db2d75d67787d1e634ae70b659de937b", "version": "73885106f58cc52a7df9ec4d4a5622a5614813162cb516c759a30af6bf56e6f0", "last_accessed_at": "2019-01-24T22:45:36.000Z", "created_at": "2019-01-24T22:45:36.000Z", "size_in_bytes": 1024 } ] }
Delete GitHub Actions caches for a repository (using a cache key)
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.
Fine-grained access tokens for "Delete GitHub Actions caches for a repository (using a cache key)"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Actions" repository permissions (write)
Parameters for "Delete GitHub Actions caches for a repository (using a cache key)"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
Query parameters
| Name, Type, Description |
|---|
| key string RequiredA 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/. To reference a pull request use refs/pull//merge. |
HTTP response status codes for "Delete GitHub Actions caches for a repository (using a cache key)"
| Status code | Description |
|---|---|
| 200 | OK |
Code samples for "Delete GitHub Actions caches for a repository (using a cache key)"
Request example
delete/repos/{owner}/{repo}/actions/caches
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ "https://api.github.com/repos/OWNER/REPO/actions/caches?key=Linux-node-958aff96db2d75d67787d1e634ae70b659de937b"
Response
Status: 200
{ "total_count": 1, "actions_caches": [ { "id": 505, "ref": "refs/heads/main", "key": "Linux-node-958aff96db2d75d67787d1e634ae70b659de937b", "version": "73885106f58cc52a7df9ec4d4a5622a5614813162cb516c759a30af6bf56e6f0", "last_accessed_at": "2019-01-24T22:45:36.000Z", "created_at": "2019-01-24T22:45:36.000Z", "size_in_bytes": 1024 } ] }
Delete a GitHub Actions cache for a repository (using a 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.
Fine-grained access tokens for "Delete a GitHub Actions cache for a repository (using a cache ID)"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Actions" repository permissions (write)
Parameters for "Delete a GitHub Actions cache for a repository (using a cache ID)"
Headers
| Name, Type, Description |
|---|
| accept string Setting to application/vnd.github+json is recommended. |
Path parameters
| Name, Type, Description |
|---|
| owner string RequiredThe account owner of the repository. The name is not case sensitive. |
| repo string RequiredThe name of the repository without the .git extension. The name is not case sensitive. |
| cache_id integer RequiredThe unique identifier of the GitHub Actions cache. |
HTTP response status codes for "Delete a GitHub Actions cache for a repository (using a cache ID)"
| Status code | Description |
|---|---|
| 204 | No Content |
Code samples for "Delete a GitHub Actions cache for a repository (using a cache ID)"
Request example
delete/repos/{owner}/{repo}/actions/caches/{cache_id}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/repos/OWNER/REPO/actions/caches/CACHE_ID
Response