用于代码库交互的 REST API 端点
使用 REST API 临时限制可以在公共代码库中发表评论、打开问题或创建拉取请求的用户类型。
谁可以使用此功能?
拥有公共代码库的所有者或管理员权限的人员可以临时限制可以在其中发表评论、打开问题或创建拉取请求的用户类型。
关于代码库交互
拥有者或管理员权限的人员可以使用 REST API 临时限制可以在公共代码库中发表评论、打开问题或创建拉取请求的用户类型。启用限制后,只有指定的 GitHub 用户类型才能参与交互。限制会在定义的持续时间后自动过期。以下是有关 GitHub 用户类型的更多信息
- 现有用户:当您将交互限制为
existing_users
时,帐户创建不到 24 小时且之前未贡献过且不是合作者的新用户将被暂时限制在代码库中。 - 仅限贡献者:当您将交互限制为
contributors_only
时,之前未贡献过且不是合作者的用户将被暂时限制在代码库中。 - 仅限合作者:当您将交互限制为
collaborators_only
时,不是合作者的用户将被暂时限制在代码库中。
获取代码库的交互限制
显示哪种类型的 GitHub 用户可以与该代码库交互以及限制何时过期。如果没有限制,您将看到空响应。
“获取代码库的交互限制”的细粒度访问令牌
此端点可与以下细粒度令牌类型配合使用:
细粒度令牌必须具有以下权限集
- “管理”代码库权限(读取)
“获取代码库的交互限制”的参数
名称、类型、说明 |
---|
accept 字符串建议设置为 |
名称、类型、说明 |
---|
owner 字符串 必填代码库的帐户所有者。名称不区分大小写。 |
repo 字符串 必填不带 |
“获取代码库的交互限制”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | 确定 |
“获取代码库的交互限制”的代码示例
请求示例
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/interaction-limits
回应
设置代码库的交互限制
暂时将交互限制为给定代码库中的特定类型的 GitHub 用户。您必须拥有所有者或管理员权限才能设置这些限制。如果为拥有此代码库的用户或组织设置了交互限制,您将收到409 冲突
响应,并且将无法使用此端点更改单个代码库的交互限制。
“设置代码库的交互限制”的细粒度访问令牌
此端点可与以下细粒度令牌类型配合使用:
细粒度令牌必须具有以下权限集
- “管理”代码库权限(写入)
“设置代码库的交互限制”的参数
名称、类型、说明 |
---|
accept 字符串建议设置为 |
名称、类型、说明 |
---|
owner 字符串 必填代码库的帐户所有者。名称不区分大小写。 |
repo 字符串 必填不带 |
名称、类型、说明 |
---|
limit 字符串 必填在交互限制生效期间可以发表评论、打开问题或创建拉取请求的 GitHub 用户类型。 可以是以下之一: |
expiry 字符串交互限制的持续时间。默认值: 可以是以下之一: |
“设置代码库的交互限制”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | 确定 |
409 | 冲突 |
“设置代码库的交互限制”的代码示例
请求示例
curl -L \ -X PUT \ -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/interaction-limits \ -d '{"limit":"collaborators_only","expiry":"one_day"}'
回应
删除代码库的交互限制
从给定代码库中删除所有交互限制。您必须拥有所有者或管理员权限才能删除限制。如果为拥有此代码库的用户或组织设置了交互限制,您将收到409 冲突
响应,并且将无法使用此端点更改单个代码库的交互限制。
“删除代码库的交互限制”的细粒度访问令牌
此端点可与以下细粒度令牌类型配合使用:
细粒度令牌必须具有以下权限集
- “管理”代码库权限(写入)
“删除代码库的交互限制”的参数
名称、类型、说明 |
---|
accept 字符串建议设置为 |
名称、类型、说明 |
---|
owner 字符串 必填代码库的帐户所有者。名称不区分大小写。 |
repo 字符串 必填不带 |
“删除代码库的交互限制”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | 无内容 |
409 | 冲突 |
“删除代码库的交互限制”的代码示例
请求示例
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/interaction-limits
回应
状态:204