{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Must be passed as \"web\"."
    },
    "config": {
      "type": "object",
      "description": "Key/value pairs to provide settings for this webhook.",
      "properties": {
        "url": {
          "type": "string",
          "description": "The URL to which the payloads will be delivered.",
          "format": "uri"
        },
        "content_type": {
          "type": "string",
          "description": "The media type used to serialize the payloads. Supported values include `json` and `form`. The default is `form`."
        },
        "secret": {
          "type": "string",
          "description": "If provided, the `secret` will be used as the `key` to generate the HMAC hex digest value for [delivery signature headers](https://docs.github.com/webhooks/event-payloads/#delivery-headers)."
        },
        "insecure_ssl": {
          "oneOf": [
            {
              "type": "string",
              "description": "Determines whether the SSL certificate of the host for `url` will be verified when delivering payloads. Supported values include `0` (verification is performed) and `1` (verification is not performed). The default is `0`. **We strongly recommend not setting this to `1` as you are subject to man-in-the-middle and other attacks.**"
            },
            {
              "type": "number"
            }
          ]
        },
        "username": {
          "type": "string"
        },
        "password": {
          "type": "string"
        }
      },
      "required": [
        "url"
      ]
    },
    "events": {
      "type": "array",
      "description": "Determines what [events](https://docs.github.com/webhooks/event-payloads) the hook is triggered for. Set to `[\"*\"]` to receive all possible events.",
      "default": [
        "push"
      ],
      "items": {
        "type": "string"
      }
    },
    "active": {
      "type": "boolean",
      "description": "Determines if notifications are sent when the webhook is triggered. Set to `true` to send notifications.",
      "default": true
    }
  },
  "required": [
    "name",
    "config"
  ],
  "$schema": "https://json-schema.org/draft/2019-09/schema"
}