API событий может возвращать различные типы событий, инициируемые действием в GitHub. Каждый ответ события содержит общие свойства, но имеет уникальный объект payload
, определенный его типом события. В разделе Общие свойства объекта событий описываются свойства, общие для всех событий, а каждый тип события описывает свойства payload
, уникальные для конкретного события.
Общие свойства объекта события
Объекты событий, возвращаемые конечными точками API событий, имеют одинаковую структуру.
Имя атрибута API событий | Тип | Описание |
---|---|---|
id | integer | Уникальный идентификатор события. |
type | string | Тип события. События используют PascalCase для имени. |
actor | object | Пользователь, который активировал событие. |
actor.id | integer | Уникальный идентификатор субъекта. |
actor.login | string | Имя пользователя субъекта. |
actor.display_login | string | Конкретный формат отображения имени пользователя. |
actor.gravatar_id | string | Уникальный идентификатор профиля Gravatar для субъекта. |
actor.url | string | URL-адрес REST API, используемый для получения объекта пользователя, который содержит дополнительные сведения о пользователе. |
actor.avatar_url | string | URL-адрес изображения профиля субъекта. |
repo | object | Объект репозитория, в котором произошло событие. |
repo.id | integer | Уникальный идентификатор репозитория. |
repo.name | string | Имя репозитория, включающее имя владельца и репозитория. Например, octocat/hello-world — это имя репозитория hello-world , принадлежащего личной учетной записи octocat . |
repo.url | string | URL-адрес REST API, используемый для получения объекта репозитория, который содержит дополнительные сведения о репозитории. |
payload | object | Объект полезных данных события уникален для каждого типа события. См. тип события ниже для объекта payload API событий. |
public | boolean | Отображается ли событие для всех пользователей. |
created_at | string | Дата и время активации события. В формате по стандарту ISO 8601. |
org | object | Организация, выбранная субъектом для выполнения действия, которое активировало событие. Свойство отображается в объекте события только в том случае, если это применимо. |
org.id | integer | Уникальный идентификатор для организации. |
org.login | string | Название организации. |
org.gravatar_id | string | Уникальный идентификатор профиля Gravatar для организации. |
org.url | string | URL-адрес REST API, используемый для получения объекта организации, который содержит дополнительные сведения об организации. |
org.avatar_url | string | URL-адрес изображения профиля организации. |
Пример объекта события WatchEvent
В этом примере показан формат ответа WatchEvent при использовании API событий.
HTTP/2 200
Link: <https://api.github.com/resource?page=2>; rel="next",
<https://api.github.com/resource?page=5>; rel="last"
[
{
"type": "WatchEvent",
"public": false,
"payload": {
},
"repo": {
"id": 3,
"name": "octocat/Hello-World",
"url": "https://api.github.com/repos/octocat/Hello-World"
},
"actor": {
"id": 1,
"login": "octocat",
"gravatar_id": "",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"url": "https://api.github.com/users/octocat"
},
"org": {
"id": 1,
"login": "github",
"gravatar_id": "",
"url": "https://api.github.com/orgs/github",
"avatar_url": "https://github.com/images/error/octocat_happy.gif"
},
"created_at": "2011-09-06T17:26:27Z",
"id": "12345"
}
]
CommitCommentEvent
Создается комментарий к фиксации. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для комментариев фиксации".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для CommitCommentEvent
Ключ | Тип | Описание |
---|---|---|
action | string | выполненные операции; Может иметь значение created . |
comment | object | Ресурс комментария фиксации. |
CreateEvent
Создается ветвь или тег Git. Дополнительные сведения см. в разделе Конечные точки REST API для базы данных Git.
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для CreateEvent
Ключ | Тип | Описание |
---|---|---|
ref | string | Ресурс git ref или null если ref_type это repository . |
ref_type | string | Тип объекта Git ref, созданного в репозитории. Может быть либо branch , tag либо repository . |
master_branch | string | Имя ветви по умолчанию в репозитории (обычно это main ). |
description | string | Текущее описание репозитория. |
pusher_type | string | Может быть user или ключом развертывания. |
DeleteEvent
Удаляется ветвь или тег Git. Дополнительные сведения см. в REST API AUTOTITLE.
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для DeleteEvent
Ключ | Тип | Описание |
---|---|---|
ref | string | Ресурс git ref . |
ref_type | string | Тип объекта Git ref, удаленного в репозитории. Может быть либо branch , либо tag . |
ForkEvent
Пользователь создает вилку репозитория. Дополнительные сведения см. в разделе Конечные точки REST API для репозиториев.
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для ForkEvent
Ключ | Тип | Описание |
---|---|---|
forkee | object | Созданный ресурс repository . |
GollumEvent
Вики-страница создается или обновляется. Дополнительные сведения см. в разделе Сведения о вики-сайтах.
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для GollumEvent
Ключ | Тип | Описание |
---|---|---|
pages | array | Обновленные страницы. |
pages[][page_name] | string | Имя страницы. |
pages[][title] | string | Заголовок текущей страницы. |
pages[][action] | string | Действие, которое было выполнено на странице. Может иметь значение created или edited . |
pages[][sha] | string | Последняя фиксация SHA страницы. |
pages[][html_url] | string | Указывает на вики-страницу HTML. |
IssueCommentEvent
Действия, связанные комментарием к проблеме или запросу на вытягивание. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для проблем".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для IssueCommentEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, выполненное с комментарием. Может иметь значение created , edited или deleted . |
changes | object | Изменения в комментарии, если выполнялось действие edited . |
changes[body][from] | string | Предыдущая версия текста, если действие было edited . |
issue | object | Проблема, к котором относится комментарий. |
comment | object | Сам комментарий. |
IssuesEvent
Действие, связанное с проблемой. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для проблем".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для IssuesEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. Это может быть opened , edited , closed , reopened , assigned , unassigned , labeled или unlabeled . |
issue | object | Сама проблема. |
changes | object | Изменения в проблеме, если выполнялось действие edited . |
changes[title][from] | string | Предыдущая версия заголовка, если выполнялось действие edited . |
changes[body][from] | string | Предыдущая версия текста, если действие было edited . |
assignee | object | Необязательный пользователь, который получил или не получил назначение из проблемы. |
label | object | Необязательная метка, которая была добавлена или удалена из проблемы. |
MemberEvent
Действия, связанные с участниками совместной работы в репозитории. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для участников совместной работы".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для MemberEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. Может иметь значение added , которое указывает, что пользователь принял приглашение в репозиторий. |
member | object | Пользователь, который был добавлен. |
changes | object | Изменения разрешений участника совместной работы, если было выполнено действие edited . |
changes[old_permission][from] | string | Предыдущие разрешения участника совместной работы, если было выполнено действие edited . |
PublicEvent
Когда частный репозиторий становится общедоступным. Без сомнения: лучшее событие GitHub.
Объект события payload
для PublicEvent
Это событие возвращает пустой объект payload
.
PullRequestEvent
Действия, связанные с запросами на вытягивание. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для запросов на вытягивание".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для PullRequestEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. Возможные значения: opened , edited , closed , reopened , assigned , unassigned , review_requested , review_request_removed , labeled , unlabeled и synchronize . |
number | integer | Номер запроса на вытягивание. |
changes | object | Изменения в комментарии, если выполнялось действие edited . |
changes[title][from] | string | Предыдущая версия заголовка, если выполнялось действие edited . |
changes[body][from] | string | Предыдущая версия текста, если действие было edited . |
pull_request | object | Сам запрос на вытягивание.{ % ifversion fpt или ghec %} reason |
PullRequestReviewEvent
Действия, связанные с проверками запросов на вытягивание. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для запросов на вытягивание".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для PullRequestReviewEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. Может иметь значение created . |
pull_request | object | Запрос на вытягивание, к которому относится проверка. |
review | object | Затрагиваемый обзор. |
PullRequestReviewCommentEvent
Действия, связанные с комментариями к проверке запроса на вытягивание в едином различии запроса на вытягивание. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для запросов на вытягивание".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для PullRequestReviewCommentEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, выполненное с комментарием. Может иметь значение created . |
changes | object | Изменения в комментарии, если выполнялось действие edited . |
changes[body][from] | string | Предыдущая версия текста, если действие было edited . |
pull_request | object | Запрос на вытягивание, к которому относится комментарий. |
comment | object | Сам комментарий. |
PullRequestReviewThreadEvent
Действие, связанное с отметкой ветви обсуждения по запросу на включение внесенных изменений как завершенной или незавершенной. Тип действия указывается в свойстве action
объекта полезных данных.
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для PullRequestReviewThreadEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. Возможные значения:
|
pull_request | object | Запрос на включение внесенных изменений, к которому относится ветвь. |
thread | object | Затронутая ветвь. |
PushEvent
Одна или несколько фиксаций отправляются в ветвь репозитория или тег.
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для PushEvent
Ключ | Тип | Описание |
---|---|---|
push_id | integer | Уникальный идентификатор принудительной отправки. |
size | integer | Количество фиксаций в принудительной отправке. |
distinct_size | integer | Количество отдельных фиксаций в принудительной отправке. |
ref | string | Полный git ref , который был принудительно отправлен. Пример: refs/heads/main . |
head | string | SHA последней фиксации в ref после принудительной отправки. |
before | string | SHA последней фиксации в ref до принудительной отправки. |
commits | array | Массив объектов фиксации, описывающих принудительно отправленные фиксации. (Массив включает не более 20 фиксаций. При необходимости можно использовать API фиксаций для получения дополнительных фиксаций. Это ограничение применяется только к событиям временной шкалы и не применяется к доставке веб-перехватчиков.) |
commits[][sha] | string | SHA фиксации. |
commits[][message] | string | Сообщение фиксации. |
commits[][author] | object | Автор Git фиксации. |
commits[][author][name] | string | Имя автора Git. |
commits[][author][email] | string | Адрес электронной почты автора Git. |
commits[][url] | url | URL-адрес, указывающий на ресурс API фиксации. |
commits[][distinct] | boolean | Отличается ли эта фиксация от остальных фиксаций, принудительно отправленных ранее. |
ReleaseEvent
Действие, связанное с выпуском. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в REST API AUTOTITLE.
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для ReleaseEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. Может иметь значение published . |
changes[body][from] | string | Предыдущая версия текста, если действие было edited . |
changes[name][from] | string | Предыдущая версия имени, если действие было edited . |
release | object | Объект выпуска. |
SponsorshipEvent
Действия, связанные со списком спонсоров. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "О спонсорах GitHub".
Объект события payload
для СпонсорстваEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. Это может быть created . |
effective_date | string | Типы событий pending_cancellation и pending_tier_change будут включать дату, когда отмена или изменение уровня вступают в силу. |
changes[tier][from] | object | В события tier_changed и pending_tier_change включается исходный уровень, который был до изменения или смены состояния на "ожидающее изменение". Дополнительные сведения см. в разделе о полезных данных, ожидающих изменения уровня. |
changes[privacy_level][from] | string | Типы событий edited включают сведения об изменении спонсорства для редактирования параметров конфиденциальности. |
WatchEvent
Когда кто-то запускает репозиторий. Тип действия указывается в свойстве action
объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для действий".
Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload
, а его значение уникально для каждого типа события. Ниже описывается объект payload
для этого события.
Объект события payload
для WatchEvent
Ключ | Тип | Описание |
---|---|---|
action | string | Действие, которое было выполнено. В настоящее время может иметь только значение started . |