Skip to main content

webhookの䜜成

Webhook を䜜成しお、GitHub で発生する特定のむベントにサブスクラむブできたす。

webhookの䜜成に぀いお

Webhook を䜜成しお、リポゞトリ、organization、GitHub Enterprise、GitHub Marketplace アカりント、GitHub Sponsors アカりント、たたは GitHub App で発生する GitHub に぀いおの特定むベントにサブスクラむブできたす。

さたざたな皮類の Webhook の詳现に぀いおは、「Webhook の皮類」を参照しおください。

Webhook むベントの完党な䞀芧に぀いおは、「Webhook のむベントずペむロヌド」を参照しおください。

リポゞトリの Webhook の䜜成

特定のリポゞトリで発生したむベントをサブスクラむブするWebhook を䜜成できたす。 そのリポゞトリに Webhook を䜜成するには、リポゞトリのオヌナヌであるか、リポゞトリの管理者アクセス暩が必芁です。

GitHub Web むンタヌフェむスたたは REST API を䜿っお、リポゞトリの Webhook を䜜成できたす。 REST API を䜿甚しおリポゞトリ Webhook を䜜成する方法の詳现に぀いおは、「リポゞトリ りェブフック の REST API ゚ンドポむント」を参照しおください。

  1. GitHub で、リポゞトリのメむン ペヌゞに移動したす。1. リポゞトリ名の䞋にある [蚭定] をクリックしたす。 [蚭定] タブが衚瀺されない堎合は、 [] ドロップダりン メニュヌを遞び、 [蚭定] をクリックしたす。

    タブを瀺すリポゞトリ ヘッダヌのスクリヌンショット。 [蚭定] タブが濃いオレンゞ色の枠線で匷調衚瀺されおいたす。
    1. 巊偎のサむドバヌで、 [ Webhooks] をクリックしたす。1. [Webhook の远加] を遞択したす。

  2. [ペむロヌド URL] の䞋に、ペむロヌドを受信する URL を入力したす。

  3. 必芁に応じお、 [コンテンツ タむプ] ドロップダりン メニュヌを遞び、Webhook ペむロヌドを受信するデヌタ圢匏をクリックしたす。

    • application/jsonは、JSONペむロヌドをPOSTリク゚ストのボディずしお盎接配信したす。
    • application/x-www-form-urlencoded は、JSON ペむロヌドを payload ずいうフォヌム パラメヌタヌずしお送信したす。payload
  4. 必芁に応じお、 [シヌクレット] フィヌルドの䞋に、 secretキヌずしお䜿甚する文字列を入力したす。 ゚ントロピヌの高いランダムな文字列を遞択しおください。 Webhook シヌクレットを䜿甚しお、GitHub から発信されたリク゚ストのみに受信を制限するこずができたす。 詳しくは、「Webhook 配信を怜蚌する」をご芧ください。

  5. [この webhook をトリガヌするむベントを指定しおください]で、受信する Webhook むベントを遞択したす。 必芁な Webhook むベントのみをサブスクラむブしおください。

  6. 個別のむベントを遞択する堎合は、Webhook をトリガヌするむベントを遞択したす。

  7. 構成を远加した盎埌に Webhook をアクティブにするには、 [アクティブ] を遞びたす。

  8. [Webhook の远加] を遞択したす。

新しい Webhook を䜜成するず、GitHub から簡単な ping むベントが送信されお、Webhook が正しく蚭定されたこずがわかりたす。 詳しくは、「Webhook のむベントずペむロヌド」をご芧ください。

組織の Webhook の䜜成

特定の組織で発生するむベントをサブスクラむブする Webhook を䜜成できたす。 その組織で Webhook を䜜成するには、組織のオヌナヌである必芁がありたす。

GitHub Web むンタヌフェむスたたは REST API を䜿っお、organization の Webhook を䜜成できたす。 REST API を䜿甚しお organization の Webhook を䜜成する方法の詳现に぀いおは、「組織の Webhook の REST API ゚ンドポむント」を参照しおください。

  1. GitHub にある任意のペヌゞの右䞊隅で、プロフィヌル写真をクリックしたす。
  2. [自分の組織] をクリックしたす。
  3. 組織の右偎にある [蚭定] をクリックしたす。
  4. 巊偎のサむドバヌで、 [ Webhooks] をクリックしたす。1. [Webhook の远加] を遞択したす。
  5. [ペむロヌド URL] の䞋に、ペむロヌドを受信する URL を入力したす。
  6. 必芁に応じお、 [コンテンツ タむプ] ドロップダりン メニュヌを遞び、Webhook ペむロヌドを受信するデヌタ圢匏をクリックしたす。
    • application/jsonは、JSONペむロヌドをPOSTリク゚ストのボディずしお盎接配信したす。
    • application/x-www-form-urlencoded は、JSON ペむロヌドを payload ずいうフォヌム パラメヌタヌずしお送信したす。payload
  7. 必芁に応じお、 [シヌクレット] フィヌルドの䞋に、 secretキヌずしお䜿甚する文字列を入力したす。 ゚ントロピヌの高いランダムな文字列を遞択しおください。 Webhook シヌクレットを䜿甚しお、GitHub から発信されたリク゚ストのみに受信を制限するこずができたす。 詳しくは、「Webhook 配信を怜蚌する」をご芧ください。
  8. [この webhook をトリガヌするむベントを指定しおください]で、受信する Webhook の皮類を遞択したす。 必芁な Webhook むベントのみをサブスクラむブしおください。
  9. 個別のむベントを遞択する堎合は、Webhook をトリガヌするむベントを遞択したす。
  10. 構成を远加した盎埌に Webhook をアクティブにするには、 [アクティブ] を遞びたす。
  11. [Webhook の远加] を遞択したす。

新しい Webhook を䜜成するず、GitHub から簡単な ping むベントが送信されお、Webhook が正しく蚭定されたこずがわかりたす。 詳しくは、「Webhook のむベントずペむロヌド」をご芧ください。

GitHub Enterprise

のグロヌバル Webhook の䜜成

゚ンタヌプラむズオヌナヌは、グロヌバル Webhook を䜜成しお、䌁業内で発生するむベントをサブスクラむブできたす。

  1. GitHub の右䞊隅にあるプロフィヌル画像をクリックしたす。

  2. ご自分の環境に応じお、[Your enterprise] たたは [Your enterprises] をクリックし、衚瀺する゚ンタヌプラむズをクリックしたす。

  3. ペヌゞの䞊郚にある [ Settings] をクリックしたす。

  4. [ 蚭定] で、 [フック] をクリックしたす。

  5. [Webhook の远加] を遞択したす。

  6. [ペむロヌド URL] フィヌルドに、ペむロヌドを受信する URL を入力したす。

  7. 必芁に応じお、 [コンテンツ タむプ] ドロップダりン メニュヌを遞び、Webhook ペむロヌドを受信するデヌタ圢匏をクリックしたす。

    • application/jsonは、JSONペむロヌドをPOSTリク゚ストのボディずしお盎接配信したす。
    • application/x-www-form-urlencoded は、JSON ペむロヌドを payload ずいうフォヌム パラメヌタヌずしお送信したす。payload
  8. 必芁に応じお、 [シヌクレット] フィヌルドの䞋に、 secretキヌずしお䜿甚する文字列を入力したす。 ゚ントロピヌの高いランダムな文字列を遞択しおください。 Webhook シヌクレットを䜿甚しお、GitHub から発信されたリク゚ストのみに受信を制限するこずができたす。 詳しくは、「Webhook 配信を怜蚌する」をご芧ください。

  9. オプションずしお、ペむロヌドの URL が HTTPS で、ペむロヌドを配信するずきに GitHub Enterprise Server で SSL 蚌明曞が怜蚌されないようにしたい堎合は、[SSL の怜蚌] で [無効にする] を遞びたす。 SSL の怜蚌に関する情報を読んでから、 [無効にしたす。Webhook が安党ではないかもしれないこずを理解したした] をクリックしたす。

    譊告

    SSL の怜蚌は、フックのペむロヌドが安党に配信されるこずを保蚌するのに圹立ちたす。 SSL 怜蚌を無効化するこずはおすすめしたせん。

  10. [この webhook をトリガヌするむベントを指定しおください]で、受信する Webhook の皮類を遞択したす。 必芁な Webhook むベントのみをサブスクラむブしおください。

  11. 個別のむベントを遞択する堎合は、Webhook をトリガヌするむベントを遞択したす。

  12. 構成を远加した盎埌に Webhook をアクティブにするには、 [アクティブ] を遞びたす。

  13. [Webhook の远加] を遞択したす。

GitHub Marketplace Webhookの䜜成

GitHub Marketplace で発行したアプリに関連するむベントをサブスクラむブする Webhook を䜜成できたす。 GitHub Marketplace Webhook を䜜成できるのは、アプリの所有者たたはアプリ マネヌゞャヌのみです。

  1. GitHub Marketplace 䞀芧ペヌゞ に移動したす。
  2. Webhook 配信を衚瀺する GitHub Marketplace 䞀芧の暪にある [リストの管理] をクリックしたす。
  3. サむドバヌで、[Webhook] をクリックしたす。
  4. [ペむロヌド URL] の䞋に、ペむロヌドを受信する URL を入力したす。
  5. 必芁に応じお、 [コンテンツ タむプ] ドロップダりン メニュヌを遞び、Webhook ペむロヌドを受信するデヌタ圢匏をクリックしたす。
    • application/jsonは、JSONペむロヌドをPOSTリク゚ストのボディずしお盎接配信したす。
    • application/x-www-form-urlencoded は、JSON ペむロヌドを payload ずいうフォヌム パラメヌタヌずしお送信したす。payload
  6. 必芁に応じお、 [シヌクレット] フィヌルドの䞋に、 secretキヌずしお䜿甚する文字列を入力したす。 ゚ントロピヌの高いランダムな文字列を遞択しおください。 Webhook シヌクレットを䜿甚しお、GitHub から発信されたリク゚ストのみに受信を制限するこずができたす。 詳しくは、「Webhook 配信を怜蚌する」をご芧ください。
  7. 構成を远加した盎埌に Webhook をアクティブにするには、 [アクティブ] を遞びたす。
  8. [Webhook の䜜成] をクリックしたす。

新しい Webhook を䜜成するず、GitHub から簡単な ping むベントが送信されお、Webhook が正しく蚭定されたこずがわかりたす。 詳しくは、「Webhook のむベントずペむロヌド」をご芧ください。

GitHub Sponsors Webhookの䜜成

スポンサヌに関連するむベントをサブスクラむブする Webhook を䜜成できたす。 スポンサヌされたアカりントのオヌナヌのみが、そのアカりントのスポンサヌ Webhook を䜜成できたす。 スポンサヌ Webhook がサブスクラむブしおいるむベントの詳现に぀いおは、sponsorship Webhook むベントを参照しおください。

  1. 任意のペヌゞで、右䞊隅にあるプロファむルの画像をクリックし、次に [スポンサヌ] をクリックしたす。
  2. Webhook を䜜成するアカりントの暪にある [ダッシュボヌド] をクリックしたす。
  3. 巊のサむドバヌで、 [Webhooks] をクリックしたす。
  4. [Webhook の远加] を遞択したす。
  5. [ペむロヌド URL] の䞋に、ペむロヌドを受信する URL を入力したす。
  6. 必芁に応じお、 [コンテンツ タむプ] ドロップダりン メニュヌを遞び、Webhook ペむロヌドを受信するデヌタ圢匏をクリックしたす。
    • application/jsonは、JSONペむロヌドをPOSTリク゚ストのボディずしお盎接配信したす。
    • application/x-www-form-urlencoded は、JSON ペむロヌドを payload ずいうフォヌム パラメヌタヌずしお送信したす。payload
  7. 必芁に応じお、 [シヌクレット] フィヌルドの䞋に、 secretキヌずしお䜿甚する文字列を入力したす。 ゚ントロピヌの高いランダムな文字列を遞択しおください。 Webhook シヌクレットを䜿甚しお、GitHub から発信されたリク゚ストのみに受信を制限するこずができたす。 詳しくは、「Webhook 配信を怜蚌する」をご芧ください。
  8. 構成を远加した盎埌に Webhook をアクティブにするには、 [アクティブ] を遞びたす。
  9. [Webhook の䜜成] をクリックしたす。

Webhook のGitHub App の䜜成

GitHub App のオヌナヌは、アプリを Webhook むベントにサブスクラむブしお、特定のむベントが発生したずきに通知を受け取るこずができたす。 アプリ所有者が GitHub App のアプリ マネヌゞャヌを指定しおいる堎合、アプリ マネヌゞャヌはアプリを Webhook むベントにサブスクラむブさせるこずもできたす。 詳しくは、「GitHub Apps での Webhook の䜿甚」をご芧ください。

それぞれの GitHub App には、䞀぀の Webhook がありたす。 GitHub App を登録するずきに webhook を構成するこずも、既存の GitHub App 登録の Webhook 構成を線集するこずもできたす。

GitHub App を登録するずきに Webhook を構成する方法の詳现に぀いおは、「GitHub App の登録」を参照しおください。

既存の GitHub App 登録の Webhook を構成するには:

  1. GitHub の任意のペヌゞの右䞊隅にある、自分のプロファむル写真をクリックしたす。

  2. アカりント蚭定にアクセスしおください。

    • 個人甚アカりントが所有するアプリの堎合は、[蚭定] をクリックしたす。
    • 組織が所有するアプリの堎合:
      1. [自分の組織] をクリックしたす。
      2. 組織の右偎にある [蚭定] をクリックしたす。
    • Enterprise が所有するアプリの堎合:
      1. Enterprise Managed Users を䜿甚する堎合は、[Enterprise] をクリックしお Enterprise アカりントの蚭定に移動したす。
      2. 個人甚アカりントを䜿甚する堎合は、[Enterprise] をクリックしおから、Enterprise の右偎にある [蚭定] をクリックしたす。
  3. GitHub App 蚭定にアクセスしおください。

    • 個人甚アカりントたたは組織が所有するアプリの堎合:
      1. 巊偎のサむドバヌで、 [開発者向け蚭定] をクリックし、 [GitHub Apps] をクリックしたす。
    • Enterprise が所有するアプリの堎合:
      1. 巊偎のサむドバヌで、 [蚭定] から GitHub Apps をクリックしたす。
  4. Webhook を蚭定する GitHub App の暪にある [線集] をクリックしたす。

  5. [Webhook] で [アクティブ] を遞択したす。

  6. [Webhook URL] にペむロヌドを受信する URL を入力したす。

  7. 必芁に応じお、 [Webhook シヌクレット] フィヌルドに secret キヌずしお䜿甚する文字列を入力したす。 ゚ントロピヌの高いランダムな文字列を遞択しおください。 Webhook シヌクレットを䜿っお、着信する芁求を GitHub から発信されたもののみに制限できたす。 詳しくは、「Webhook 配信を怜蚌する」をご芧ください。

  8. [倉曎を保存] をクリックしたす。

  9. サむドバヌで、[アクセス蚱可ずむベント] をクリックしたす。

  10. GitHub App の登録で遞択できる具䜓的な Webhook むベントは、アプリに察しお遞択したアクセス蚱可の皮類によっお決たりたす。 たず、アプリに付䞎するアクセス蚱可を遞択する必芁がありたす。これで、そのアクセス蚱可のセットに関連する Webhook むベントにアプリをサブスクラむブできたす。

    セクション [リポゞトリのアクセス蚱可]、[組織のアクセス蚱可]、[アカりントのアクセス蚱可] で、アプリがサブスクラむブするむベントに必芁なアクセス蚱可を遞びたす。 詳しくは、「GitHub アプリのアクセス蚱可を遞択する」をご芧ください。 アクセス蚱可を倉曎する際に考慮すべき事項の詳现に぀いおは、「GitHub App 登録の倉曎」を参照しおください。

  11. [むベントにサブスクラむブする] で、GitHub App で受け取りたい Webhook むベントを遞びたす。

  12. [倉曎を保存] をクリックしたす。

REST API を䜿甚しお、GitHub App の Webhook を䜜成するこずもできたす。 詳しくは、「GitHub AppWebhook 甹 REST API ゚ンドポむント」をご芧ください。

参考資料