このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2022-06-03. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの改善、新機能のためには、最新バージョンのGitHub Enterpriseにアップグレードしてく� さい。 アップグレードに関する支援については、GitHub Enterprise supportに連絡してく� さい。
Organization webhook
Organization webhooks APIについて
Organizationのwebhookを使用すると、Organizationで特定のイベントが発生するとき必ずHTTP POST ペイロードを受け取ることができます。 The webhook REST APIs enable you to manage repository, organization, and app webhooks. You can also use the REST API to change the configuration of the webhook. たとえば、ペイロードURL、コンテントタイプ、SSLの検証、シークレットを変更できます。 詳しい情� �については、以下を参照してく� さい。
サブスクライブできるアクションの詳細は、「GitHub のイベントタイプ」を参照してく� さい。
スコープと制限
Organization の webhook に対するすべてのアクションでは、認証ユーザが管理対象の Organization の管理者である必要があります。 また、OAuth トークンには admin:org_hook スコープが必要です。 詳しい情� �については、「OAuth App のスコープ」を参照してく� さい。
webhook 設定に存在する可能性がある機密データを保護するために、次のアクセス制御ルールも適用します。
- OAuth アプリケーションが、それによって作成されたのではない webhook をリスト、表示、編集することはできません。
- OAuth アプリケーションによって作成された webhook をユーザがリスト、表示、編集することはできません。
webhook の受信
GitHub Enterprise Server で webhook ペイロードを送信するには、インターネットからサーバーにアクセスできる必要があります。 暗号化されたペイロードを HTTPS 経由で送信できるように、SSL の使用も強く推奨します。
その他のベストプラクティスについては、ガイドを参照してく� さい。
webhook ヘッダー
GitHub Enterprise Server は、イベントタイプとペイロード識別子を区別するために、複数の HTTP ヘッダーも送信します。 詳細は「webhook ヘッダー」を参照してく� さい。
List organization webhooks
パラメータ
| Headers |
|---|
| 名前, 種類, 説明 |
acceptstringSetting to |
| Path parameters |
| 名前, 種類, 説明 |
orgstring必� �The organization name. The name is not case sensitive. |
| クエリパラメータ |
| 名前, 種類, 説明 |
per_pageintegerThe number of results per page (max 100). デフォルト: |
pageintegerPage number of the results to fetch. デフォルト: |
HTTP response status codes
| Status code | 説明 |
|---|---|
200 | OK |
404 | Resource not found |
コードサンプル
curl \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooksResponse
Status: 200[
{
"id": 1,
"url": "https://api.github.com/orgs/octocat/hooks/1",
"ping_url": "https://api.github.com/orgs/octocat/hooks/1/pings",
"name": "web",
"events": [
"push",
"pull_request"
],
"active": true,
"config": {
"url": "http://example.com",
"content_type": "json"
},
"updated_at": "2011-09-06T20:39:23Z",
"created_at": "2011-09-06T17:26:27Z",
"type": "Organization"
}
]Create an organization webhook
Here's how you can create a hook that posts payloads in JSON format:
パラメータ
| Headers | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| 名前, 種類, 説明 | ||||||||||
acceptstringSetting to | ||||||||||
| Path parameters | ||||||||||
| 名前, 種類, 説明 | ||||||||||
orgstring必� �The organization name. The name is not case sensitive. | ||||||||||
| Body parameters | ||||||||||
| 名前, 種類, 説明 | ||||||||||
namestring必� �Must be passed as "web". | ||||||||||
configobject必� �Key/value pairs to provide settings for this webhook. These are defined below. | ||||||||||
Properties of the | ||||||||||
| 名前, 種類, 説明 |
|---|
urlstring必� �The URL to which the payloads will be delivered. |
content_typestringThe media type used to serialize the payloads. Supported values include |
secretstringIf provided, the |
insecure_sslstring or number or Determines whether the SSL certificate of the host for |
usernamestring |
passwordstring |
eventsarray of stringsDetermines what events the hook is triggered for.
デフォルト: push
activebooleanDetermines if notifications are sent when the webhook is triggered. Set to true to send notifications.
デフォルト: true
HTTP response status codes
| Status code | 説明 |
|---|---|
201 | Created |
404 | Resource not found |
422 | Validation failed |
コードサンプル
curl \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooks \
-d '{"name":"web","active":true,"events":["push","pull_request"],"config":{"url":"http://example.com/webhook","content_type":"json"}}'Response
Status: 201{
"id": 1,
"url": "https://api.github.com/orgs/octocat/hooks/1",
"ping_url": "https://api.github.com/orgs/octocat/hooks/1/pings",
"name": "web",
"events": [
"push",
"pull_request"
],
"active": true,
"config": {
"url": "http://example.com",
"content_type": "json"
},
"updated_at": "2011-09-06T20:39:23Z",
"created_at": "2011-09-06T17:26:27Z",
"type": "Organization"
}Get an organization webhook
Returns a webhook configured in an organization. To get only the webhook config properties, see "Get a webhook configuration for an organization."
パラメータ
| Headers |
|---|
| 名前, 種類, 説明 |
acceptstringSetting to |
| Path parameters |
| 名前, 種類, 説明 |
orgstring必� �The organization name. The name is not case sensitive. |
hook_idinteger必� �The unique identifier of the hook. |
HTTP response status codes
| Status code | 説明 |
|---|---|
200 | OK |
404 | Resource not found |
コードサンプル
curl \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooks/HOOK_IDResponse
Status: 200{
"id": 1,
"url": "https://api.github.com/orgs/octocat/hooks/1",
"ping_url": "https://api.github.com/orgs/octocat/hooks/1/pings",
"name": "web",
"events": [
"push",
"pull_request"
],
"active": true,
"config": {
"url": "http://example.com",
"content_type": "json"
},
"updated_at": "2011-09-06T20:39:23Z",
"created_at": "2011-09-06T17:26:27Z",
"type": "Organization"
}Update an organization webhook
Updates a webhook configured in an organization. When you update a webhook, the secret will be overwritten. If you previously had a secret set, you must provide the same secret or set a new secret or the secret will be removed. If you are only updating individual webhook config properties, use "Update a webhook configuration for an organization."
パラメータ
| Headers | ||||||||
|---|---|---|---|---|---|---|---|---|
| 名前, 種類, 説明 | ||||||||
acceptstringSetting to | ||||||||
| Path parameters | ||||||||
| 名前, 種類, 説明 | ||||||||
orgstring必� �The organization name. The name is not case sensitive. | ||||||||
hook_idinteger必� �The unique identifier of the hook. | ||||||||
| Body parameters | ||||||||
| 名前, 種類, 説明 | ||||||||
configobjectKey/value pairs to provide settings for this webhook. These are defined below. | ||||||||
Properties of the | ||||||||
| 名前, 種類, 説明 |
|---|
urlstring必� �The URL to which the payloads will be delivered. |
content_typestringThe media type used to serialize the payloads. Supported values include |
secretstringIf provided, the |
insecure_sslstring or number or Determines whether the SSL certificate of the host for |
eventsarray of stringsDetermines what events the hook is triggered for.
デフォルト: push
activebooleanDetermines if notifications are sent when the webhook is triggered. Set to true to send notifications.
デフォルト: true
namestringHTTP response status codes
| Status code | 説明 |
|---|---|
200 | OK |
404 | Resource not found |
422 | Validation failed |
コードサンプル
curl \
-X PATCH \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooks/HOOK_ID \
-d '{"active":true,"events":["pull_request"]}'Response
Status: 200{
"id": 1,
"url": "https://api.github.com/orgs/octocat/hooks/1",
"ping_url": "https://api.github.com/orgs/octocat/hooks/1/pings",
"name": "web",
"events": [
"pull_request"
],
"active": true,
"config": {
"url": "http://example.com",
"content_type": "json"
},
"updated_at": "2011-09-06T20:39:23Z",
"created_at": "2011-09-06T17:26:27Z",
"type": "Organization"
}Delete an organization webhook
パラメータ
| Headers |
|---|
| 名前, 種類, 説明 |
acceptstringSetting to |
| Path parameters |
| 名前, 種類, 説明 |
orgstring必� �The organization name. The name is not case sensitive. |
hook_idinteger必� �The unique identifier of the hook. |
HTTP response status codes
| Status code | 説明 |
|---|---|
204 | No Content |
404 | Resource not found |
コードサンプル
curl \
-X DELETE \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooks/HOOK_IDResponse
Status: 204Get a webhook configuration for an organization
Returns the webhook configuration for an organization. To get more information about the webhook, including the active state and events, use "Get an organization webhook ."
Access tokens must have the admin:org_hook scope, and GitHub Apps must have the organization_hooks:read permission.
パラメータ
| Headers |
|---|
| 名前, 種類, 説明 |
acceptstringSetting to |
| Path parameters |
| 名前, 種類, 説明 |
orgstring必� �The organization name. The name is not case sensitive. |
hook_idinteger必� �The unique identifier of the hook. |
HTTP response status codes
| Status code | 説明 |
|---|---|
200 | OK |
コードサンプル
curl \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooks/HOOK_ID/configResponse
Status: 200{
"content_type": "json",
"insecure_ssl": "0",
"secret": "********",
"url": "https://example.com/webhook"
}Update a webhook configuration for an organization
Updates the webhook configuration for an organization. To update more information about the webhook, including the active state and events, use "Update an organization webhook ."
Access tokens must have the admin:org_hook scope, and GitHub Apps must have the organization_hooks:write permission.
パラメータ
| Headers |
|---|
| 名前, 種類, 説明 |
acceptstringSetting to |
| Path parameters |
| 名前, 種類, 説明 |
orgstring必� �The organization name. The name is not case sensitive. |
hook_idinteger必� �The unique identifier of the hook. |
| Body parameters |
| 名前, 種類, 説明 |
urlstringThe URL to which the payloads will be delivered. |
content_typestringThe media type used to serialize the payloads. Supported values include |
secretstringIf provided, the |
insecure_sslstring or number or Determines whether the SSL certificate of the host for |
HTTP response status codes
| Status code | 説明 |
|---|---|
200 | OK |
コードサンプル
curl \
-X PATCH \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooks/HOOK_ID/config \
-d '{"url":"http://example.com/webhook","content_type":"json","insecure_ssl":"0","secret":"********"}'Response
Status: 200{
"content_type": "json",
"insecure_ssl": "0",
"secret": "********",
"url": "https://example.com/webhook"
}Ping an organization webhook
This will trigger a ping event to be sent to the hook.
パラメータ
| Headers |
|---|
| 名前, 種類, 説明 |
acceptstringSetting to |
| Path parameters |
| 名前, 種類, 説明 |
orgstring必� �The organization name. The name is not case sensitive. |
hook_idinteger必� �The unique identifier of the hook. |
HTTP response status codes
| Status code | 説明 |
|---|---|
204 | No Content |
404 | Resource not found |
コードサンプル
curl \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token <TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/hooks/HOOK_ID/pingsResponse
Status: 204