跳到主要内容
REST API 现在已分版本。 有关详细信息,请参阅“关于 API 版本控制”。

用于组织交互的 REST API 端点

使用 REST API 暂时限制哪种类型的用户可以在组织的公共存储库中发表评论、打开 issue 或创建拉取请求。

关于组织交互

组织所有者可以暂时限制哪种类型的用户可以在组织的公共存储库中发表评论、打开 issue 或创建拉取请求。启用限制后,只有指定类型的 GitHub 用户才能参与交互。限制在定义的持续时间后自动过期。以下是有关 GitHub 用户类型的更多信息

  • 现有用户:当您将交互限制为 existing_users 时,帐户创建时间不足 24 小时、之前未做出过贡献且不是合作者的新用户将在组织中受到临时限制。
  • 仅限贡献者:当您将交互限制为 contributors_only 时,之前未做出过贡献且不是合作者的用户将在组织中受到临时限制。
  • 仅限合作者:当您将交互限制为 collaborators_only 时,不是合作者的用户将在组织中受到临时限制。

在组织级别设置交互限制将覆盖为组织拥有的各个存储库设置的任何交互限制。要为组织拥有的各个存储库设置不同的交互限制,请改用 存储库 交互端点。

获取组织的交互限制

显示哪种类型的 GitHub 用户可以与此组织交互,以及限制到期时间。如果没有限制,您将看到一个空响应。

“获取组织的交互限制”的细粒度访问令牌

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

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

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

“获取组织的交互限制”的参数

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

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

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

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

“获取组织的交互限制”的 HTTP 响应状态代码

状态代码说明
200

OK

“获取组织的交互限制”的代码示例

请求示例

get/orgs/{org}/interaction-limits
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/interaction-limits

响应

状态:200
{ "limit": "collaborators_only", "origin": "organization", "expires_at": "2018-08-17T04:18:39Z" }

设置组织的交互限制

暂时将给定组织中任何公共存储库中的交互限制为特定类型的 GitHub 用户。您必须是组织所有者才能设置这些限制。在组织级别设置交互限制将覆盖组织拥有的各个存储库设置的任何交互限制。

“为组织设置交互限制”的细粒度访问令牌

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

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

  • “组织”管理权限(写入)

“为组织设置交互限制”的参数

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

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

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

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

正文参数
名称、类型、说明
limit 字符串 必需

在交互限制生效期间,可以评论、打开问题或创建拉取请求的 GitHub 用户类型。

可以是其中之一: existing_users, contributors_only, collaborators_only

expiry 字符串

交互限制的持续时间。默认值:one_day

可以是其中之一: one_day, three_days, one_week, one_month, six_months

“为组织设置交互限制”的 HTTP 响应状态代码

状态代码说明
200

OK

422

验证失败,或端点受到垃圾邮件攻击。

“为组织设置交互限制”的代码示例

请求示例

put/orgs/{org}/interaction-limits
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/orgs/ORG/interaction-limits \ -d '{"limit":"collaborators_only","expiry":"one_month"}'

响应

状态:200
{ "limit": "collaborators_only", "origin": "organization", "expires_at": "2018-08-17T04:18:39Z" }

删除组织的交互限制

从给定组织的公共存储库中删除所有交互限制。必须是组织所有者才能删除限制。

“删除组织的交互限制”的细粒度访问令牌

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

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

  • “组织”管理权限(写入)

“删除组织的交互限制”的参数

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

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

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

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

“删除组织的交互限制”的 HTTP 响应状态代码

状态代码说明
204

无内容

“删除组织的交互限制”的代码示例

请求示例

delete/orgs/{org}/interaction-limits
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/orgs/ORG/interaction-limits

响应

状态:204