This version of GitHub Enterprise Server was discontinued on 2024-01-04. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise Server. For help with the upgrade, contact GitHub Enterprise support.
GitHub Actions Cache
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 "Caching dependencies to speed up workflows."
Get GitHub Actions cache usage for an enterprise
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.
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
Parameters for "Get GitHub Actions cache usage for an enterprise"
Name, Type, Description |
---|
accept string Setting to |
Name, Type, Description |
---|
enterprise string RequiredThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
HTTP response status codes for "Get GitHub Actions cache usage for an enterprise"
Status code | Description |
---|---|
200 | OK |
Code samples for "Get GitHub Actions cache usage for an enterprise"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/cache/usage
Response
Status: 200
{
"total_active_caches_size_in_bytes": 3344284,
"total_active_caches_count": 5
}
Get GitHub Actions cache usage policy for an enterprise
Gets the GitHub Actions cache usage policy for an enterprise.
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
Parameters for "Get GitHub Actions cache usage policy for an enterprise"
Name, Type, Description |
---|
accept string Setting to |
Name, Type, Description |
---|
enterprise string RequiredThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
HTTP response status codes for "Get GitHub Actions cache usage policy for an enterprise"
Status code | Description |
---|---|
200 | OK |
Code samples for "Get GitHub Actions cache usage policy for an enterprise"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/cache/usage-policy
Response
Status: 200
{
"repo_cache_size_limit_in_gb": 10,
"max_repo_cache_size_limit_in_gb": 15
}
Set GitHub Actions cache usage policy for an enterprise
Sets the GitHub Actions cache usage policy for an enterprise.
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
Parameters for "Set GitHub Actions cache usage policy for an enterprise"
Name, Type, Description |
---|
accept string Setting to |
Name, Type, Description |
---|
enterprise string RequiredThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
Name, Type, Description |
---|
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 for "Set GitHub Actions cache usage policy for an enterprise"
Status code | Description |
---|---|
204 | No Content |
Code samples for "Set GitHub Actions cache usage policy for an enterprise"
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
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
Status: 204
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.
You must authenticate using an access token with the read:org
scope to use this endpoint. GitHub Apps must have the organization_admistration:read
permission to use this endpoint.
Parameters for "Get GitHub Actions cache usage for an organization"
Name, Type, Description |
---|
accept string Setting to |
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"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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.
You must authenticate using an access token with the read:org
scope to use this endpoint. GitHub Apps must have the organization_admistration:read
permission to use this endpoint.
Parameters for "List repositories with GitHub Actions cache usage for an organization"
Name, Type, Description |
---|
accept string Setting to |
Name, Type, Description |
---|
org string RequiredThe organization name. The name is not case sensitive. |
Name, Type, Description |
---|
per_page integer The number of results per page (max 100). Default: |
page integer Page number of the results to fetch. Default: |
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"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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 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, you must use an access token with the repo
scope. GitHub Apps must have the actions:read
permission to use this endpoint.
Parameters for "Get GitHub Actions cache usage for a repository"
Name, Type, Description |
---|
accept string Setting to |
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 |
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"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
}
Get GitHub Actions cache usage policy for a repository
Gets GitHub Actions cache usage policy for a repository.
You must authenticate using an access token with the repo
scope to use this endpoint.
GitHub Apps must have the actions:read
permission to use this endpoint.
Parameters for "Get GitHub Actions cache usage policy for a repository"
Name, Type, Description |
---|
accept string Setting to |
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 |
HTTP response status codes for "Get GitHub Actions cache usage policy for a repository"
Status code | Description |
---|---|
200 | OK |
Code samples for "Get GitHub Actions cache usage policy for a repository"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/cache/usage-policy
Response
Status: 200
{
"repo_cache_size_limit_in_gb": 14
}
Set GitHub Actions cache usage policy for a repository
Sets GitHub Actions cache usage policy for a repository.
You must authenticate using an access token with the repo
scope to use this endpoint.
GitHub Apps must have the actions:write
permission to use this endpoint.
Parameters for "Set GitHub Actions cache usage policy for a repository"
Name, Type, Description |
---|
accept string Setting to |
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 |
Name, Type, Description |
---|
repo_cache_size_limit_in_gb integer RequiredThe size limit for the sum of all caches, in gigabytes. |
HTTP response status codes for "Set GitHub Actions cache usage policy for a repository"
Status code | Description |
---|---|
204 | No Content |
Code samples for "Set GitHub Actions cache usage policy for a repository"
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/cache/usage-policy \
-d '{"repo_cache_size_limit_in_gb":14}'
Response
Status: 204
List GitHub Actions caches for a repository
Lists the GitHub Actions caches for a repository.
You must authenticate using an access token with the repo
scope to use this endpoint.
GitHub Apps must have the actions:read
permission to use this endpoint.
Parameters for "List GitHub Actions caches for a repository"
Name, Type, Description |
---|
accept string Setting to |
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 |
Name, Type, Description |
---|
per_page integer The number of results per page (max 100). Default: |
page integer Page number of the results to fetch. Default: |
ref string The full Git reference for narrowing down the cache. The |
key string An explicit key or prefix for identifying the cache |
sort string The property to sort the results by. Default: Can be one of: |
direction string The direction to sort the results by. Default: Can be one of: |
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"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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.
You must authenticate using an access token with the repo
scope to use this endpoint.
GitHub Apps must have the actions:write
permission to use this endpoint.
Parameters for "Delete GitHub Actions caches for a repository (using a cache key)"
Name, Type, Description |
---|
accept string Setting to |
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 |
Name, Type, Description |
---|
key string RequiredA key for identifying the cache. |
ref string The full Git reference for narrowing down the cache. The |
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)"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
"http(s)://HOSTNAME/api/v3/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.
You must authenticate using an access token with the repo
scope to use this endpoint.
GitHub Apps must have the actions:write
permission to use this endpoint.
Parameters for "Delete a GitHub Actions cache for a repository (using a cache ID)"
Name, Type, Description |
---|
accept string Setting to |
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 |
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)"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/caches/CACHE_ID
Response
Status: 204