REST-API-Endpunkte für Repositoryinteraktionen
Verwende die REST-API, um vorübergehend einzuschränken, welcher Benutzertyp in einem öffentlichen Repository Kommentare eingeben, Issues eröffnen oder Pull Requests erstellen darf.
Wer kann dieses Feature verwenden?
People with owner or admin access to temporarily restrict which type of user can comment, open issues, or create pull requests in a public repository.
Informationen zu Repositoryinteraktionen
Personen mit Besitzer- oder Administratorzugriff können über die REST-API vorübergehend einschränken, welcher Benutzertyp in einem öffentlichen Repository Kommentare eingeben, Issues erö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
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.
Differenzierte Zugriffstoken für "Get interaction restrictions for a repository"
Dieser Endpunkt funktioniert mit den folgenden differenzierten Tokentypen.:
- GitHub-App-Benutzerzugriffstoken
- Zugriffstoken für GitHub App-Installation
- Differenzierte persönliche Zugriffstoken
Das differenzierte Token muss einen der folgenden Berechtigungssätze aufweisen.:
- "Administration" repository permissions (read)
Parameter für „Get interaction restrictions for a repository“
Name, type, BESCHREIBUNG |
---|
accept string Setting to |
Name, type, BESCHREIBUNG |
---|
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository without the |
HTTP-Antwortstatuscodes für „Get interaction restrictions for a repository“
Statuscode | BESCHREIBUNG |
---|---|
200 | OK |
Codebeispiele für „Get interaction restrictions for a repository“
Anforderungsbeispiel
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/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
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.
Differenzierte Zugriffstoken für "Set interaction restrictions for a repository"
Dieser Endpunkt funktioniert mit den folgenden differenzierten Tokentypen.:
- GitHub-App-Benutzerzugriffstoken
- Zugriffstoken für GitHub App-Installation
- Differenzierte persönliche Zugriffstoken
Das differenzierte Token muss einen der folgenden Berechtigungssätze aufweisen.:
- "Administration" repository permissions (write)
Parameter für „Set interaction restrictions for a repository“
Name, type, BESCHREIBUNG |
---|
accept string Setting to |
Name, type, BESCHREIBUNG |
---|
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository without the |
Name, type, BESCHREIBUNG |
---|
limit string ErforderlichThe type of GitHub user that can comment, open issues, or create pull requests while the interaction limit is in effect. Kann eine der Folgenden sein: |
expiry string The duration of the interaction restriction. Default: Kann eine der Folgenden sein: |
HTTP-Antwortstatuscodes für „Set interaction restrictions for a repository“
Statuscode | BESCHREIBUNG |
---|---|
200 | OK |
409 | Conflict |
Codebeispiele für „Set interaction restrictions for a repository“
Anforderungsbeispiel
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/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
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.
Differenzierte Zugriffstoken für "Remove interaction restrictions for a repository"
Dieser Endpunkt funktioniert mit den folgenden differenzierten Tokentypen.:
- GitHub-App-Benutzerzugriffstoken
- Zugriffstoken für GitHub App-Installation
- Differenzierte persönliche Zugriffstoken
Das differenzierte Token muss einen der folgenden Berechtigungssätze aufweisen.:
- "Administration" repository permissions (write)
Parameter für „Remove interaction restrictions for a repository“
Name, type, BESCHREIBUNG |
---|
accept string Setting to |
Name, type, BESCHREIBUNG |
---|
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository without the |
HTTP-Antwortstatuscodes für „Remove interaction restrictions for a repository“
Statuscode | BESCHREIBUNG |
---|---|
204 | No Content |
409 | Conflict |
Codebeispiele für „Remove interaction restrictions for a repository“
Anforderungsbeispiel
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/repos/OWNER/REPO/interaction-limits
Response
Status: 204