Skip to main content

GitHubイベントの種類

GitHub Event APIについて、各イベントの種類、GitHub上でのトリガーするアクション、各イベント固有のプロパティについて学んでください。

Events APIは、GitHub上のアクティビティによってトリガーされる様々な種類のイベントを返します。 各イベントの応答には共有プロパティが含まれますが、イベントの種類によって決まる固有の payload オブジェクトがあります。 イベント オブジェクトの共通プロパティは、すべてのイベントで共有されるプロパティを表し、各イベントの種類は、特定のイベントに固有の payload プロパティを表します。

イベントオブジェクトの共通プロパティ

Events APIエンドポイントから返されるイベントオブジェクトは、同じ構造を持ちます。

Event API属性名説明
idイベントの一意識別子。
typeイベントの種類。 イベントの名前にはPascalCaseが使われます。
actorイベントをトリガーしたユーザ。
actor.idアクターの一意の識別子。
actor.loginアクターのユーザ名。
actor.display_loginユーザ名に特定の表示形式。
actor.gravatar_idアクターのGravatarプロフィールの一意の識別子。
actor.url追加のユーザ情報を含むユーザオブジェクトの取得に使われるREST APIのURL。
actor.avatar_urlアクターのプロフィール画像のURL。
repoイベントが発生したリポジトリオブジェクト。
repo.idリポジトリの一意の識別子。
repo.nameリポジトリの名前。オーナーとリポジトリの名前が含まれる。 たとえば、octocat/hello-world は、octocat 個人用アカウントが所有する hello-world リポジトリの名前です。
repo.url追加のリポジトリ情報を含むリポジトリオブジェクトの取得に使われるREST APIのURL。
payloadイベントの種類に固有のイベントペイロードオブジェクト。 イベント API payload オブジェクトについては、以下のイベントの種類を参照してください。
publicイベントがすべてのユーザーに表示されるかどうか。
created_atイベントがトリガーされた日時。 ISO 8601 に従って形式設定されています。
orgイベントをトリガーするアクションを実行するためにアクターによって選択された組織。
このプロパティは、該当する場合にのみイベント オブジェクトに表示されます。
org.id組織の一意の識別子。
org.login組織の名前です。
org.gravatar_id組織の Gravatar プロフィールの一意の識別子。
org.url追加の組織情報を含む組織オブジェクトの取得に使われる REST API の URL。
org.avatar_url組織のプロフィール画像の 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": {
    },
    "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 オブジェクト

キーType説明
actionstring実行されるアクション。 created の可能性があります。
commentobjectコミットのコメント」 リソース。

CreateEvent

Gitブランチもしくはタグが作成されました。 詳細については、「Git データベース」 REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType説明
refstringgit ref リソース。
ref_typestringリポジトリで作成されたGit refオブジェクトの種類。 branch または tag を指定できます。
master_branchstringリポジトリの既定のブランチの名前 (通常は main)。
descriptionstringリポジトリの現在の説明。

DeleteEvent

Gitブランチまたはタグが削除されました。 詳細については、「Git データベース」 REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType説明
refstringgit ref リソース。
ref_typestringリポジトリで削除された Git ref オブジェクトの種類。 branch または tag を指定できます。

ForkEvent

ユーザがリポジトリをフォークします。 詳しい情報については、「フォーク」 REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType説明
forkeeobject作成された repository リソース。

GollumEvent

wikiページが作成もしくは更新されました。 詳細については、「ウィキについて」を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
pagesarray更新されたページ。
pages[][page_name]stringページの名前です。
pages[][title]string現在のページ タイトル。
pages[][action]stringページ上で実行されたアクション。 created または edited を指定できます。
pages[][sha]stringページの最新のコミットSHA。
pages[][html_url]stringHTMLのwikiページを指す。

IssueCommentEvent

IssueあるいはPull Requestコメントに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。詳細については、「issue comments」の REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType説明
actionstringコメント上で実行されたアクション。 createdediteddeleted のいずれかを指定できます。 changes
changes[body][from]stringアクションが edited だった場合の本文の以前のバージョン。
issueobjectコメントが属する Issue
commentobjectコメント自体。

IssuesEvent

Issueに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。 詳細については、REST API の「Issue」を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 openededitedclosedreopenedassignedunassignedlabeledunlabeled のいずれかになります。 issue
changesobjectアクションが edited の場合の Issue に対する変更。
changes[title][from]stringアクションが edited の場合の以前のバージョンのタイトル。
changes[body][from]stringアクションが edited だった場合の本文の以前のバージョン。
assigneeobjectIssue の割り当てまたは割り当て解除を行った省略可能なユーザー。
labelobjectIssue に対して追加または削除された省略可能なラベル。

MemberEvent

リポジトリのコラボレータに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。 詳細については、"collaborators" の REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 ユーザーがリポジトリへの招待を承認したことを示す、added を指定できます。 member
changesobjectアクションが edited である場合のコラボレータのアクセス許可への変更。
changes[old_permission][from]stringアクションが edited である場合のコラボレータの以前のアクセス許可。

PublicEvent

プライベートリポジトリがパブリックにされたとき。 間違いなく: 最高のGitHub Enterprise Serverイベント。

イベント payload オブジェクト

このイベントでは、空の payload オブジェクトが返されます。

PullRequestEvent

Pull Requestに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。 詳細については、「pull request」 REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 openededitedclosedreopenedassignedunassignedreview_requestedreview_request_removedlabeledunlabeled、または synchronize のいずれかにすることができます。 number
changesobjectアクションが edited の場合のコメントの変更。
changes[title][from]stringアクションが edited の場合の以前のバージョンのタイトル。
changes[body][from]stringアクションが edited だった場合の本文の以前のバージョン。
pull_requestobjectpull request 自体。

PullRequestReviewEvent

Pull Requestレビューに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。詳細については、「pull request のレビュー」の REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 created の可能性があります。
pull_requestobjectレビューが関連するプルリクエスト。
reviewobject影響されるレビュー。

PullRequestReviewCommentEvent

Pull Requestの統合diff中のPull Requestレビューコメントに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。詳細については、「プルリクエストのレビュー コメント」の REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType説明
actionstringコメント上で実行されたアクション。 created の可能性があります。 changes
changes[body][from]stringアクションが edited の場合の以前のバージョンのタイトル。
pull_requestobjectコメントが属する pull request
commentobjectコメント 自体。

PullRequestReviewThreadEvent

解決済みまたは未解決とマークされている pull request のコメント スレッドに関連するアクティビティ アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 次のいずれかになります。
  • resolved - pull request のコメント スレッドが解決済みとしてマークされました。
  • unresolved - pull request の前に解決されたコメント スレッドが未解決とマークされました。
pull_requestobjectスレッドに関連する pull request
threadobject影響を受けたスレッド。

PushEvent

リポジトリのブランチもしくはタグに、1つ以上のコミットがプッシュされました。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType説明
push_idintegerプッシュの一意の識別子。
sizeintegerプッシュ中のコミット数。
distinct_sizeintegerプッシュ中の個別のコミット数。
refstringプッシュされた完全な git ref。 例: refs/heads/main.
headstringプッシュ後の ref に対する最新のコミットの SHA。
beforestringプッシュ前の ref に対する最新のコミットの SHA。
commitsarrayプッシュされたコミットを示すコミットオブジェクトの配列。 (配列には最大で20のコミットが含まれる。 必要に応じて、Commits API を使用して追加のコミットをフェッチできます。 この制限はタイムラインイベントにのみ適用され、webhookの配信には適用されない)
commits[][sha]stringコミットのSHA。
commits[][message]stringコミットメッセージ。
commits[][author]objectコミットのGit作者。
commits[][author][name]stringGit作者の名前。
commits[][author][email]stringGit作者のメールアドレス。
commits[][url]urlコミットAPIのリソースを指すURL。
commits[][distinct]booleanこのコミットが以前にプッシュされたいずれとも異なっているか。

ReleaseEvent

リリースに関連するアクティビティ。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。 詳細については、"リリース" REST API を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 published の可能性があります。 changes[body][from]
changes[name][from]stringアクションが edited だった場合の以前のバージョンの名前。
releaseobjectリリース オブジェクト。

WatchEvent

誰かがリポジトリにStarを付けたとき。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。詳細については、REST API の「starring」を参照してください。

イベント オブジェクトには、すべてのイベントに共通するプロパティが含まれています。 各イベント オブジェクトには payload プロパティが含まれており、その値は各イベントの種類に固有です。 このイベントの payload オブジェクトを以下に示します。

イベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 現時点では、started のみが可能です。