{
  "description": "Webhook is the Schema for the webhooks API",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": [
        "string",
        "null"
      ]
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": [
        "string",
        "null"
      ]
    },
    "metadata": {
      "type": [
        "object",
        "null"
      ]
    },
    "spec": {
      "additionalProperties": false,
      "description": "WebhookSpec defines the desired state of Webhook",
      "properties": {
        "disabled": {
          "description": "disable the webhook",
          "type": [
            "boolean",
            "null"
          ]
        },
        "events": {
          "description": "Events declare list if events on which webhook should be called",
          "items": {
            "enum": [
              "start-test",
              "end-test-success",
              "end-test-failed",
              "end-test-aborted",
              "end-test-timeout",
              "become-test-up",
              "become-test-down",
              "become-test-failed",
              "become-test-aborted",
              "become-test-timeout",
              "start-testsuite",
              "end-testsuite-success",
              "end-testsuite-failed",
              "end-testsuite-aborted",
              "end-testsuite-timeout",
              "become-testsuite-up",
              "become-testsuite-down",
              "become-testsuite-failed",
              "become-testsuite-aborted",
              "become-testsuite-timeout",
              "start-testworkflow",
              "queue-testworkflow",
              "end-testworkflow-success",
              "end-testworkflow-failed",
              "end-testworkflow-aborted",
              "become-testworkflow-up",
              "become-testworkflow-down",
              "become-testworkflow-failed",
              "become-testworkflow-aborted"
            ],
            "type": "string"
          },
          "type": [
            "array",
            "null"
          ]
        },
        "headers": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "webhook headers (golang template supported)",
          "type": [
            "object",
            "null"
          ]
        },
        "onStateChange": {
          "description": "OnStateChange will trigger the webhook only when the result of the current execution differs from the previous result of the same test/test suite/workflow\nDeprecated: field is not used",
          "type": [
            "boolean",
            "null"
          ]
        },
        "payloadObjectField": {
          "description": "will load the generated payload for notification inside the object",
          "type": [
            "string",
            "null"
          ]
        },
        "payloadTemplate": {
          "description": "golang based template for notification payload",
          "type": [
            "string",
            "null"
          ]
        },
        "payloadTemplateReference": {
          "description": "name of the template resource",
          "type": [
            "string",
            "null"
          ]
        },
        "selector": {
          "description": "Labels to filter for tests and test suites",
          "type": [
            "string",
            "null"
          ]
        },
        "uri": {
          "description": "Uri is address where webhook should be made (golang template supported)",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": [
        "object",
        "null"
      ]
    },
    "status": {
      "description": "WebhookStatus defines the observed state of Webhook",
      "type": [
        "object",
        "null"
      ]
    }
  },
  "type": "object"
}