Skip to main content
L’API REST est maintenant versionnée. Pour plus d’informations, consultez « À propos des versions de l’API ».

Points de terminaison d’API REST pour les interactions utilisateur

Utilisez l’API REST pour restreindre temporairement le type d’utilisateur qui peut commenter, ouvrir des problèmes ou créer des demandes de tirage sur vos référentiels publics.

À propos des interactions utilisateur

Vous pouvez utiliser l’API REST pour restreindre temporairement le type d’utilisateur qui peut commenter, ouvrir des problèmes ou créer des demandes de tirage sur vos référentiels publics. Lorsque des restrictions sont activées, seul le type spécifié d’utilisateur GitHub pourra participer aux interactions. Les restrictions expirent automatiquement après une durée définie. Voici plus d’informations sur les types d’utilisateurs GitHub :

  • Utilisateurs existants : Lorsque vous limitez les interactions aux existing_users, les nouveaux utilisateurs avec des comptes de moins de 24 heures qui n’ont pas déjà contribué et qui ne sont pas collaborateurs seront temporairement limités. à partir de l’interaction avec vos référentiels.
  • Contributeurs uniquement : Lorsque vous limitez les interactions aux contributors_only, les utilisateurs qui n’ont pas déjà contribué et qui ne sont pas collaborateurs sont temporairement limités. à partir de l’interaction avec vos référentiels.
  • Collaborateurs uniquement : lorsque vous limitez les interactions en choisissant collaborators_only, les utilisateurs qui ne sont pas des collaborateurs sont temporairement limités à partir de l’interaction avec vos référentiels.

La définition de la limite d’interaction au niveau de l’utilisateur remplace toutes les limites d’interaction définies pour les référentiels individuels appartenant à l’utilisateur. Pour définir des limites d’interaction différentes pour les référentiels individuels appartenant à l’utilisateur, utilisez plutôt des points de terminaison d’interaction de référentiel.

Get interaction restrictions for your public repositories

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

Jetons d’accès affinés pour « Get interaction restrictions for your public repositories »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Interaction limits" user permissions (read)

Codes d’état de la réponse HTTP pour « Get interaction restrictions for your public repositories »

Code d’étatDescription
200

Default response

204

Response when there are no restrictions

Exemples de code pour « Get interaction restrictions for your public repositories »

Exemple de requête

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.

Jetons d’accès affinés pour « Set interaction restrictions for your public repositories »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Interaction limits" user permissions (write)

Paramètres pour « Set interaction restrictions for your public repositories »

En-têtes
Nom, Type, Description
accept string

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

Paramètres du corps
Nom, Type, Description
limit string Obligatoire

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

Peut être: existing_users, contributors_only, collaborators_only

expiry string

The duration of the interaction restriction. Default: one_day.

Peut être: one_day, three_days, one_week, one_month, six_months

Codes d’état de la réponse HTTP pour « Set interaction restrictions for your public repositories »

Code d’étatDescription
200

OK

422

Validation failed, or the endpoint has been spammed.

Exemples de code pour « Set interaction restrictions for your public repositories »

Exemple de requête

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.

Jetons d’accès affinés pour « Remove interaction restrictions from your public repositories »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Interaction limits" user permissions (write)

Codes d’état de la réponse HTTP pour « Remove interaction restrictions from your public repositories »

Code d’étatDescription
204

No Content

Exemples de code pour « Remove interaction restrictions from your public repositories »

Exemple de requête

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