GitHub App Webhook 的 REST API 终结点
使用 REST API 与 OAuth apps Webhook 交互
关于 GitHub Apps
Webhook
GitHub App 的 Webhook 允许服务器在 GitHub App 的某些事件发生时接收 HTTP POST 有效负载。 有关详细信息,请参阅 Webhook 文档 和 将 Webhook 与 GitHub 应用配合使用。
Get a webhook configuration for an app
Returns the webhook configuration for a GitHub App. For more information about configuring a webhook for your app, see "Creating a GitHub App."
You must use a JWT to access this endpoint.
“Get a webhook configuration for an app”的细粒度访问令牌
此终结点不适用于 GitHub 应用程序用户访问令牌、GitHub 应用程序安装访问令牌或细粒度个人访问令牌。
“Get a webhook configuration for an app”的 HTTP 响应状态代码
| 状态代码 | 说明 | 
|---|---|
200 | OK  | 
“Get a webhook configuration for an app”的示例代码
请求示例
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/app/hook/configResponse
Status: 200{
  "content_type": "json",
  "insecure_ssl": "0",
  "secret": "********",
  "url": "https://example.com/webhook"
}Update a webhook configuration for an app
Updates the webhook configuration for a GitHub App. For more information about configuring a webhook for your app, see "Creating a GitHub App."
You must use a JWT to access this endpoint.
“Update a webhook configuration for an app”的细粒度访问令牌
此终结点不适用于 GitHub 应用程序用户访问令牌、GitHub 应用程序安装访问令牌或细粒度个人访问令牌。
“Update a webhook configuration for an app”的参数
| 名称, 类型, 说明 | 
|---|
accept string Setting to   | 
| 名称, 类型, 说明 | 
|---|
url string The URL to which the payloads will be delivered.  | 
content_type string The media type used to serialize the payloads. Supported values include   | 
secret string If provided, the   | 
insecure_ssl string or number Determines whether the SSL certificate of the host for   | 
“Update a webhook configuration for an app”的 HTTP 响应状态代码
| 状态代码 | 说明 | 
|---|---|
200 | OK  | 
“Update a webhook configuration for an app”的示例代码
请求示例
curl -L \
  -X PATCH \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/app/hook/config \
  -d '{"content_type":"json","insecure_ssl":"0","secret":"********","url":"https://example.com/webhook"}'Response
Status: 200{
  "content_type": "json",
  "insecure_ssl": "0",
  "secret": "********",
  "url": "https://example.com/webhook"
}List deliveries for an app webhook
Returns a list of webhook deliveries for the webhook configured for a GitHub App.
You must use a JWT to access this endpoint.
“List deliveries for an app webhook”的细粒度访问令牌
此终结点不适用于 GitHub 应用程序用户访问令牌、GitHub 应用程序安装访问令牌或细粒度个人访问令牌。
“List deliveries for an app webhook”的参数
| 名称, 类型, 说明 | 
|---|
accept string Setting to   | 
| 名称, 类型, 说明 | 
|---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." 默认:   | 
cursor string Used for pagination: the starting delivery from which the page of deliveries is fetched. Refer to the   | 
“List deliveries for an app webhook”的 HTTP 响应状态代码
| 状态代码 | 说明 | 
|---|---|
200 | OK  | 
400 | Bad Request  | 
422 | Validation failed, or the endpoint has been spammed.  | 
“List deliveries for an app webhook”的示例代码
请求示例
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/app/hook/deliveriesResponse
Status: 200[
  {
    "id": 12345678,
    "guid": "0b989ba4-242f-11e5-81e1-c7b6966d2516",
    "delivered_at": "2019-06-03T00:57:16Z",
    "redelivery": false,
    "duration": 0.27,
    "status": "OK",
    "status_code": 200,
    "event": "issues",
    "action": "opened",
    "installation_id": 123,
    "repository_id": 456,
    "throttled_at": "2019-06-03T00:57:16Z"
  },
  {
    "id": 123456789,
    "guid": "0b989ba4-242f-11e5-81e1-c7b6966d2516",
    "delivered_at": "2019-06-04T00:57:16Z",
    "redelivery": true,
    "duration": 0.28,
    "status": "OK",
    "status_code": 200,
    "event": "issues",
    "action": "opened",
    "installation_id": 123,
    "repository_id": 456,
    "throttled_at": null
  }
]Get a delivery for an app webhook
Returns a delivery for the webhook configured for a GitHub App.
You must use a JWT to access this endpoint.
“Get a delivery for an app webhook”的细粒度访问令牌
此终结点不适用于 GitHub 应用程序用户访问令牌、GitHub 应用程序安装访问令牌或细粒度个人访问令牌。
“Get a delivery for an app webhook”的参数
| 名称, 类型, 说明 | 
|---|
accept string Setting to   | 
| 名称, 类型, 说明 | 
|---|
delivery_id integer 必须 | 
“Get a delivery for an app webhook”的 HTTP 响应状态代码
| 状态代码 | 说明 | 
|---|---|
200 | OK  | 
400 | Bad Request  | 
422 | Validation failed, or the endpoint has been spammed.  | 
“Get a delivery for an app webhook”的示例代码
请求示例
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/app/hook/deliveries/DELIVERY_IDResponse
Status: 200{
  "id": 12345678,
  "guid": "0b989ba4-242f-11e5-81e1-c7b6966d2516",
  "delivered_at": "2019-06-03T00:57:16Z",
  "redelivery": false,
  "duration": 0.27,
  "status": "OK",
  "status_code": 200,
  "event": "issues",
  "action": "opened",
  "installation_id": 123,
  "repository_id": 456,
  "url": "https://www.example.com",
  "throttled_at": "2019-06-03T00:57:16Z",
  "request": {
    "headers": {
      "X-GitHub-Delivery": "0b989ba4-242f-11e5-81e1-c7b6966d2516",
      "X-Hub-Signature-256": "sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e",
      "Accept": "*/*",
      "X-GitHub-Hook-ID": "42",
      "User-Agent": "GitHub-Hookshot/b8c71d8",
      "X-GitHub-Event": "issues",
      "X-GitHub-Hook-Installation-Target-ID": "123",
      "X-GitHub-Hook-Installation-Target-Type": "repository",
      "content-type": "application/json",
      "X-Hub-Signature": "sha1=a84d88e7554fc1fa21bcbc4efae3c782a70d2b9d"
    },
    "payload": {
      "action": "opened",
      "issue": {
        "body": "foo"
      },
      "repository": {
        "id": 123
      }
    }
  },
  "response": {
    "headers": {
      "Content-Type": "text/html;charset=utf-8"
    },
    "payload": "ok"
  }
}Redeliver a delivery for an app webhook
Redeliver a delivery for the webhook configured for a GitHub App.
You must use a JWT to access this endpoint.
“Redeliver a delivery for an app webhook”的细粒度访问令牌
此终结点不适用于 GitHub 应用程序用户访问令牌、GitHub 应用程序安装访问令牌或细粒度个人访问令牌。
“Redeliver a delivery for an app webhook”的参数
| 名称, 类型, 说明 | 
|---|
accept string Setting to   | 
| 名称, 类型, 说明 | 
|---|
delivery_id integer 必须 | 
“Redeliver a delivery for an app webhook”的 HTTP 响应状态代码
| 状态代码 | 说明 | 
|---|---|
202 | Accepted  | 
400 | Bad Request  | 
422 | Validation failed, or the endpoint has been spammed.  | 
“Redeliver a delivery for an app webhook”的示例代码
请求示例
curl -L \
  -X POST \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/app/hook/deliveries/DELIVERY_ID/attemptsAccepted
Status: 202