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

用户交互的 REST API 端点

使用 REST API 临时限制哪些类型的用户可以在您的公共仓库中发表评论、打开问题或创建拉取请求。

关于用户交互

您可以使用 REST API 临时限制哪些类型的用户可以在您的公共仓库中发表评论、打开问题或创建拉取请求。启用限制后,只有指定类型的 GitHub 用户才能参与交互。限制会在定义的持续时间后自动过期。以下是有关 GitHub 用户类型的更多信息

  • 现有用户:当您将交互限制为existing_users时,帐户创建不到 24 小时且之前未贡献过且不是合作者的新用户将被临时限制与您的仓库进行交互。
  • 仅限贡献者:当您将交互限制为contributors_only时,之前未贡献过且不是合作者的用户将被临时限制与您的仓库进行交互。
  • 仅限合作者:当您将交互限制为collaborators_only时,不是合作者的用户将被临时限制与您的仓库进行交互。

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

获取您公共仓库的交互限制

显示哪些类型的 GitHub 用户可以与您的公共仓库交互以及限制何时过期。

“获取您公共仓库的交互限制”的细粒度访问令牌

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

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

  • “交互限制”用户权限(读取)

“获取您公共仓库的交互限制”的 HTTP 响应状态代码

状态代码描述
200

默认响应

204

没有限制时的响应

“获取您公共仓库的交互限制”的代码示例

请求示例

get/user/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/user/interaction-limits

默认响应

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

设置您公共仓库的交互限制

临时限制哪些类型的 GitHub 用户可以与您的公共仓库进行交互。在用户级别设置交互限制将覆盖为用户拥有的各个仓库设置的任何交互限制。

“设置您公共仓库的交互限制”的细粒度访问令牌

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

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

  • “交互限制”用户权限(写入)

“设置您公共仓库的交互限制”的参数

标头
名称、类型、描述
accept 字符串

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

主体参数
名称、类型、描述
limit 字符串 必填

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

可以是以下之一: existing_userscontributors_onlycollaborators_only

expiry 字符串

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

可以是以下之一: one_daythree_daysone_weekone_monthsix_months

“设置您公共仓库的交互限制”的 HTTP 响应状态代码

状态代码描述
200

确定

422

验证失败或端点已被滥用。

“设置您公共仓库的交互限制”的代码示例

请求示例

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

回应

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

从您的公共仓库中删除交互限制

从您的公共仓库中删除任何交互限制。

“从您的公共仓库中删除交互限制”的细粒度访问令牌

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

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

  • “交互限制”用户权限(写入)

“从您的公共仓库中删除交互限制”的 HTTP 响应状态代码

状态代码描述
204

无内容

“从您的公共仓库中删除交互限制”的代码示例

请求示例

delete/user/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/user/interaction-limits

回应

状态:204