跳至主要内容
REST API 现在已版本化。 有关更多信息,请参阅“关于 API 版本控制”。

GitHub Actions 缓存的 REST API 端点

使用 REST API 与 GitHub Actions 中存储库的缓存进行交互。

关于 GitHub Actions 中的缓存

你可以使用 REST API 查询和管理 GitHub Actions 中存储库的缓存。你还可以安装 GitHub CLI 扩展,以从命令行管理缓存。有关更多信息,请参阅“缓存依赖项以加速工作流”。

获取组织的 GitHub Actions 缓存使用情况

获取组织的总 GitHub Actions 缓存使用情况。使用此 API 获取的数据大约每 5 分钟刷新一次,因此从该端点返回的值可能需要至少 5 分钟才能更新。

OAuth 令牌和个人访问令牌(经典版)需要 read:org 范围才能使用此端点。

“获取组织的 GitHub Actions 缓存使用情况”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌必须具有以下权限集

  • “管理”组织权限(读取)

“获取组织的 GitHub Actions 缓存使用情况”的参数

标头
名称、类型、说明
accept 字符串

建议设置为 application/vnd.github+json

路径参数
名称、类型、说明
org 字符串 必需

组织名称。名称不区分大小写。

“获取组织的 GitHub Actions 缓存使用情况”的 HTTP 响应状态代码

状态代码说明
200

OK

“获取组织的 GitHub Actions 缓存使用情况”的代码示例

请求示例

get/orgs/{org}/actions/cache/usage
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/cache/usage

响应

状态:200
{ "total_active_caches_size_in_bytes": 3344284, "total_active_caches_count": 5 }

列出组织的 GitHub Actions 缓存使用情况的存储库

列出存储库及其针对组织的 GitHub Actions 缓存使用情况。使用此 API 获取的数据大约每 5 分钟刷新一次,因此此端点返回的值可能需要至少 5 分钟才能更新。

OAuth 令牌和个人访问令牌(经典版)需要 read:org 范围才能使用此端点。

“列出组织的 GitHub Actions 缓存使用情况的存储库”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌必须具有以下权限集

  • “管理”组织权限(读取)

“列出组织的 GitHub Actions 缓存使用情况的存储库”的参数

标头
名称、类型、说明
accept 字符串

建议设置为 application/vnd.github+json

路径参数
名称、类型、说明
org 字符串 必需

组织名称。名称不区分大小写。

查询参数
名称、类型、说明
per_page 整数

每页的结果数(最大 100)。有关详细信息,请参阅“在 REST API 中使用分页”。

默认: 30

page 整数

要获取的结果的页号。有关详细信息,请参阅“使用 REST API 中的分页”。

默认: 1

“列出组织的 GitHub Actions 缓存使用情况”的 HTTP 响应状态代码

状态代码说明
200

OK

“列出组织的 GitHub Actions 缓存使用情况”的代码示例

请求示例

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: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/cache/usage-by-repository

响应

状态: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 } ] }

获取存储库的 GitHub Actions 缓存使用情况

获取存储库的 GitHub Actions 缓存使用情况。使用此 API 获取的数据大约每 5 分钟刷新一次,因此此端点返回的值可能需要至少 5 分钟才能更新。

任何有权读取存储库的人都可以使用此端点。

如果存储库是私有的,则 OAuth 令牌和个人访问令牌(经典)需要 repo 范围才能使用此端点。

“获取存储库的 GitHub Actions 缓存使用情况”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌必须具有以下权限集

  • “操作”存储库权限(读取)

如果仅请求公共资源,则无需身份验证或上述权限即可使用此端点。

“获取存储库的 GitHub Actions 缓存使用情况”的参数

标头
名称、类型、说明
accept 字符串

建议设置为 application/vnd.github+json

路径参数
名称、类型、说明
owner 字符串 必需

存储库的帐户所有者。名称不区分大小写。

repo 字符串 必需

不带 .git 扩展名的存储库名称。名称不区分大小写。

“获取存储库的 GitHub Actions 缓存使用情况”的 HTTP 响应状态代码

状态代码说明
200

OK

“获取存储库的 GitHub Actions 缓存使用情况”的代码示例

请求示例

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: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/cache/usage

响应

状态:200
{ "full_name": "octo-org/Hello-World", "active_caches_size_in_bytes": 2322142, "active_caches_count": 3 }

列出存储库的 GitHub Actions 缓存

列出存储库的 GitHub Actions 缓存。

OAuth 令牌和个人访问令牌(经典)需要 repo 范围才能使用此端点。

“列出存储库的 GitHub Actions 缓存”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌必须具有以下权限集

  • “操作”存储库权限(读取)

如果仅请求公共资源,则无需身份验证或上述权限即可使用此端点。

“列出存储库的 GitHub Actions 缓存”的参数

标头
名称、类型、说明
accept 字符串

建议设置为 application/vnd.github+json

路径参数
名称、类型、说明
owner 字符串 必需

存储库的帐户所有者。名称不区分大小写。

repo 字符串 必需

不带 .git 扩展名的存储库名称。名称不区分大小写。

查询参数
名称、类型、说明
per_page 整数

每页的结果数(最大 100)。有关详细信息,请参阅“在 REST API 中使用分页”。

默认: 30

page 整数

要获取的结果的页号。有关详细信息,请参阅“使用 REST API 中的分页”。

默认: 1

ref string

用于缩小缓存范围的完整 Git 引用。分支的 ref 应采用 refs/heads/<branch name> 格式。要引用拉取请求,请使用 refs/pull/<number>/merge

key string

用于识别缓存的显式键或前缀

sort string

用于对结果进行排序的属性。created_at 表示缓存创建的时间。last_accessed_at 表示缓存上次被访问的时间。size_in_bytes 是缓存的大小(以字节为单位)。

默认值: last_accessed_at

可以是: created_at, last_accessed_at, size_in_bytes

direction string

用于对结果进行排序的方向。

默认值: desc

可以是: asc, desc

“列出存储库的 GitHub Actions 缓存”的 HTTP 响应状态代码

状态代码说明
200

OK

“列出存储库的 GitHub Actions 缓存”的代码示例

请求示例

get/repos/{owner}/{repo}/actions/caches
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/caches

响应

状态: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 } ] }

使用缓存密钥删除存储库的 GitHub 操作缓存

使用完整的缓存密钥,删除存储库的一个或多个 GitHub 操作缓存。默认情况下,将删除所有与所提供密钥匹配的缓存,但你也可以选择提供 Git 引用,以将删除限制为与所提供的密钥和 Git 引用都匹配的缓存。

OAuth 令牌和个人访问令牌(经典)需要 repo 范围才能使用此端点。

“使用缓存密钥删除存储库的 GitHub 操作缓存”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌必须具有以下权限集

  • “操作”存储库权限(写入)

“使用缓存密钥删除存储库的 GitHub 操作缓存”的参数

标头
名称、类型、说明
accept 字符串

建议设置为 application/vnd.github+json

路径参数
名称、类型、说明
owner 字符串 必需

存储库的帐户所有者。名称不区分大小写。

repo 字符串 必需

不带 .git 扩展名的存储库名称。名称不区分大小写。

查询参数
名称、类型、说明
key string 必需

用于标识缓存的密钥。

ref string

用于缩小缓存范围的完整 Git 引用。分支的 ref 应采用 refs/heads/<branch name> 格式。要引用拉取请求,请使用 refs/pull/<number>/merge

“使用缓存密钥删除存储库的 GitHub 操作缓存”的 HTTP 响应状态代码

状态代码说明
200

OK

“使用缓存密钥删除存储库的 GitHub 操作缓存”的代码示例

请求示例

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: 2022-11-28" \ "https://api.github.com/repos/OWNER/REPO/actions/caches?key=Linux-node-958aff96db2d75d67787d1e634ae70b659de937b"

响应

状态: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 } ] }

使用缓存 ID 删除存储库的 GitHub 操作缓存

使用缓存 ID 删除存储库的 GitHub 操作缓存。

OAuth 令牌和个人访问令牌(经典)需要 repo 范围才能使用此端点。

“使用缓存 ID 删除存储库的 GitHub 操作缓存”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌必须具有以下权限集

  • “操作”存储库权限(写入)

“使用缓存 ID 删除存储库的 GitHub 操作缓存”的参数

标头
名称、类型、说明
accept 字符串

建议设置为 application/vnd.github+json

路径参数
名称、类型、说明
owner 字符串 必需

存储库的帐户所有者。名称不区分大小写。

repo 字符串 必需

不带 .git 扩展名的存储库名称。名称不区分大小写。

cache_id integer 必需

GitHub 操作缓存的唯一标识符。

“使用缓存 ID 删除存储库的 GitHub 操作缓存”的 HTTP 响应状态代码

状态代码说明
204

无内容

“使用缓存 ID 删除存储库的 GitHub 操作缓存”的代码示例

请求示例

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: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/caches/CACHE_ID

响应

状态:204