我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

此版本的 GitHub Enterprise 已停止服务 2020-11-12. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

GitHub event types

For the GitHub Events API, learn about each event type, the triggering action on GitHub, and each event's unique properties.

Enterprise accounts are available with GitHub Enterprise Cloud and GitHub Enterprise Server.

本文内容

The Events API can return different types of events triggered by activity on GitHub. Each event response contains shared properties, but has a unique payload object determined by its event type. The Event object common properties describes the properties shared by all events, and each event type describes the payload properties that are unique to the specific event.

Event object common properties

The event objects returned from the Events API endpoints have the same structure.

Event API attribute name描述
idUnique identifier for the event.
typeThe type of event. Events uses PascalCase for the name.
actorThe user that triggered the event.
actor.idThe unique identifier for the actor.
actor.loginThe username of the actor.
actor.display_loginThe specific display format of the username.
actor.gravatar_idThe unique identifier of the Gravatar profile for the actor.
actor.urlThe REST API URL used to retrieve the user object, which includes additional user information.
actor.avatar_urlThe URL of the actor's profile image.
repoThe repository object where the event occurred.
repo.idThe unique identifier of the repository.
repo.nameThe name of the repository, which includes the owner and repository name. For example, octocat/hello-world is the name of the hello-world repository owned by the octocat user account.
repo.urlThe REST API URL used to retrieve the repository object, which includes additional repository information.
payloadThe event payload object is unique to the event type. See the event type below for the event API payload object.

Example WatchEvent event object

This example shows the format of the WatchEvent response when using the Events API.

Status: 200 OK
Link: <https://api.github.com/resource?page=2>; rel="next",
      <https://api.github.com/resource?page=5>; rel="last"
[
  {
    "type": "WatchEvent",
    "public": true,
    "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 对象如下所述。

Event payload object

类型描述
action字符串执行的操作。 可以是 created
注释,评论对象提交评论资源。

CreateEvent

Git 分支或标签已创建。 更多信息请参阅“Git 数据”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
ref字符串The git ref 资源。
ref_type字符串在仓库中创建的 Git ref 对象的类型。 可以是 branchtag
master_branch字符串仓库默认分支的名称(通常是 master)。
说明字符串仓库的当前描述。

DeleteEvent

Git 分支或标签已删除。 更多信息请参阅“Git 数据”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
ref字符串The git ref 资源。
ref_type字符串在仓库中删除的 Git ref 对象的类型。 可以是 branchtag

ForkEvent

用户复刻仓库。 更多信息请参阅“复刻”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
forkee对象创建的 repository 资源。

GollumEvent

创建或更新 wiki 页面。 更多信息请参阅“关于 wikis”。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
页面数组已更新的页面。
pages[][page_name]字符串页面的名称。
pages[][title]字符串当前页面标题。
pages[][action]字符串在页面上执行的操作。 可以是 creatededited
pages[][sha]字符串页面的最新提交 SHA。
pages[][html_url]字符串指向 HTML wiki 页面。

IssueCommentEvent

与议题评论相关的活动。 活动类型在有效负载对象的 action 属性中指定。 更多信息请参阅“议题评论”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
action字符串在评论上执行的操作。 可以以下项之一:createdediteddeleted
changesobject对评论的更改,如果操作为 editedchanges[body][from]

IssuesEvent

与议题相关的活动。 活动类型在有效负载对象的 action 属性中指定。 更多信息请参阅“议题”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
action字符串执行的操作内容. 可以是以下项之一:openedclosedreopenedassignedunassignedlabeledunlabeled
issueobject议题本身。 changes

MemberEvent

与仓库协作者相关的活动。 活动类型在有效负载对象的 action 属性中指定。 更多信息请参阅“协作者”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
action字符串执行的操作内容. 可以是 added 以指示用户接受了加入仓库的邀请。
memberobject已添加的用户changes

PublicEvent

当私有仓库公开时。 毫无疑问:最好的 GitHub Enterprise Server 事件。

Event payload object

This event returns an empty payload object.

PullRequestEvent

与拉取请求相关的活动。 活动类型在有效负载对象的 action 属性中指定。 更多信息请参阅“拉取请求”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
action字符串执行的操作内容. 可以是以下项之一:openedclosedreopenedassignedunassignedreview_requestedreview_request_removedlabeledunlabeledsynchronize
numberinteger拉取请求编号。 changes

PullRequestReviewCommentEvent

与拉取请求统一差异中的拉取请求审查评论相关的活动。 活动类型在有效负载对象的 action 属性中指定。 更多信息请参阅“拉取请求审查评论”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
action字符串在评论上执行的操作。 可以是 created
changesobject对评论的更改,如果操作为 editedchanges[body][from]

PushEvent

一个或多个提交被推送到仓库分支或标记。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

类型描述
push_id整数Unique identifier for the push.
size整数The number of commits in the push.
distinct_size整数The number of distinct commits in the push.
ref字符串被推送的完整 git ref。 Example: refs/heads/main.
头部字符串推送之后在 ref 上最近提交的 SHA。
before字符串推送之前在 ref 上最近提交的 SHA。
commits数组描述所推送提交的提交对象数组。 (该数组最多包含 20 个提交。 如有必要,可使用 Commits API 获取更多提交。 此限制仅适用于时间表事件,而不适用于 web 挂钩递送。)
commits[][sha]字符串提交的 SHA。
commits[][message]字符串提交消息.
commits[][author]对象提交的 Git 作者。
commits[][author][name]字符串Git 作者的名称。
commits[][author][email]字符串Git 作者的电子邮件地址。
commits[][url]url指向提交 API 资源的 URL。
commits[][distinct]布尔值此提交是否与之前推送的任何提交不同。

ReleaseEvent

与发行版相关的活动。 活动类型在有效负载对象的 action 属性中指定。 更多信息请参阅“发行版”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
action字符串执行的操作内容. 可以是 published
changes[body][from]string正文的前版本,如果操作为 editedchanges[name][from]

WatchEvent

当有人标星仓库时。 活动类型在有效负载对象的 action 属性中指定。 更多信息请参阅“星标”REST API。

事件对象 包含所有事件的通用属性。 每个事件对象都包含 payload 属性,并且该值对于每个事件类型而言都是唯一的。 此事件的 payload 对象如下所述。

Event payload object

类型描述
action字符串执行的操作内容. 目前只能是 started