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

用于组织交互的 REST API 端点

使用 REST API 临时限制组织的公共代码库中可以发表评论、打开问题或创建拉取请求的用户类型。

关于组织交互

组织所有者可以临时限制组织的公共代码库中可以发表评论、打开问题或创建拉取请求的用户类型。启用限制后,只有指定类型的 GitHub 用户才能参与交互。限制会在定义的持续时间后自动过期。以下是对 GitHub 用户类型的更多介绍

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

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

获取组织的交互限制

显示可以与该组织交互的 GitHub 用户类型以及限制何时过期。如果没有限制,您将看到空响应。

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

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

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

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

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

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

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

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

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

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

状态代码说明
200

确定

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

请求示例

获取/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_userscontributors_onlycollaborators_only

expiry 字符串

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

可以是以下之一: one_daythree_daysone_weekone_monthsix_months

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

状态代码说明
200

确定

422

验证失败,或端点已被垃圾邮件发送。

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

请求示例

放置/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

无内容

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

请求示例

删除/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