Skip to main content

Webhook 的类型

可以创建 Webhook 来订阅特定存储库、组织、GitHub Enterprise、GitHub Marketplace帐户、GitHub Sponsors帐户或GitHub App中发生的事件。

关于 Webhook 类型

Webhook 只能访问其安装所在的存储库、组织、GitHub Enterprise、GitHub Marketplace帐户、GitHub Sponsors帐户、或GitHub App中可用的事件。

无法为单个用户帐户或特定于用户资源的事件(例如个人通知或提及)创建 Webhook。

要创建和管理 Webhook,必须拥有创建 Webhook 并侦听事件的资源或拥有该资源的管理员访问权限。 例如,若要管理组织内的 Webhook,您需要具有该组织的管理员权限。

某些 Webhook 事件是特定类型的 Webhook 独有的。 例如,组织 Webhook 可以订阅仅在组织级别发生的事件,存储库 Webhook 无法订阅这些事件。 有关每个 webhook 的具体可用性的详细信息,请参阅 Webhook 事件和有效负载

有关详细信息,请参阅“关于 网络钩子”。

仓库网络钩子

可以在存储库中创建 Webhook 以订阅在该存储库中发生的事件。 必须是存储库所有者,或在存储库中具有管理员访问权限的人员,才能在存储库中创建和管理 Webhook。 无法在没有所需权限的存储库中创建、编辑或删除 Webhook。

可以在单个存储库中创建多个 Webhook。 但是,您最多只能创建 20 个用于订阅每一种单独事件类型的 Webhook。 例如,在单个存储库中,最多只能创建 20 个不同的 Webhook,它们各自订阅 push 事件。

可以使用 GitHub Web 界面或 REST API 来管理存储库 Webhook。 有关详细信息,请参阅“创建网络钩子”、“测试 Webhook”和“禁用网络钩子 (Webhook)”。 有关使用 REST API 管理存储库 Webhook 的详细信息,请参阅“存储库 Webhook 的 REST API 终结点”。

组织 web 挂钩

可以在组织中创建 Webhook 以订阅在该组织中发生的事件。 组织 Webhook 可以订阅组织拥有的所有存储库中发生的事件。 用户还可以订阅在组织级别发生的、超出任何特定存储库范围的事件,例如新增组织成员时的情况。

必须是组织所有者才能在组织中创建和管理 Webhook。

可以在单个组织中创建多个 Webhook。 但是,最多只能创建 20 个 Webhook,用于订阅每个单独的事件类型。 例如,在单个组织中,你最多只能创建 20 个分别订阅 push 事件的不同 Webhook。

您可以使用 GitHub Web 界面或 REST API 来管理组织的 Webhook。 有关详细信息,请参阅“创建网络钩子”、“测试 Webhook”和“禁用网络钩子 (Webhook)”。 有关使用 REST API 管理组织 Webhook 的详细信息,请参阅“用于组织 Webhooks 的 REST API 接口节点”。

GitHub Enterprise 的全局 Webhook

企业所有者可以创建全局 Webhook 以订阅企业或企业拥有的组织和存储库中发生的事件。

可以在单个企业中创建多个 Webhook。 但是,最多只能创建 20 个用于订阅各个事件类型的 Webhook。 例如,在单个企业内,最多只能创建 20 个不同的 Webhook,且每个 Webhook 都订阅 membership 事件。

可以使用 GitHub Web 界面来管理全局 Webhook。 有关详细信息,请参阅“创建网络钩子”、“测试 Webhook”和“禁用网络钩子 (Webhook)”。

GitHub Marketplace 网络钩子

你可以创建一个 Webhook,订阅与你在 GitHub Marketplace 中发布的应用相关的事件。 在 GitHub Marketplace 中,每个应用只能创建一个 Webhook。 只有应用所有者或有权访问应用的应用管理器才能创建和管理 GitHub Marketplace Webhook。

GitHub Marketplace webhook 无法删除,但你可以将其停用,以停止接收 webhook 推送。

可以使用 GitHub Web 界面来管理 GitHub Marketplace webhook。 有关详细信息,请参阅“创建网络钩子”、“测试 Webhook”和“禁用网络钩子 (Webhook)”。

GitHub Sponsors Webhooks

您可以创建 webhook 以订阅与 GitHub Sponsors 相关的事件。 只能为帐户创建最多 20 个 GitHub Sponsors Webhook。

您必须是帐户所有者或拥有赞助帐户的管理员权限,才能管理赞助网络钩子。

可以使用 GitHub Web 界面来管理 GitHub Sponsors webhook。 有关详细信息,请参阅“创建网络钩子”、“测试 Webhook”和“禁用网络钩子 (Webhook)”。

GitHub App 网络钩子

当应用获准访问的仓库或组织中发生特定事件时,可以将 GitHub App 配置为接收 webhook。目前,安装在企业中的应用无法接收 webhook——必须将其安装到企业中的每个组织上,才能接收这些事件。

每个 GitHub App 都有一个由 GitHub 自动创建的 webhook。 默认情况下,Webhook 不会订阅任何事件。 您可以配置 Webhook 所订阅的事件。 GitHub App无法删除 Webhook,但可以停用它以停止接收 Webhook 传送。

可以使用 GitHub Web 界面或 REST API 来管理 GitHub App Webhook。 有关详细信息,请参阅“创建网络钩子”、“测试 Webhook”和“禁用网络钩子 (Webhook)”。 有关使用 REST API 管理 GitHub App Webhook 的详细信息,请参阅 Webhooks 的 GitHub App REST API 终结点