Skip to main content

Enterprise Server 3.15 est actuellement disponible en tant que version finale (RC).

L’API REST est maintenant versionnée. 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

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

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.

Jetons d’accès affinés pour « List pre-receive hooks for an organization »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Pre-receive hooks" organization permissions (read)

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>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ 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

Jetons d’accès affinés pour « Get a pre-receive hook for an organization »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Pre-receive hooks" organization permissions (read)

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>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ 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

Jetons d’accès affinés pour « Update pre-receive hook enforcement for an organization »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Pre-receive hooks" organization permissions (write)

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>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ 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.

Jetons d’accès affinés pour « Remove pre-receive hook enforcement for an organization »

Ce point de terminaison fonctionne avec les types de jetons précis suivants:

Le jeton précis doit avoir l’ensemble d’autorisations suivant:

  • "Pre-receive hooks" organization permissions (write)

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>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ 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 }