v68

latestOpenAPI 3.0.3MITraw.githubusercontent.com2026-08-011,21696712.3 MB
orgs

Create an organization webhook

Create a hook that posts payloads in JSON format.

You must be an organization owner to use this endpoint.

OAuth app tokens and personal access tokens (classic) need admin:org_hook scope. OAuth apps cannot list, view, or edit webhooks that they did not create and users cannot list, view, or edit webhooks that were created by OAuth apps.

post/orgs/{org}/hooks

Path parameters

orgstring required

The organization name. The name is not case sensitive.

Request body

namestring required

Must be passed as "web".

eventsstring[]

Determines what events the hook is triggered for. Set to ["*"] to receive all possible events.

activeboolean

Determines if notifications are sent when the webhook is triggered. Set to true to send notifications.

Example request

{
  "config": {
    "url": "https://example.com/webhook",
    "content_type": "\"json\"",
    "secret": "\"********\"",
    "insecure_ssl": "\"0\"",
    "username": "\"kdaigle\"",
    "password": "\"password\""
  }
}

Response

Response

idinteger required
urlstring uri required
ping_urlstring uri required
deliveries_urlstring uri
namestring required
eventsstring[] required
activeboolean required
updated_atstring date-time required
created_atstring date-time required
typestring required

Example response

{
  "id": 1,
  "url": "https://api.github.com/orgs/octocat/hooks/1",
  "ping_url": "https://api.github.com/orgs/octocat/hooks/1/pings",
  "deliveries_url": "https://api.github.com/orgs/octocat/hooks/1/deliveries",
  "name": "web",
  "events": [
    "push",
    "pull_request"
  ],
  "active": true,
  "config": {
    "url": "\"http://example.com/2\"",
    "insecure_ssl": "\"0\"",
    "content_type": "\"form\"",
    "secret": "\"********\""
  },
  "updated_at": "2011-09-06T20:39:23Z",
  "created_at": "2011-09-06T17:26:27Z"
}