Events APIは、GitHub上のアクティビティによってトリガーされる様々な種類のイベントを返します。 各イベントの応答には共有プロパティが含まれますが、イベントの種類によって決まる固有の payload
オブジェクトがあります。 イベント オブジェクトの共通プロパティは、すべてのイベントで共有されるプロパティを表し、各イベントの種類は、特定のイベントに固有の payload
プロパティを表します。
イベントオブジェクトの共通プロパティ
Events APIエンドポイントから返されるイベントオブジェクトは、同じ構造を持ちます。
Event API属性名 | 型 | 説明 |
---|---|---|
id | string | イベントの一意識別子。 |
type | string | イベントの種類。 イベントの名前にはPascalCaseが使われます。 |
actor | object | イベントをトリガーしたユーザ。 |
actor.id | string | アクターの一意の識別子。 |
actor.login | string | アクターのユーザ名。 |
actor.display_login | string | ユーザ名に特定の表示形式。 |
actor.gravatar_id | string | アクターのGravatarプロフィールの一意の識別子。 |
actor.url | string | 追加のユーザ情報を含むユーザオブジェクトの取得に使われるREST APIのURL。 |
actor.avatar_url | string | アクターのプロフィール画像のURL。 |
repository | object | イベントが発生したリポジトリオブジェクト。 |
repository.id | string | リポジトリの一意の識別子。 |
repository.name | string | リポジトリの名前。オーナーとリポジトリの名前が含まれる。 たとえば、octocat/hello-world は、octocat 個人用アカウントが所有する hello-world リポジトリの名前です。 |
repository.url | string | 追加のリポジトリ情報を含むリポジトリオブジェクトの取得に使われるREST APIのURL。 |
payload | object | イベントの種類に固有のイベントペイロードオブジェクト。 イベント API payload オブジェクトについては、以下のイベントの種類を参照してください。 |
public | boolean | イベントがすべてのユーザーに表示されるかどうか。 |
created_at | string | イベントがトリガーされた日時。 ISO 8601 に従って形式設定されています。 |
org | object | イベントをトリガーするアクションを実行するためにアクターによって選択された組織。 このプロパティは、該当する場合にのみイベント オブジェクトに表示されます。 |
org.id | string | 組織の一意の識別子。 |
org.login | string | 組織の名前です。 |
org.gravatar_id | string | 組織の Gravatar プロフィールの一意の識別子。 |
org.url | string | 追加の組織情報を含む組織オブジェクトの取得に使われる REST API の URL。 |
org.avatar_url | string | 組織のプロフィール画像の URL。 |
WatchEventイベントのオブジェクトの例
この例では、Events API を使用するときの WatchEvent 応答の形式を示します。
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
オブジェクトを以下に示します。
CommitCommentEvent のイベント payload
オブジェクト
キー | Type | 説明 |
---|---|---|
action | string | 実行されるアクション。 created の可能性があります。 |
comment | object | 「コミットのコメント」 リソース。 |
CreateEvent
Gitブランチもしくはタグが作成されました。 詳しくは、「Git データベース用 REST API エンドポイント」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
CreateEvent のイベント payload
オブジェクト
DeleteEvent
Gitブランチまたはタグが削除されました。 詳しくは、REST API 「Git データベース用 REST API エンドポイント」をご覧ください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
DeleteEvent のイベント payload
オブジェクト
キー | Type | 説明 |
---|---|---|
ref | string | git ref リソース。 |
ref_type | string | リポジトリで削除された Git ref オブジェクトの種類。 branch または tag を指定できます。 |
ForkEvent
ユーザがリポジトリをフォークします。 詳しくは、「リポジトリの REST API エンドポイント」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
ForkEvent のイベント payload
オブジェクト
キー | Type | 説明 |
---|---|---|
forkee | object | 作成された repository リソース。 |
GollumEvent
wikiページが作成もしくは更新されました。 詳しくは、「ウィキについて」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
GollumEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
pages | array | 更新されたページ。 |
pages[][page_name] | string | ページの名前です。 |
pages[][title] | string | 現在のページ タイトル。 |
pages[][action] | string | ページ上で実行されたアクション。 created または edited を指定できます。 |
pages[][sha] | string | ページの最新のコミットSHA。 |
pages[][html_url] | string | HTMLのwikiページを指す。 |
IssueCommentEvent
IssueあるいはPull Requestコメントに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「issue 用の REST API エンドポイント」をご覧ください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
IssueCommentEvent のイベント payload
オブジェクト
キー | Type | 説明 |
---|---|---|
action | string | コメント上で実行されたアクション。 created 、edited 、deleted のいずれかを指定できます。 |
changes | object | アクションが edited だった場合のコメントの変更。 |
changes[body][from] | string | アクションが edited だった場合の本文の以前のバージョン。 |
issue | object | コメントが属する Issue。 |
comment | object | コメント自体。 |
IssuesEvent
Issueに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「issue 用の REST API エンドポイント」をご覧ください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
IssuesEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
action | string | 実行されたアクション。 opened 、edited 、closed 、reopened 、assigned 、unassigned 、labeled 、unlabeled のいずれかになります。 |
issue | object | Issue 自体。 |
changes | object | アクションが edited の場合の Issue に対する変更。 |
changes[title][from] | string | アクションが edited の場合の以前のバージョンのタイトル。 |
changes[body][from] | string | アクションが edited だった場合の本文の以前のバージョン。 |
assignee | object | Issue の割り当てまたは割り当て解除を行った省略可能なユーザー。 |
label | object | Issue に対して追加または削除された省略可能なラベル。 |
MemberEvent
リポジトリのコラボレータに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「コラボレーターの REST API エンドポイント」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
MemberEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
action | string | 実行されたアクション。 ユーザーがリポジトリへの招待を承認したことを示す、added を指定できます。 |
member | object | 追加されたユーザー。 |
changes | object | アクションが edited である場合のコラボレータのアクセス許可への変更。 |
changes[old_permission][from] | string | アクションが edited である場合のコラボレータの以前のアクセス許可。 |
PublicEvent
プライベートリポジトリがパブリックにされたとき。 間違いなく: 最高のGitHub Enterprise Serverイベント。
PublicEvent のイベント payload
オブジェクト
このイベントでは、空の payload
オブジェクトが返されます。
PullRequestEvent
Pull Requestに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「Pull request 用 REST API エンドポイント」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
PullRequestEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
action | string | 実行されたアクション。 opened 、edited 、closed 、reopened 、assigned 、unassigned 、review_requested 、review_request_removed 、labeled 、unlabeled 、または synchronize のいずれかにすることができます。 |
number | integer | pull request 番号。 |
changes | object | アクションが edited の場合のコメントの変更。 |
changes[title][from] | string | アクションが edited の場合の以前のバージョンのタイトル。 |
changes[body][from] | string | アクションが edited だった場合の本文の以前のバージョン。 |
pull_request | object | pull request 自体。 |
PullRequestReviewEvent
Pull Requestレビューに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「Pull request 用 REST API エンドポイント」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
PullRequestReviewEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
action | string | 実行されたアクション。 created の可能性があります。 |
pull_request | object | レビューが関連するプルリクエスト。 |
review | object | 影響されるレビュー。 |
PullRequestReviewCommentEvent
Pull Requestの統合diff中のPull Requestレビューコメントに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「Pull request 用 REST API エンドポイント」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
PullRequestReviewCommentEvent のイベント payload
オブジェクト
キー | Type | 説明 |
---|---|---|
action | string | コメント上で実行されたアクション。 created の可能性があります。 |
changes | object | アクションが edited の場合のコメントの変更。 |
changes[body][from] | string | アクションが edited の場合の以前のバージョンのタイトル。 |
pull_request | object | コメントが属する pull request。 |
comment | object | コメント 自体。 |
PullRequestReviewThreadEvent
解決済みまたは未解決とマークされている pull request のコメント スレッドに関連するアクティビティ アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
PullRequestReviewThreadEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
action | string | 実行されたアクション。 次のいずれかになります。
|
pull_request | object | スレッドに関連する pull request。 |
thread | object | 影響を受けたスレッド。 |
PushEvent
リポジトリのブランチもしくはタグに、1つ以上のコミットがプッシュされました。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
PushEvent のイベント payload
オブジェクト
キー | Type | 説明 |
---|---|---|
push_id | integer | プッシュの一意の識別子。 |
size | integer | プッシュ中のコミット数。 |
distinct_size | integer | プッシュ中の個別のコミット数。 |
ref | string | プッシュされた完全な git ref 。 例: refs/heads/main . |
head | string | プッシュ後の ref に対する最新のコミットの SHA。 |
before | string | プッシュ前の ref に対する最新のコミットの SHA。 |
commits | array | プッシュされたコミットを示すコミットオブジェクトの配列。 (配列には最大で20のコミットが含まれる。 必要に応じて、Commits API を使用して追加のコミットをフェッチできます。 この制限はタイムラインイベントにのみ適用され、webhookの配信には適用されない) |
commits[][sha] | string | コミットのSHA。 |
commits[][message] | string | コミットメッセージ。 |
commits[][author] | object | コミットのGit作者。 |
commits[][author][name] | string | Git作者の名前。 |
commits[][author][email] | string | Git作者のメールアドレス。 |
commits[][url] | url | コミットAPIのリソースを指すURL。 |
commits[][distinct] | boolean | このコミットが以前にプッシュされたいずれとも異なっているか。 |
ReleaseEvent
リリースに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「リリースとリリース資産の REST API エンドポイント」 REST API を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
ReleaseEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
action | string | 実行されたアクション。 published の可能性があります。 |
changes[body][from] | string | アクションが edited だった場合の本文の以前のバージョン。 |
changes[name][from] | string | アクションが edited だった場合の以前のバージョンの名前。 |
release | object | リリース オブジェクト。 |
WatchEvent
誰かがリポジトリにStarを付けたとき。 アクティビティの種類は、ペイロード オブジェクトの action
プロパティで指定されます。詳細については、「アクティビティ用 REST API エンドポイント」を参照してください。
イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload
プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload
オブジェクトを以下に示します。
WatchEvent のイベント payload
オブジェクト
キー | Type | [説明] |
---|---|---|
action | string | 実行されたアクション。 現時点では、started のみが可能です。 |