Skip to main content
REST API はバージョン管理になりました。 詳細については、「API のバージョン管理について」を参照してください。

ユーザー操作用の REST API エンドポイント

REST API を使って、自分のパブリック リポジトリ内でコメントする、issue を開く、または pull request を作成することができるユーザーの種類を一時的に制限します。

ユーザー操作について

REST API を使って、自分のパブリック リポジトリ内でコメントする、issue を開く、または pull request を作成することができるユーザーの種類を一時的に制限できます。 制限が有効化されると、指定した種類のGitHubユーザのみがインタラクションに参加できるようになります。 制限は、定義された期間の後に自動的に期限切れになります。 GitHub ユーザのタイプについては以下を参照してください。

  • Existing users(既存のユーザー): インタラクションを existing_users に制限すると、24 時間以下しか経過していないアカウントの新規ユーザーで、以前にコントリビューションしておらず、コラボレーターでもないユーザーは、一時的に制限されます。が自分のリポジトリの操作を制限されます。
  • Contributors only (共同作成者のみ): 対話を contributors_only に制限すると、以前に投稿していない共同作成者ではないユーザーは一時的に制限されますが自分のリポジトリの操作を制限されます。
  • Collaborators only(コラボレーターのみ): インタラクションを collaborators_only に制限すると、コラボレーターではないユーザーは一時的に制限されますが自分のリポジトリの操作を制限されます。

ユーザレベルでインタラクション制限を設定すると、ユーザが所有する個々のリポジトリに設定されているインタラクション制限は上書きされます。 ユーザーが所有する個々のリポジトリに対して異なるインタラクション制限を設定するには、代わりにリポジトリ インタラクション エンドポイントを使ってください。

Get interaction restrictions for your public repositories

Shows which type of GitHub user can interact with your public repositories and when the restriction expires.

"Get interaction restrictions for your public repositories" のきめ細かいアクセス トークン

このエンドポイントは、次の粒度の細かいトークンの種類で動作します:

粒度の細かいトークンには次のアクセス許可セットが設定されている必要があります:

  • "Interaction limits" user permissions (read)

"Get interaction restrictions for your public repositories" の HTTP 応答状態コード

状態コード説明
200

Default response

204

Response when there are no restrictions

"Get interaction restrictions for your public repositories" のコード サンプル

要求の例

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

Default response

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

Set interaction restrictions for your public repositories

Temporarily restricts which type of GitHub user can interact with your public repositories. Setting the interaction limit at the user level will overwrite any interaction limits that are set for individual repositories owned by the user.

"Set interaction restrictions for your public repositories" のきめ細かいアクセス トークン

このエンドポイントは、次の粒度の細かいトークンの種類で動作します:

粒度の細かいトークンには次のアクセス許可セットが設定されている必要があります:

  • "Interaction limits" user permissions (write)

"Set interaction restrictions for your public repositories" のパラメーター

ヘッダー
名前, Type, 説明
accept string

Setting to application/vnd.github+json is recommended.

本文のパラメーター
名前, Type, 説明
limit string 必須

The type of GitHub user that can comment, open issues, or create pull requests while the interaction limit is in effect.

次のいずれかにできます: existing_users, contributors_only, collaborators_only

expiry string

The duration of the interaction restriction. Default: one_day.

次のいずれかにできます: one_day, three_days, one_week, one_month, six_months

"Set interaction restrictions for your public repositories" の HTTP 応答状態コード

状態コード説明
200

OK

422

Validation failed, or the endpoint has been spammed.

"Set interaction restrictions for your public repositories" のコード サンプル

要求の例

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"}'

Response

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

Remove interaction restrictions from your public repositories

Removes any interaction restrictions from your public repositories.

"Remove interaction restrictions from your public repositories" のきめ細かいアクセス トークン

このエンドポイントは、次の粒度の細かいトークンの種類で動作します:

粒度の細かいトークンには次のアクセス許可セットが設定されている必要があります:

  • "Interaction limits" user permissions (write)

"Remove interaction restrictions from your public repositories" の HTTP 応答状態コード

状態コード説明
204

No Content

"Remove interaction restrictions from your public repositories" のコード サンプル

要求の例

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

Response

Status: 204