Skip to main content

Interacciones de los repositorios

Repository interactions API permite a las personas con acceso administrativo o de propietario restringir temporalmente qué tipo de usuario puede comentar, abrir incidencias, o crear solicitudes de incorporación de cambios en un repositorio público.

Acerca de Repository interactions API

Repository interactions API permite a las personas con acceso administrativo o de propietario restringir temporalmente qué tipo de usuario puede comentar, abrir incidencias, o crear solicitudes de incorporación de cambios en un repositorio público. Cuando se habilitan las restricciones, solo el tipo de usuario de GitHub que hayas especificado podrá participar en las interacciones. Las restricciones expiran automáticamente después de una duración definida. Aquí puedes aprender más sobre los tipos de usuario de GitHub:

  • Usuarios existentes: al limitar las interacciones a existing_users, los nuevos usuarios con cuentas con menos de 24 horas de antigüedad que no hayan contribuido previamente y no sean colaboradores se restringirán temporalmente. en el repositorio.
  • Solo colaboradores: cuando limita las interacciones a contributors_only, se restringe temporalmente a los usuarios que no han contribuido previamente y no son colaboradores. en el repositorio.
  • Solo colaboradores: al limitar las interacciones a collaborators_only, los usuarios que no son colaboradores se restringirán temporalmente. en el repositorio.

Si se habilita un límite de interacción para el usuario u organización a la que pertenece el repositorio, éste no podrá cambiarse para el repositorio individual. En su lugar, use los puntos de conexión de interacciones de usuario u organización para cambiar el límite de interacción.

Get interaction restrictions for a repository

Funciona con 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.

Parámetros

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.

Códigos de estado de respuesta HTTP

status codeDescripción
200

OK

Ejemplos de código

get/repos/{owner}/{repo}/interaction-limits
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ 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

Funciona con 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.

Parámetros

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

Códigos de estado de respuesta HTTP

status codeDescripción
200

OK

409

Conflict

Ejemplos de código

put/repos/{owner}/{repo}/interaction-limits
curl \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ 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

Funciona con 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.

Parámetros

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.

Códigos de estado de respuesta HTTP

status codeDescripción
204

No Content

409

Conflict

Ejemplos de código

delete/repos/{owner}/{repo}/interaction-limits
curl \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://api.github.com/repos/OWNER/REPO/interaction-limits

Response

Status: 204