Skip to main content

Enterprise Server 3.15 в настоящее время доступен в качестве кандидата на выпуск.

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

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

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

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

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

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

КлючТипОписание
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 Server.

Объект события 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Объект выпуска.

WatchEvent

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

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

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

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