Skip to main content

Cette version de GitHub Enterprise Server n'est plus disponible depuis le 2024-03-26. 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 ».

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

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

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). For more information, see "Using pagination in the REST API."

Default: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

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 »

Exemple de requête

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

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 »

Exemple de requête

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

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 »

Exemple de requête

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

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 »

Exemple de requête

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 }