Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

We've recently moved some of the REST API documentation. If you can't find what you're looking for, you might try the Actions REST API page.

Hooks pré-recebidos do repositório

Use a API REST para exibir e modificar a aplicação dos ganchos de pré-recebimento disponíveis para um repositório.

Sobre os ganchos de pré-recebimento de repositório

NomeTipoDescrição
namestringO nome do hook.
enforcementstringO estado de aplicação para o hook neste repositório.
configuration_urlstringURL para o ponto de extremidade em que a aplicação é definida.

Os possíveis valores para a imposição são enabled, disabled e testing. disabled indica que o gancho de pré-recebimento não será executado. enabled indica que ele será executado e rejeitará os pushes que resultem em um status diferente de zero. testing significa que o script será executado, mas não fará com que nenhum push seja rejeitado.

configuration_url pode ser um link para esse repositório, o proprietário da organização ou a configuração global. A autorização para acessar o ponto de extremidade em configuration_url é determinada no nível do proprietário ou do administrador do site.

List pre-receive hooks for a repository

Works with GitHub Apps

List all pre-receive hooks that are enabled or testing for this repository as well as any disabled hooks that are allowed to be enabled at the repository level. Pre-receive hooks that are disabled at a higher level and are not configurable will not be listed.

Parameters for "List pre-receive hooks for a repository"

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.

Query parameters
Name, Type, Description
per_pageinteger

The number of results per page (max 100).

Default: 30

pageinteger

Page number of the results to fetch.

Default: 1

directionstring

The direction to sort the results by.

Default: desc

Can be one of: asc, desc

sortstring

Default: created

Can be one of: created, updated, name

HTTP response status codes for "List pre-receive hooks for a repository"

Status codeDescription
200

OK

Code samples for "List pre-receive hooks for a repository"

get/repos/{owner}/{repo}/pre-receive-hooks
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pre-receive-hooks

Response

Status: 200
[ { "id": 42, "name": "Check Commits", "enforcement": "disabled", "configuration_url": "https://github.example.com/api/v3/orgs/octocat/pre-receive-hooks/42" } ]

Get a pre-receive hook for a repository

Works with GitHub Apps

Parameters for "Get a pre-receive hook for a repository"

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.

pre_receive_hook_idintegerRequired

The unique identifier of the pre-receive hook.

HTTP response status codes for "Get a pre-receive hook for a repository"

Status codeDescription
200

OK

Code samples for "Get a pre-receive hook for a repository"

get/repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pre-receive-hooks/PRE_RECEIVE_HOOK_ID

Response

Status: 200
{ "id": 42, "name": "Check Commits", "enforcement": "disabled", "configuration_url": "https://github.example.com/api/v3/orgs/octocat/pre-receive-hooks/42" }

Update pre-receive hook enforcement for a repository

Works with GitHub Apps

For pre-receive hooks which are allowed to be configured at the repo level, you can set enforcement

Parameters for "Update pre-receive hook enforcement for a repository"

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.

pre_receive_hook_idintegerRequired

The unique identifier of the pre-receive hook.

Body parameters
Name, Type, Description
enforcementstring

The state of enforcement for the hook on this repository.

Can be one of: enabled, disabled, testing

HTTP response status codes for "Update pre-receive hook enforcement for a repository"

Status codeDescription
200

OK

Code samples for "Update pre-receive hook enforcement for a repository"

patch/repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id}
curl -L \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pre-receive-hooks/PRE_RECEIVE_HOOK_ID \ -d '{"enforcement":"enabled"}'

Response

Status: 200
{ "id": 42, "name": "Check Commits", "enforcement": "enabled", "configuration_url": "https://github.example.com/api/v3/repos/octocat/hello-world/pre-receive-hooks/42" }

Remove pre-receive hook enforcement for a repository

Works with GitHub Apps

Deletes any overridden enforcement on this repository for the specified hook.

Responds with effective values inherited from owner and/or global level.

Parameters for "Remove pre-receive hook enforcement for a repository"

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.

pre_receive_hook_idintegerRequired

The unique identifier of the pre-receive hook.

HTTP response status codes for "Remove pre-receive hook enforcement for a repository"

Status codeDescription
200

Responds with effective values inherited from owner and/or global level.

Code samples for "Remove pre-receive hook enforcement for a repository"

delete/repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pre-receive-hooks/PRE_RECEIVE_HOOK_ID

Responds with effective values inherited from owner and/or global level.

Status: 200
{ "id": 42, "name": "Check Commits", "enforcement": "disabled", "configuration_url": "https://github.example.com/api/v3/orgs/octocat/pre-receive-hooks/42" }