Points de terminaison d’API REST pour les hooks de pré-réception du référentiel
Utilisez l’API REST pour visualiser et modifier l’application des hooks de pré-réception qui sont disponibles pour un référentiel.
À propos des hooks de préréception du référentiel
Note
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 ».
Nom | Type | Description |
---|---|---|
name | string | Nom du hook. |
enforcement | string | État d’application du hook sur ce référentiel. |
configuration_url | string | URL 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 référentiel, le propriétaire de l’organisation ou la configuration globale. L’autorisation d’accéder au point de terminaison sur configuration_url
est déterminée au niveau du propriétaire ou de l’administrateur de site.
List pre-receive hooks for a repository
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.
Jetons d’accès affinés pour « List pre-receive hooks for a repository »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Pre-receive hooks" repository permissions (read)
Paramètres pour « List pre-receive hooks for a repository »
Nom, Type, Description |
---|
accept string Setting to |
Nom, Type, Description |
---|
owner string ObligatoireThe account owner of the repository. The name is not case sensitive. |
repo string ObligatoireThe name of the repository without the |
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: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." Default: |
direction string The direction to sort the results by. Default: Peut être: |
sort string Default: Peut être: |
Codes d’état de la réponse HTTP pour « List pre-receive hooks for a repository »
Code d’état | Description |
---|---|
200 | OK |
Exemples de code pour « List pre-receive hooks for a repository »
Exemple de requête
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/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
Jetons d’accès affinés pour « Get a pre-receive hook for a repository »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Pre-receive hooks" repository permissions (read)
Paramètres pour « Get a pre-receive hook for a repository »
Nom, Type, Description |
---|
accept string Setting to |
Nom, Type, Description |
---|
owner string ObligatoireThe account owner of the repository. The name is not case sensitive. |
repo string ObligatoireThe name of the repository without the |
pre_receive_hook_id integer ObligatoireThe unique identifier of the pre-receive hook. |
Codes d’état de la réponse HTTP pour « Get a pre-receive hook for a repository »
Code d’état | Description |
---|---|
200 | OK |
Exemples de code pour « Get a pre-receive hook for a repository »
Exemple de requête
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/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
For pre-receive hooks which are allowed to be configured at the repo level, you can set enforcement
Jetons d’accès affinés pour « Update pre-receive hook enforcement for a repository »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Pre-receive hooks" repository permissions (write)
Paramètres pour « Update pre-receive hook enforcement for a repository »
Nom, Type, Description |
---|
accept string Setting to |
Nom, Type, Description |
---|
owner string ObligatoireThe account owner of the repository. The name is not case sensitive. |
repo string ObligatoireThe name of the repository without the |
pre_receive_hook_id integer ObligatoireThe unique identifier of the pre-receive hook. |
Nom, Type, Description |
---|
enforcement string The state of enforcement for the hook on this repository. Peut être: |
Codes d’état de la réponse HTTP pour « Update pre-receive hook enforcement for a repository »
Code d’état | Description |
---|---|
200 | OK |
Exemples de code pour « Update pre-receive hook enforcement for a repository »
Exemple de requête
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/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
Deletes any overridden enforcement on this repository for the specified hook.
Responds with effective values inherited from owner and/or global level.
Jetons d’accès affinés pour « Remove pre-receive hook enforcement for a repository »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Pre-receive hooks" repository permissions (write)
Paramètres pour « Remove pre-receive hook enforcement for a repository »
Nom, Type, Description |
---|
accept string Setting to |
Nom, Type, Description |
---|
owner string ObligatoireThe account owner of the repository. The name is not case sensitive. |
repo string ObligatoireThe name of the repository without the |
pre_receive_hook_id integer ObligatoireThe unique identifier of the pre-receive hook. |
Codes d’état de la réponse HTTP pour « Remove pre-receive hook enforcement for a repository »
Code d’état | Description |
---|---|
200 | Responds with effective values inherited from owner and/or global level. |
Exemples de code pour « Remove pre-receive hook enforcement for a repository »
Exemple de requête
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/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"
}