Skip to main content

Enterprise Server 3.20 は、現在リリース候補として使用できます。

Webhook の種類

特定のリポジトリ、組織、GitHub Enterprise、 または GitHub App で発生するイベントに対して購読するための Webhook を作成できます。

Webhook のタイプについて

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

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

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

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

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

リポジトリウェブフック

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

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

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

組織のウェブフック

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

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

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

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

GitHub Enterprise

のグローバル Webhook

企業のオーナーは、グローバル Webhook を作成して、企業内で発生するイベント、組織内で発生するイベント、および企業が所有するリポジトリにサブスクライブできます。

1 つの企業で複数の Webhook を作成できます。 ただし、個々のイベントの種類にサブスクライブする Webhook は、最大で250のみ作成できます。 たとえば、1つのエンタープライズでは、membership イベントにサブスクライブする Webhook を最大で250個作成することができます。

GitHub Web インターフェイスを使って、グローバルな Webhook を管理できます。 詳細については、「webhookの作成」、「webhookの編集」、「Webhook を無効にする」を参照してください。 REST API を使用してグローバル Webhook を管理することもできます。 エンドポイントの完全な一覧については、「グローバル Webhook の REST API エンドポイント」を参照してください。

GitHub App webhook

アプリがアクセス権を付与されているリポジトリまたは organization で特定のイベントが発生したときに、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 App アプリのWebhook用REST APIエンドポイント」を参照してください。