Points de terminaison d’API REST pour hooks de pré-réception d’organisation
Utilisez l’API REST pour visualiser et modifier l’application des hooks de pré-réception qui sont disponibles pour une organisation.
À propos des hooks de préréception de l’organisation
Remarque
Ces points de terminaison prennent uniquement en charge l’authentification à l’aide d’un personal access token (classic). Pour plus d’informations, consultez « Gestion de vos jetons d’accès personnels ».
Attributs d’objet
| Nom | Type | Description |
|---|---|---|
name | string | Nom du crochet. |
enforcement | string | État d’application du hook sur ce référentiel. |
allow_downstream_configuration | boolean | Si des référentiels peuvent remplacer l’application. |
configuration_url | string | URL du point de terminaison où la mise en application est définie. |
Les valeurs possibles pour enforcement sont enabled, disabled et testing.
disabled indique que le hook pré-réception ne s’exécute pas.
enabled indique qu’il s’exécute et rejette tous les envois qui entraînent un état différent de zéro.
testing signifie que le script s’exécute, mais n’entraîne pas de rejet des envois.
`configuration_url` peut être un lien vers ce point de terminaison ou la configuration globale de ce hook. Seuls les administrateurs de site sont en mesure d’accéder à la configuration globale.
List pre-receive hooks for an organization
List all pre-receive hooks that are enabled or testing for this organization as well as any disabled hooks that can be configured at the organization level. Globally disabled pre-receive hooks that do not allow downstream configuration are not listed.
Fine-grained access tokens for "List pre-receive hooks for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Organization pre-receive hooks" organization permissions (read)
Paramètres pour «List pre-receive hooks for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string RequisThe organization name. The name is not case sensitive. |
| Nom, Type, Description |
|---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." Par défaut: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." Par défaut: |
direction string The direction to sort the results by. Par défaut: Peut être l'un des: |
sort string The sort order for the response collection. Par défaut: Peut être l'un des: |
HTTP response status codes for "List pre-receive hooks for an organization"
| Status code | Description |
|---|---|
200 | OK |
Code samples for "List pre-receive hooks for an organization"
Request example
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooksResponse
Status: 200[
{
"id": 42,
"name": "Check Commits",
"enforcement": "disabled",
"configuration_url": "https://github.example.com/api/v3/admin/pre-receive-hooks/42",
"allow_downstream_configuration": true
}
]Get a pre-receive hook for an organization
Fine-grained access tokens for "Get a pre-receive hook for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Organization pre-receive hooks" organization permissions (read)
Paramètres pour «Get a pre-receive hook for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string RequisThe organization name. The name is not case sensitive. |
pre_receive_hook_id string RequisThe unique identifier of the pre-receive hook. |
HTTP response status codes for "Get a pre-receive hook for an organization"
| Status code | Description |
|---|---|
200 | OK |
Code samples for "Get a pre-receive hook for an organization"
Request example
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooks/PRE_RECEIVE_HOOK_IDResponse
Status: 200{
"id": 42,
"name": "Check Commits",
"enforcement": "disabled",
"configuration_url": "https://github.example.com/api/v3/admin/pre-receive-hooks/42",
"allow_downstream_configuration": true
}Update pre-receive hook enforcement for an organization
For pre-receive hooks which are allowed to be configured at the org level, you can set enforcement and allow_downstream_configuration
Fine-grained access tokens for "Update pre-receive hook enforcement for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Organization pre-receive hooks" organization permissions (write)
Paramètres pour «Update pre-receive hook enforcement for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string RequisThe organization name. The name is not case sensitive. |
pre_receive_hook_id string RequisThe unique identifier of the pre-receive hook. |
| Nom, Type, Description |
|---|
enforcement string The state of enforcement for the hook on this repository. |
allow_downstream_configuration boolean Whether repositories can override enforcement. |
HTTP response status codes for "Update pre-receive hook enforcement for an organization"
| Status code | Description |
|---|---|
200 | OK |
Code samples for "Update pre-receive hook enforcement for an organization"
Request example
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooks/PRE_RECEIVE_HOOK_ID \
-d '{"enforcement":"enabled","allow_downstream_configuration":false}'Response
Status: 200{
"id": 42,
"name": "Check Commits",
"enforcement": "enabled",
"configuration_url": "https://github.example.com/api/v3/orgs/octocat/pre-receive-hooks/42",
"allow_downstream_configuration": false
}Remove pre-receive hook enforcement for an organization
Removes any overrides for this hook at the org level for this org.
Fine-grained access tokens for "Remove pre-receive hook enforcement for an organization"
This endpoint works with the following fine-grained token types:
- GitHub App user access tokens
- GitHub App installation access tokens
- Fine-grained personal access tokens
The fine-grained token must have the following permission set:
- "Organization pre-receive hooks" organization permissions (write)
Paramètres pour «Remove pre-receive hook enforcement for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string RequisThe organization name. The name is not case sensitive. |
pre_receive_hook_id string RequisThe unique identifier of the pre-receive hook. |
HTTP response status codes for "Remove pre-receive hook enforcement for an organization"
| Status code | Description |
|---|---|
200 | OK |
Code samples for "Remove pre-receive hook enforcement for an organization"
Request example
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooks/PRE_RECEIVE_HOOK_IDResponse
Status: 200{
"id": 42,
"name": "Check Commits",
"enforcement": "disabled",
"configuration_url": "https://github.example.com/api/v3/admin/pre-receive-hooks/42",
"allow_downstream_configuration": true
}