Skip to main content

GitHubイベントの種類

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

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

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

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

Event API属性名タイプ説明
idintegerイベントの一意識別子。
typestringイベントの種類。 イベントの名前にはPascalCaseが使われます。
actorobjectイベントをトリガーしたユーザ。
actor.idintegerアクターの一意の識別子。
actor.loginstringアクターのユーザ名。
actor.display_loginstringユーザ名に特定の表示形式。
actor.gravatar_idstringアクターのGravatarプロフィールの一意の識別子。
actor.urlstring追加のユーザ情報を含むユーザオブジェクトの取得に使われるREST APIのURL。
actor.avatar_urlstringアクターのプロフィール画像のURL。
repoobjectイベントが発生したリポジトリオブジェクト。
repo.idintegerリポジトリの一意の識別子。
repo.namestringリポジトリの名前。オーナーとリポジトリの名前が含まれる。 たとえば、octocat/hello-world は、hello-world 個人用アカウントが所有する octocat リポジトリの名前です。
repo.urlstring追加のリポジトリ情報を含むリポジトリオブジェクトの取得に使われるREST APIのURL。
payloadobjectイベントの種類に固有のイベントペイロードオブジェクト。 イベント API payload オブジェクトについては、以下のイベントの種類を参照してください。
publicbooleanイベントがすべてのユーザーに表示されるかどうか。
created_atstringイベントがトリガーされた日時。 ISO 8601 に従って形式設定されています。
orgobjectイベントをトリガーするアクションを実行するためにアクターによって選択された組織。
          _このプロパティは、該当する場合にのみイベント オブジェクトに表示されます。_ |

| org.id | integer | 組織の一意の識別子。 | | 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"
[
  {
    "id": "12345",
    "type": "WatchEvent",
    "actor": {
      "id": 1,
      "login": "octocat",
      "display_login": "octocat",
      "gravatar_id": "",
      "url": "https://api.github.com/users/octocat",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif"
    },
    "repo": {
      "id": 3,
      "name": "octocat/Hello-World",
      "url": "https://api.github.com/repos/octocat/Hello-World"
    },
    "payload": {
      "action": "started"
    },
    "public": false,
    "created_at": "2011-09-06T17:26:27Z",
    "org": {
      "id": 1,
      "login": "github",
      "gravatar_id": "",
      "url": "https://api.github.com/orgs/github",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif"
    },
  }
]

CommitCommentEvent

コミットコメントが作成されました。 アクティビティの種類は、ペイロード オブジェクトの action プロパティで指定されます。詳細については、「コミット コメント用 REST API エンドポイント」を参照してください。

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

CommitCommentEvent のイベント payload オブジェクト

キータイプ説明
actionstring実行されるアクション。
          `created` の可能性があります。

| | comment|object | 「コミットのコメント」 リソース。

CreateEvent

Gitブランチもしくはタグが作成されました。 詳しくは、「Git データベース用 REST API エンドポイント」をご覧ください。

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

CreateEvent のイベント payload オブジェクト

キータイプ説明
refstring
          [
          `git ref`
          ](/rest/git#get-a-reference) リソース ブランチ。`null`が`ref_type`されている場合は`repository`。

ref_type|string | リポジトリで作成されたGit refオブジェクトの種類。 これは、branchtag、または repository のいずれかです。 | | full_ref|string | 完全形式の ref リソース。つまり、分岐の場合、形式は refs/heads/<branch_name>。 | | master_branch|string | リポジトリの既定のブランチの名前 (通常は main)。 description|string | リポジトリの現在の説明。 pusher_type|string | user またはデプロイ キーのいずれかを指定できます。

DeleteEvent

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

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

DeleteEvent のイベント payload オブジェクト

キータイプ説明
refstring
          [
          `git ref`
          ](/rest/git#get-a-reference) リソース部門。

ref_type|string | リポジトリで削除された Git ref オブジェクトの種類。 branch または tag を指定できます。 | | full_ref|string | 完全形式の ref リソース。つまり、分岐の場合、形式は refs/heads/<branch_name>。 | | pusher_type|string | user またはデプロイ キーのいずれかを指定できます。

ディスカッションイベント

ディスカッションがリポジトリに作成されます。 詳しくは、「GitHub Discussions のドキュメント」をご覧ください。

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

DiscussionEvent 用のイベント payload オブジェクト

KeyタイプDescription
actionstring実行されるアクション。
          `created` の可能性があります。

discussion|object| 作成されたディスカッション。

ForkEvent

ユーザがリポジトリをフォークします。 詳しくは、「リポジトリの REST API エンドポイント」をご覧ください。

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

ForkEvent のイベント payload オブジェクト

キータイプ説明
actionstring実行されるアクション。
          `forked` の可能性があります。

| | forkee|object | 作成された repository リソース。

GollumEvent

データ 再利用可能.webhooks.gollum_short_desc %}

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

GollumEvent のイベント payload オブジェクト

キータイプ[説明]
pagesarray更新されたページ。
pages[][page_name]stringページの名前です。
pages[][title]string現在のページ タイトル。
pages[][summary]stringページに関する省略可能なメモ。
          `null` の可能性があります。

pages[][action]|string | ページ上で実行されたアクション。 created または edited を指定できます。 pages[][sha]|string | ページの最新のコミットSHA。 pages[][html_url]|string | HTMLのwikiページを指す。

IssueCommentEvent

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

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

IssueCommentEvent のイベント payload オブジェクト

キータイプ説明
actionstringコメント上で実行されたアクション。
          `created` の可能性があります。

issue | object | コメントが属する Issue

          `comment`
          |
          `object` | [コメント](/rest/issues#comments)自体。

IssuesEvent

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

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

IssuesEvent のイベント payload オブジェクト

キータイプ[説明]
actionstring実行されたアクション。
          `opened`、`closed`、`reopened`のいずれかです。

| | issue | object | 問題自体。 | | assignee|object | 問題に割り当てられる、または割り当て解除されるオプションのユーザー。

          `assignees`
          |
          `array` |問題に関する担当者の詳細を示す、割り当て先オブジェクトの省略可能な配列。
          `label`              |              `object` | 問題に追加されたまたは問題から削除されるオプションのラベル。

          `labels`
          |
          `array` |問題のラベルを記述するラベル オブジェクトの省略可能な配列。

||

MemberEvent

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

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

MemberEvent のイベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 ユーザーがリポジトリへの招待を承認したことを示す、added を指定できます。
member
          |
          `object` | 追加された[ユーザー](/rest/users)。

PublicEvent

プライベートリポジトリがパブリックにされたとき。

PublicEvent のイベント payload オブジェクト

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

PullRequestEvent

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

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

PullRequestEvent のイベント payload オブジェクト

キータイプ[説明]
actionstring実行されたアクション。
          `opened`、`closed`、`merged`、`reopened`、`assigned`、`unassigned`、`labeled`、`unlabeled` のいずれかになります。

| | number | integer | pull request 番号。

          `pull_request`
          |
          `object` | [プルリクエスト](/rest/pulls) 自体。

| | assignee|object | 問題に割り当てられる、または割り当て解除される省略可能なユーザー。

          `assignees`
          |
          `array` |問題に関する担当者の詳細を示す、割り当て先オブジェクトの省略可能な配列。

          `label`
          |
          `object` | アクションが `labeled` または `unlabeled`された場合に問題から追加または削除された省略可能なラベル。

          `labels`
          |
          `array` |アクションが `labeled` または `unlabeled`された場合にプル要求のラベルを記述するラベル オブジェクトの省略可能な配列。

||

PullRequestReviewEvent

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

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

PullRequestReviewEvent のイベント payload オブジェクト

KeyタイプDescription
actionstring実行されたアクション。
          `created`、`updated`、または `dismissed` を指定できます。

| | pull_request|object | レビューに関連するプル要求review|object | 影響を受けた レビュー

PullRequestReviewCommentEvent

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

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

PullRequestReviewCommentEvent のイベント payload オブジェクト

キーType説明
actionstringコメント上で実行されたアクション。 created の可能性があります。
pull_request
          |
          `object` | コメントが属する [pull request](/rest/pulls)。

          `comment`
          |
          `object` | [コメント](/rest/pulls#comments) 自体。

PushEvent

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

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

PushEvent のイベント payload オブジェクト

KeyタイプDescription
repository_idintegerプッシュが発生したリポジトリのユニーク識別子。
push_idintegerプッシュ用のユニークな識別子。
refstringプッシュされた完全な git ref。 例: refs/heads/main
headstringプッシュ後の ref に対する最新のコミットの SHA。
beforestringプッシュ前の ref に対する最新のコミットの SHA。

ReleaseEvent

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

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

ReleaseEvent のイベント payload オブジェクト

キーType[説明]
actionstring実行されたアクション。 published の可能性があります。
release
          |
          `object` | [リリース](/rest/releases/releases#get-a-release) オブジェクト。

WatchEvent

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

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

WatchEvent のイベント payload オブジェクト

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