Skip to main content

Cette version de GitHub Enterprise Server n'est plus disponible depuis le 2023-09-12. Aucune publication de correctifs n’est effectuée, même pour les problèmes de sécurité critiques. Pour de meilleures performances, une sécurité améliorée et de nouvelles fonctionnalités, effectuez une mise à niveau vers la dernière version de GitHub Enterprise. Pour obtenir de l’aide sur la mise à niveau, contactez le support GitHub Enterprise.

Une fois qu’un administrateur de site a mis à niveau votre instance Enterprise Server vers Enterprise Server 3.9 ou ultérieur, l’API REST est versionnée. Pour savoir comment trouver la version de votre instance, consultez « À propos des versions de GitHub Docs ». Pour plus d’informations, consultez « À propos des versions de l’API ».

Crochets de préréception d’une 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

Attributs d’objet

NomTypeDescription
namestringNom du hook.
enforcementstringÉtat d’application du hook sur ce référentiel.
allow_downstream_configurationbooleanSi des référentiels peuvent remplacer l’application.
configuration_urlstringURL du point de terminaison où l’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

Compatible avec GitHub Apps

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.

Paramètres pour « List pre-receive hooks for an organization »

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

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

Paramètres de requête
Nom, Type, Description
per_page integer

The number of results per page (max 100).

Default: 30

page integer

Page number of the results to fetch.

Default: 1

direction string

The direction to sort the results by.

Default: desc

Peut être: asc, desc

sort string

The sort order for the response collection.

Default: created

Peut être: created, updated, name

Codes d’état de la réponse HTTP pour « List pre-receive hooks for an organization »

Code d’étatDescription
200

OK

Exemples de code pour « List pre-receive hooks for an organization »

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

Response

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

Compatible avec GitHub Apps

Paramètres pour « Get a pre-receive hook for an organization »

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

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

pre_receive_hook_id integer Obligatoire

The unique identifier of the pre-receive hook.

Codes d’état de la réponse HTTP pour « Get a pre-receive hook for an organization »

Code d’étatDescription
200

OK

Exemples de code pour « Get a pre-receive hook for an organization »

get/orgs/{org}/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/orgs/ORG/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/admin/pre-receive-hooks/42", "allow_downstream_configuration": true }

Update pre-receive hook enforcement for an organization

Compatible avec GitHub Apps

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

Paramètres pour « Update pre-receive hook enforcement for an organization »

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

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

pre_receive_hook_id integer Obligatoire

The unique identifier of the pre-receive hook.

Paramètres du corps
Nom, Type, Description
enforcement string

The state of enforcement for the hook on this repository.

allow_downstream_configuration boolean

Whether repositories can override enforcement.

Codes d’état de la réponse HTTP pour « Update pre-receive hook enforcement for an organization »

Code d’étatDescription
200

OK

Exemples de code pour « Update pre-receive hook enforcement for an organization »

patch/orgs/{org}/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/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

Compatible avec GitHub Apps

Removes any overrides for this hook at the org level for this org.

Paramètres pour « Remove pre-receive hook enforcement for an organization »

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

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

Paramètres de chemin d’accès
Nom, Type, Description
org string Obligatoire

The organization name. The name is not case sensitive.

pre_receive_hook_id integer Obligatoire

The unique identifier of the pre-receive hook.

Codes d’état de la réponse HTTP pour « Remove pre-receive hook enforcement for an organization »

Code d’étatDescription
200

OK

Exemples de code pour « Remove pre-receive hook enforcement for an organization »

delete/orgs/{org}/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/orgs/ORG/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/admin/pre-receive-hooks/42", "allow_downstream_configuration": true }