Skip to main content
The REST API is now versioned. For more information, see "About API versioning."

Repositoryinteraktionen

Mit der Repositoryinteraktions-API können Personen mit Besitzer- oder Administratorzugriff vorübergehend einschränken, welcher Benutzertyp in einem öffentlichen Repository Kommentare abgeben, Issues öffnen oder Pull Requests erstellen darf.

Informationen zur Repositoryinteraktions-API

Mit der Repositoryinteraktions-API können Personen mit Besitzer- oder Administratorzugriff vorübergehend einschränken, welcher Benutzertyp in einem öffentlichen Repository Kommentare abgeben, Issues öffnen oder Pull Requests erstellen darf. Wenn Einschränkungen aktiviert sind, kann nur der angegebene Typ von GitHub-Benutzer an Interaktionen teilnehmen. Einschränkungen laufen nach einem definierten Zeitraum automatisch ab. Hier findest du weitere Informationen zu den Typen von GitHub-Benutzern:

  • Vorhandene Benutzer: Wenn du Interaktionen auf existing_users beschränkst, werden neue Benutzer, deren Konten noch keine 24 Stunden alt sind, die noch keinen Beitrag geleistet haben und die keine Mitarbeiter sind, vorübergehend eingeschränkt. im Repository.
  • Nur Mitwirkende: Wenn du Interaktionen auf contributors_only beschränkst, werden Benutzer, die zuvor nicht mitgewirkt haben und keine Projektmitarbeiter sind, vorübergehend eingeschränkt. im Repository.
  • Nur Mitarbeiter: Wenn du Interaktionen auf collaborators_only beschränkst, werden Benutzer, die keine Mitarbeiter sind, vorübergehend eingeschränkt. im Repository.

Wenn ein Interaktionsgrenzwert für den Benutzer oder die Organisation, die Besitzer des Repositorys ist, aktiviert ist, kann der Grenzwert für das einzelne Repository nicht geändert werden. Verwende stattdessen die Interaktionsendpunkte Benutzer oder Organisation, um den Interaktionsgrenzwert zu ändern.

Get interaction restrictions for a repository

Funktioniert mit GitHub Apps

Shows which type of GitHub user can interact with this repository and when the restriction expires. If there are no restrictions, you will see an empty response.

Parameter

Headers
Name, Type, Description
acceptstring

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

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

HTTP-Antwortstatuscodes

StatuscodeBESCHREIBUNG
200

OK

Codebeispiele

get/repos/{owner}/{repo}/interaction-limits
curl \ -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

Response

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

Set interaction restrictions for a repository

Funktioniert mit GitHub Apps

Temporarily restricts interactions to a certain type of GitHub user within the given repository. You must have owner or admin access to set these restrictions. If an interaction limit is set for the user or organization that owns this repository, you will receive a 409 Conflict response and will not be able to use this endpoint to change the interaction limit for a single repository.

Parameter

Headers
Name, Type, Description
acceptstring

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

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

Body parameters
Name, Type, Description
limitstringRequired

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

Can be one of: existing_users, contributors_only, collaborators_only

expirystring

The duration of the interaction restriction. Default: one_day.

Can be one of: one_day, three_days, one_week, one_month, six_months

HTTP-Antwortstatuscodes

StatuscodeBESCHREIBUNG
200

OK

409

Conflict

Codebeispiele

put/repos/{owner}/{repo}/interaction-limits
curl \ -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"}'

Response

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

Remove interaction restrictions for a repository

Funktioniert mit GitHub Apps

Removes all interaction restrictions from the given repository. You must have owner or admin access to remove restrictions. If the interaction limit is set for the user or organization that owns this repository, you will receive a 409 Conflict response and will not be able to use this endpoint to change the interaction limit for a single repository.

Parameter

Headers
Name, Type, Description
acceptstring

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

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

HTTP-Antwortstatuscodes

StatuscodeBESCHREIBUNG
204

No Content

409

Conflict

Codebeispiele

delete/repos/{owner}/{repo}/interaction-limits
curl \ -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

Response

Status: 204