Skip to main content

Типы событий GitHub

Для API событий GitHub узнайте о каждом типе события, активируя действие в GitHub, а также уникальные свойства каждого события.

API событий может возвращать различные типы событий, инициируемые действием в GitHub. Каждый ответ события содержит общие свойства, но имеет уникальный объект payload, определенный его типом события. В разделе Общие свойства объекта событий описываются свойства, общие для всех событий, а каждый тип события описывает свойства payload, уникальные для конкретного события.

Общие свойства объекта события

Объекты событий, возвращаемые конечными точками API событий, имеют одинаковую структуру.

Имя атрибута API событийТипОписание
idstringУникальный идентификатор события.
typestringТип события. События используют PascalCase для имени.
actorobjectПользователь, который активировал событие.
actor.idstringУникальный идентификатор субъекта.
actor.loginstringИмя пользователя субъекта.
actor.display_loginstringКонкретный формат отображения имени пользователя.
actor.gravatar_idstringУникальный идентификатор профиля Gravatar для субъекта.
actor.urlstringURL-адрес REST API, используемый для получения объекта пользователя, который содержит дополнительные сведения о пользователе.
actor.avatar_urlstringURL-адрес изображения профиля субъекта.
repositoryobjectОбъект репозитория, в котором произошло событие.
repository.idstringУникальный идентификатор репозитория.
repository.namestringИмя репозитория, включающее имя владельца и репозитория. Например, octocat/hello-world — это имя репозитория hello-world, принадлежащего личной учетной записи octocat.
repository.urlstringURL-адрес REST API, используемый для получения объекта репозитория, который содержит дополнительные сведения о репозитории.
payloadobjectОбъект полезных данных события уникален для каждого типа события. См. тип события ниже для объекта payload API событий.
publicbooleanОтображается ли событие для всех пользователей.
created_atstringДата и время активации события. В формате по стандарту ISO 8601.
orgobjectОрганизация, выбранная субъектом для выполнения действия, которое активировало событие.
Свойство отображается в объекте события только в том случае, если это применимо.
org.idstringУникальный идентификатор для организации.
org.loginstringНазвание организации.
org.gravatar_idstringУникальный идентификатор профиля Gravatar для организации.
org.urlstringURL-адрес REST API, используемый для получения объекта организации, который содержит дополнительные сведения об организации.
org.avatar_urlstringURL-адрес изображения профиля организации.

Пример объекта события 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": {
    },
    "repository": {
      "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

КлючТипОписание
actionstringвыполненные операции; Может иметь значение created.
commentobjectРесурс комментария фиксации.

CreateEvent

Создается ветвь или тег Git. Дополнительные сведения см. в разделе Конечные точки REST API для базы данных Git.

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для CreateEvent

КлючТипОписание
refstringРесурс git ref или null если ref_type это repository.
ref_typestringТип объекта Git ref, созданного в репозитории. Может быть либо branch, tagлибо repository.
master_branchstringИмя ветви по умолчанию в репозитории (обычно это main).
descriptionstringТекущее описание репозитория.
pusher_typestringМожет быть user или ключом развертывания.

DeleteEvent

Удаляется ветвь или тег Git. Дополнительные сведения см. в REST API AUTOTITLE.

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для DeleteEvent

КлючТипОписание
refstringРесурс git ref.
ref_typestringТип объекта Git ref, удаленного в репозитории. Может быть либо branch, либо tag.

ForkEvent

Пользователь создает вилку репозитория. Дополнительные сведения см. в разделе Конечные точки REST API для репозиториев.

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для ForkEvent

Ключ.ТипОписание
forkeeobjectСозданный ресурс repository.

GollumEvent

Вики-страница создается или обновляется. Дополнительные сведения см. в разделе Сведения о вики-сайтах.

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для GollumEvent

Ключ.ТипОписание
pagesarrayОбновленные страницы.
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

Ключ.ТипОписание
actionstringДействие, выполненное с комментарием. Может иметь значение created, edited или deleted.
changesobjectИзменения в комментарии, если выполнялось действие edited.
changes[body][from]stringПредыдущая версия текста, если действие было edited.
issueobjectПроблема, к котором относится комментарий.
commentobjectСам комментарий.

IssuesEvent

Действие, связанное с проблемой. Тип действия указывается в свойстве action объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для проблем".

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для IssuesEvent

Ключ.ТипОписание
actionstringДействие, которое было выполнено. Это может быть opened, edited, closed, reopened, assigned, unassigned, labeled или unlabeled.
issueobjectСама проблема.
changesobjectИзменения в проблеме, если выполнялось действие edited.
changes[title][from]stringПредыдущая версия заголовка, если выполнялось действие edited.
changes[body][from]stringПредыдущая версия текста, если действие было edited.
assigneeobjectНеобязательный пользователь, который получил или не получил назначение из проблемы.
labelobjectНеобязательная метка, которая была добавлена или удалена из проблемы.

MemberEvent

Действия, связанные с участниками совместной работы в репозитории. Тип действия указывается в свойстве action объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для участников совместной работы".

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для MemberEvent

Ключ.ТипОписание
actionstringДействие, которое было выполнено. Может иметь значение added, которое указывает, что пользователь принял приглашение в репозиторий.
memberobjectПользователь, который был добавлен.
changesobjectИзменения разрешений участника совместной работы, если было выполнено действие edited.
changes[old_permission][from]stringПредыдущие разрешения участника совместной работы, если было выполнено действие edited.

PublicEvent

Когда частный репозиторий становится общедоступным. Без сомнения: лучшее событие GitHub Enterprise Cloud.

Объект события payload для PublicEvent

Это событие возвращает пустой объект payload.

PullRequestEvent

Действия, связанные с запросами на вытягивание. Тип действия указывается в свойстве action объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для запросов на вытягивание".

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для PullRequestEvent

Ключ.ТипОписание
actionstringДействие, которое было выполнено. Возможные значения: opened, edited, closed, reopened, assigned, unassigned, review_requested, review_request_removed, labeled, unlabeled и synchronize.
numberintegerНомер запроса на вытягивание.
changesobjectИзменения в комментарии, если выполнялось действие edited.
changes[title][from]stringПредыдущая версия заголовка, если выполнялось действие edited.
changes[body][from]stringПредыдущая версия текста, если действие было edited.
pull_requestobjectСам запрос на вытягивание.{ % ifversion fpt или ghec %} reason

PullRequestReviewEvent

Действия, связанные с проверками запросов на вытягивание. Тип действия указывается в свойстве action объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для запросов на вытягивание".

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для PullRequestReviewEvent

КлючТипОписание
actionstringДействие, которое было выполнено. Может иметь значение created.
pull_requestobjectЗапрос на вытягивание, к которому относится проверка.
reviewobjectЗатрагиваемый обзор.

PullRequestReviewCommentEvent

Действия, связанные с комментариями к проверке запроса на вытягивание в едином различии запроса на вытягивание. Тип действия указывается в свойстве action объекта полезных данных. Дополнительные сведения см. в разделе "Конечные точки REST API для запросов на вытягивание".

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для PullRequestReviewCommentEvent

Ключ.ТипОписание
actionstringДействие, выполненное с комментарием. Может иметь значение created.
changesobjectИзменения в комментарии, если выполнялось действие edited.
changes[body][from]stringПредыдущая версия текста, если действие было edited.
pull_requestobjectЗапрос на вытягивание, к которому относится комментарий.
commentobjectСам комментарий.

PullRequestReviewThreadEvent

Действие, связанное с отметкой ветви обсуждения по запросу на включение внесенных изменений как завершенной или незавершенной. Тип действия указывается в свойстве action объекта полезных данных.

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для PullRequestReviewThreadEvent

Ключ.ТипОписание
actionstringДействие, которое было выполнено. Возможные значения:
  • resolved — ветвь обсуждения для запроса на включение внесенных изменений отмечена как завершенная.
  • unresolved — ранее завершенная ветвь обсуждения для запроса на включение внесенных изменений отмечена как незавершенная.
pull_requestobjectЗапрос на включение внесенных изменений, к которому относится ветвь.
threadobjectЗатронутая ветвь.

PushEvent

Одна или несколько фиксаций отправляются в ветвь репозитория или тег.

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для PushEvent

КлючТипОписание
push_idintegerУникальный идентификатор принудительной отправки.
sizeintegerКоличество фиксаций в принудительной отправке.
distinct_sizeintegerКоличество отдельных фиксаций в принудительной отправке.
refstringПолный git ref, который был принудительно отправлен. Пример: refs/heads/main.
headstringSHA последней фиксации в ref после принудительной отправки.
beforestringSHA последней фиксации в ref до принудительной отправки.
commitsarrayМассив объектов фиксации, описывающих принудительно отправленные фиксации. (Массив включает не более 20 фиксаций. При необходимости можно использовать API фиксаций для получения дополнительных фиксаций. Это ограничение применяется только к событиям временной шкалы и не применяется к доставке веб-перехватчиков.)
commits[][sha]stringSHA фиксации.
commits[][message]stringСообщение фиксации.
commits[][author]objectАвтор Git фиксации.
commits[][author][name]stringИмя автора Git.
commits[][author][email]stringАдрес электронной почты автора Git.
commits[][url]urlURL-адрес, указывающий на ресурс API фиксации.
commits[][distinct]booleanОтличается ли эта фиксация от остальных фиксаций, принудительно отправленных ранее.

ReleaseEvent

Действие, связанное с выпуском. Тип действия указывается в свойстве action объекта полезных данных. Дополнительные сведения см. в REST API AUTOTITLE.

Объект события содержит свойства, общие для всех событий. Каждый объект события имеет свойство payload, а его значение уникально для каждого типа события. Ниже описывается объект payload для этого события.

Объект события payload для ReleaseEvent

Ключ.ТипОписание
actionstringДействие, которое было выполнено. Может иметь значение published.
changes[body][from]stringПредыдущая версия текста, если действие было edited.
changes[name][from]stringПредыдущая версия имени, если действие было edited.
releaseobjectОбъект выпуска.

SponsorshipEvent

Действия, связанные со списком спонсоров. Тип действия указывается в свойстве action объекта полезных данных. Дополнительные сведения см. в разделе "О спонсорах GitHub".

Объект события payload для СпонсорстваEvent

Ключ.ТипОписание
actionstringДействие, которое было выполнено. Это может быть created.
effective_datestringТипы событий 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

Ключ.ТипОписание
actionstringДействие, которое было выполнено. В настоящее время может иметь только значение started.