L’API Events peut retourner différents types d’événements déclenchés par l’activité sur GitHub. Chaque réponse d’événement contient des propriétés partagées, mais a un objet payload unique déterminé par son type d’événement. Les Propriétés communes des objets d’événement décrivent les propriétés partagées par tous les événements, et chaque type d’événement décrit les propriétés de payload propres à l’événement spécifique.
Propriétés courantes des objets d’événement
Les objets d’événement retournés par les points de terminaison de l’API Événements ont la même structure.
| Nom de l’attribut d’API d’événement | Type | Description |
|---|---|---|
id | integer | Identificateur unique de l’événement. |
type | string | Type de l'événement. Les événements utilisent la casse Pascal pour le nom. |
actor | object | Utilisateur qui a déclenché l’événement. |
actor.id | integer | Identificateur unique de l’acteur. |
actor.login | string | Nom d’utilisateur de l’acteur. |
actor.display_login | string | Format d’affichage spécifique du nom d’utilisateur. |
actor.gravatar_id | string | Identificateur unique du profil Gravatar de l’acteur. |
actor.url | string | URL de l’API REST utilisée pour récupérer l’objet utilisateur, qui comprend des informations supplémentaires sur l’utilisateur. |
actor.avatar_url | string | URL de l’image de profil de l’acteur. |
repo | object | Objet de dépôt où l’événement s’est produit. |
repo.id | integer | Identificateur unique du dépôt. |
repo.name | string | Nom du dépôt, qui comprend le nom du propriétaire et du dépôt. Par exemple, octocat/hello-world est le nom du dépôt hello-world appartenant au compte personnel octocat. |
repo.url | string | URL de l’API REST utilisée pour récupérer l’objet de dépôt, qui comprend des informations supplémentaires sur le dépôt. |
payload | object | L’objet de charge utile d’événement est propre au type d’événement. Consultez le type d’événement ci-dessous pour l’objet payload de l’API d’événement. |
public | boolean | Indique si l’événement est visible pour tous les utilisateurs. |
created_at | string | La date et l’heure de déclenchement de l’événement. Il est mis en forme conformément à la norme ISO 8601. |
org | object | L’organisation choisie par l’acteur pour effectuer une action qui déclenche l’événement. |
_La propriété apparaît dans l’objet d’événement uniquement s’il est applicable._ |
| org.id | integer | Identificateur unique de l’organisation. |
| org.login | string | Nom de l’organisation. |
| org.gravatar_id | string | Identificateur unique du profil Gravatar de l’organisation. |
| org.url | string | L’URL de l’API REST utilisée pour récupérer l’objet de l’organisation, qui comprend des informations supplémentaires sur l’organisation. |
| org.avatar_url | string | L’URL de l’image de profil de l’organisation. |
Exemple d’objet d’événement WatchEvent
Cet exemple montre le format de la réponse WatchEvent en cas d’utilisation de l’API Événements.
HTTP/2 200
Link: <https://api.github.com/resource?page=2>; rel="next",
<https://api.github.com/resource?page=5>; rel="last"
[
{
"id": "12345",
"type": "WatchEvent",
"actor": {
"id": 1,
"login": "octocat",
"display_login": "octocat",
"gravatar_id": "",
"url": "https://api.github.com/users/octocat",
"avatar_url": "https://github.com/images/error/octocat_happy.gif"
},
"repo": {
"id": 3,
"name": "octocat/Hello-World",
"url": "https://api.github.com/repos/octocat/Hello-World"
},
"payload": {
"action": "started"
},
"public": false,
"created_at": "2011-09-06T17:26:27Z",
"org": {
"id": 1,
"login": "github",
"gravatar_id": "",
"url": "https://api.github.com/orgs/github",
"avatar_url": "https://github.com/images/error/octocat_happy.gif"
},
}
]
CommitCommentEvent
Un commentaire de commit est créé. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’information, consultez Points de terminaison d’API REST pour le commit de commentaires.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet d'événement payload pour CommitCommentEvent
| Clé | Type | Description |
|---|---|---|
action | string | action effectuée. Peut être created. |
comment | object | Ressource commentaire de validation. |
CréerÉvénement
Une branche ou une étiquette Git est créée. Pour plus d’informations, consultez « Points de terminaison d’API REST pour la base de données Git ».
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour CreateEvent
| Clé | Type | Description |
|---|---|---|
ref | string | Branche git ref de ressource, ou null si ref_type est repository. |
ref_type | string | Type d’objet de référence Git créé dans le référentiel. Il peut être branch, tag ou repository. |
full_ref | string | Ressource ref entièrement formée, ce qui signifie que pour les branches le format est refs/heads/<branch_name>. |
master_branch | string | Nom de la branche par défaut du référentiel (généralement main). |
description | string | Description actuelle du référentiel. |
pusher_type | string | Peut être user ou une clé de déploiement. |
SupprimerÉvénement
Une branche ou une étiquette Git est supprimée. Pour plus d’informations, consultez l’API REST Points de terminaison d’API REST pour la base de données Git.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour DeleteEvent
| Clé | Type | Description |
|---|---|---|
ref | string | Branche git ref de ressource. |
ref_type | string | Type d’objet de référence Git supprimé dans le référentiel. La valeur peut être branch ou tag. |
full_ref | string | La ressource ref entièrement formée, ce qui signifie que pour les branches, le format est refs/heads/<branch_name>. |
pusher_type | string | Peut être user ou une clé de déploiement. |
ÉvénementDeDiscussion
Une discussion est créée dans un référentiel. Pour plus d’informations, consultez « Documentation GitHub Discussions ».
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet Event payload pour DiscussionEvent
| Key | Type | Descriptif |
|---|---|---|
action | string | action effectuée. Peut être created. |
discussion | object | La discussion qui a été créée. |
ForkEvent
Un utilisateur duplique un dépôt. Pour plus d’informations, consultez « Points de terminaison d’API REST pour les référentiels ».
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet événementiel payload pour ForkEvent
| Clé | Type | Description |
|---|---|---|
action | string | action effectuée. Peut être forked. |
forkee | object | Ressource repository créée. |
GollumEvent
Une page wiki est créée ou mise à jour. Pour plus d’informations, consultez « À propos des wikis ».
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour GollumEvent
| Clé | Type | Description |
|---|---|---|
pages | array | Pages qui ont été mises à jour. |
pages[][page_name] | string | Nom de la page. |
pages[][title] | string | Titre de la page. |
pages[][summary] | string | Remarque facultative sur la page. Peut être null. |
pages[][action] | string | Action qui a été effectuée dans la page Peut être created ou edited. |
pages[][sha] | string | Algorithme SHA de commit le plus récent de la page. |
pages[][html_url] | string | Pointe vers la page wiki HTML. |
IssueCommentEvent
Activité liée à un problème ou à un commentaire de demande de tirage. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez Points de terminaison d’API REST pour les problèmes.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour IssueCommentEvent
| Clé | Type | Description |
|---|---|---|
action | string | Action effectuée sur le commentaire. Peut être created. |
issue |
|
`object` | [Problème](/rest/issues) auquel appartient le commentaire.
`comment`
|
`object` | Le [commentaire](/rest/issues#comments) proprement dit.
IssuesEvent
Activité liée à un problème. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez Points de terminaison d’API REST pour les problèmes.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet d'événement payload pour IssuesEvent
| Clé | Type | Description |
|---|---|---|
action | string | Action qui a été effectuée. Peut être l’un des opened, closed, reopened. |
issue | object | Le problème lui-même. |
assignee | object |
`assignees` | `array` | Tableau facultatif d'objets des responsables détaillant les responsables sur la problématique.
`label` | `object` | Étiquette facultative qui a été ajoutée ou supprimée du problème.
`labels` | `array` | Tableau facultatif d’objets d’étiquette décrivant les étiquettes sur le problème.
| |
ÉvénementDeMembre
Activité liée aux collaborateurs du référentiel. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez Points de terminaison d’API REST pour les collaborateurs.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour MemberEvent
| Clé | Type | Description |
|---|---|---|
action | string | Action qui a été effectuée. Peut être added pour indiquer qu’un utilisateur a accepté une invitation à un dépôt. |
member |
|
`object` | [Utilisateur](/rest/users) ajouté.
événement public
Quand un dépôt privé est rendu public.
Objet payload d’événement pour PublicEvent
Cet événement retourne un objet payload vide.
PullRequestEvent
Activité liée aux demandes de tirage. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez Points de terminaison d’API REST pour les pull requests.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour PullRequestEvent
| Clé | Type | Description |
|---|---|---|
action | string | Action qui a été effectuée. Il peut s’agir de opened, closed, merged, reopened, assigned, unassigned, labeled ou unlabeled. |
number |
|
`integer` | Numéro de la demande de tirage.
`pull_request`
|
`object` | La [pull request](/rest/pulls) elle-même.
| | assignee|object | Utilisateur facultatif qui a été affecté ou non affecté à partir du problème.
`assignees`
|
`array` | Tableau facultatif d'objets des responsables détaillant les responsables sur la problématique.
`label`
|
`object` | Étiquette facultative qui a été ajoutée ou supprimée du problème si l’action était `labeled` ou `unlabeled`.
`labels`
|
`array` | Tableau facultatif d'objets étiquettes décrivant les labels sur la pull request si l’action était `labeled` ou `unlabeled`.
| |
PullRequestReviewEvent
Activité liée aux révisions de demande de tirage. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez Points de terminaison d’API REST pour les pull requests.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet d’événement payload pour PullRequestReviewEvent
| Key | Type | Descriptif |
|---|---|---|
action | string | Action qui a été effectuée. Peut être created, updated ou dismissed. |
pull_request | object | La pull request à laquelle se rapporte la révision. |
review | object | La révision qui a été affectée. |
PullRequestReviewCommentEvent
Activité liée aux commentaires de révision des demandes de tirage dans la différence unifiée de la demande de tirage. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez Points de terminaison d’API REST pour les pull requests.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet d'événement payload pour PullRequestReviewCommentEvent
| Clé | Type | Description |
|---|---|---|
action | string | Action effectuée sur le commentaire. Peut être created. |
pull_request |
|
`object` | [Demande de tirage](/rest/pulls) à laquelle appartient le commentaire.
`comment`
|
`object` | Le [commentaire](/rest/pulls#comments) lui-même.
PushEvent
Un ou plusieurs commits sont poussés sur une branche ou une étiquette de dépôt.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet d’événement payload pour PushEvent
| Key | Type | Descriptif |
|---|---|---|
repository_id | integer | Identificateur unique du référentiel où le push s’est produit. |
push_id | integer | L’identificateur unique pour le push. |
ref | string | La git ref complète qui a été poussée. Exemple : refs/heads/main. |
head | string | SHA du commit le plus récent sur ref après la poussée. |
before | string | SHA du commit le plus récent sur ref avant la poussée. |
ÉvénementDeSortie
Activité liée à une version. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez l’API REST Points de terminaison d’API REST pour les versions et les ressources de mise en production.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour ReleaseEvent
| Clé | Type | Description |
|---|---|---|
action | string | Action qui a été effectuée. Peut être published. |
release |
|
`object` | Objet [release](/rest/releases/releases#get-a-release).
WatchEvent
Quand une personne met une étoile à un dépôt. Le type d’activité est spécifié dans la propriété action de l’objet de charge utile. Pour plus d’informations, consultez Points de terminaison d’API REST pour l’activité.
L’objet d’événement comprend des propriétés communes à tous les événements. Chaque objet d’événement a une propriété payload et la valeur est unique pour chaque type d’événement. L’objet payload de cet événement est décrit ci-dessous.
Objet payload d’événement pour WatchEvent
| Clé | Type | Description |
|---|---|---|
action | string | Action qui a été effectuée. Actuellement, peut être seulement started. |