Skip to main content

Webhook の種類

Webhook を作成して特定のリポジトリ、組織、GitHub Marketplaceアカウント、GitHub Sponsorsアカウント、、GitHub Appで発生するイベントにサブスクライブできます。

Webhook のタイプについて

Webhook は、リポジトリ、組織、GitHub Marketplaceアカウント、GitHub Sponsorsアカウント、、GitHub Appにインストールされていて利用可能なイベントのみにアクセスできます。

個々のユーザー アカウント、または個人の通知やメンションなどのユーザー リソースに固有のイベントに対して Webhook を作成することはできません。

Webhook を作成および管理するには、Webhook が作成され、イベントをリッスンしているリソースを所有しているか、そのリソースへの管理者アクセス権を持っている必要があります。 たとえば、組織内の Webhook を管理するには、その組織の管理者権限が必要です。

一部の Webhook イベントは、特定の種類の Webhook に固有です。 たとえば、組織の Webhook は、リポジトリ Webhook がサブスクライブできない組織レベルでのみ発生するイベントにサブスクライブできます。 各 Webhook 特有の可用性に関する詳細は、「Webhook のイベントとペイロード」をご覧ください。

詳しくは、「webhook について」を参照してください。

リポジトリ webhook

リポジトリ内に Webhook を作成すると、そのリポジトリ内で発生するイベントにサブスクライブできます。 リポジトリに Webhook を作成するには、そのリポジトリのオーナーであるか、リポジトリの管理者アクセス権を持っている必要があります。 必要なアクセス許可がないリポジトリで Webhook を作成、編集、または削除することはできません。

1 つのリポジトリに複数の Webhook を作成できます。 ただし、個々のイベントの種類にサブスクライブする Webhook は、最大で20のみ作成できます。 たとえば、1 つのリポジトリではそれぞれの Webhook が push イベントにサブスクライブするものには、最大20のさまざまな Webhook のみ作成できます。

GitHub Web インターフェイスまたは REST API を使用して、リポジトリの Webhook を管理できます。 詳しくは、「webhookの作成」、「webhookの編集」、「Webhook を無効にする」をご覧ください。 REST API を使用してリポジトリ Webhook を管理する方法の詳細については、「リポジトリ ウェブフック の REST API エンドポイント」を参照してください。

組織webhook

組織内に Webhook を作成すると、その組織内で発生するイベントにサブスクライブできます。 組織の Webhook は、組織が所有するすべてのリポジトリで発生するイベントにサブスクライブできます。 また、新しいメンバーが組織に追加されたときなど、所定のリポジトリの外部にある組織レベルで発生するイベントにサブスクライブすることもできます。

組織で Webhook を作成および管理するには、その組織のオーナーである必要があります。

1 つの組織で複数の Webhook を作成できます。 ただし、個々のイベントの種類にサブスクライブする Webhook は、最大で20のみ作成できます。 たとえば、1 つの組織ではそれぞれの Webhook が push イベントにサブスクライブするものには、最大20のさまざまな Webhook のみ作成できます。

GitHub Web インターフェイスまたは REST API を使用して、組織の Webhook を管理できます。 詳しくは、「webhookの作成」、「webhookの編集」、「Webhook を無効にする」をご覧ください。 REST API を使用して組織の Webhook を管理する方法の詳細については、「組織の Webhook の REST API エンドポイント」を参照してください。

GitHub Marketplace の Webhook

GitHub Marketplace で発行したアプリに関連するイベントをサブスクライブする Webhook を作成できます。 GitHub Marketplace 内のアプリごとに作成できる Webhook は 1 つだけです。 GitHub Marketplace の Webhook を作成および管理できるのは、アプリのオーナー、またはアプリを所有する組織のアプリ マネージャーだけです。

GitHub Marketplace webhook は削除できませんが、Webhook 配信の受信を停止するために無効にすることはできます。

GitHub Web インターフェイスを使用して、GitHub Marketplace の Webhook を管理できます。 詳しくは、「webhookの作成」、「webhookの編集」、「Webhook を無効にする」をご覧ください。

GitHub Sponsors の Webhook

GitHub Sponsors に関連するイベントにサブスクライブする Webhook を作成できます。 GitHub Sponsorsアカウントに作成できる Webhook は、最大で20です。

スポンサーの Webhook を管理するには、アカウントのオーナーであるか、スポンサー付きアカウントの管理者アクセス権を持っている必要があります。

GitHub Web インターフェイスを使用して、GitHub Sponsors の Webhook を管理できます。 詳しくは、「webhookの作成」、「webhookの編集」、「Webhook を無効にする」をご覧ください。

GitHub App の Webhook

アプリのアクセス権が付与されているリポジトリまたは組織で特定のイベントが発生したときに Webhook を受信するように GitHub App を構成できます。

各 GitHub App には、GitHub によって自動的に作成される 1 つの Webhook があります。 既定では、Webhook はどのイベントにもサブスクライブしません。 Webhook がサブスクライブするイベントを構成できます。 GitHub App Webhook は削除できませんが、Webhook 配信の受信を停止するために無効にすることはできます。

GitHub Web インターフェイスまたは REST API を使用して、GitHub App の Webhook を管理できます。 詳しくは、「webhookの作成」、「webhookの編集」、「Webhook を無効にする」をご覧ください。 REST API を使用して GitHub App Webhook を管理する方法の詳細は、「GitHub AppWebhook 用 REST API エンドポイント」を参照してください。