{
  "type": "object",
  "properties": {
    "config": {
      "title": "Webhook Configuration",
      "description": "Configuration object of the webhook",
      "type": "object",
      "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"
            }
          ]
        }
      }
    },
    "events": {
      "type": "array",
      "description": "Determines what [events](https://docs.github.com/webhooks/event-payloads) the hook is triggered for. This replaces the entire array of events.",
      "default": [
        "push"
      ],
      "items": {
        "type": "string"
      }
    },
    "add_events": {
      "type": "array",
      "description": "Determines a list of events to be added to the list of events that the Hook triggers for.",
      "items": {
        "type": "string"
      }
    },
    "remove_events": {
      "type": "array",
      "description": "Determines a list of events to be removed from the list of events that the Hook triggers for.",
      "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
    }
  },
  "$schema": "https://json-schema.org/draft/2019-09/schema"
}