{
  "description": "ContactPoint is the Schema for the ContactPoints API. Manages Grafana Alerting contact points. Official documentation https://grafana.com/docs/grafana/latest/developers/http_api/alerting_provisioning/#contact-points This resource requires Grafana 9.1.0 or later.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": "string"
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": "string"
    },
    "metadata": {
      "type": "object"
    },
    "spec": {
      "description": "ContactPointSpec defines the desired state of ContactPoint",
      "properties": {
        "deletionPolicy": {
          "default": "Delete",
          "description": "DeletionPolicy specifies what will happen to the underlying external\nwhen this managed resource is deleted - either \"Delete\" or \"Orphan\" the\nexternal resource.\nThis field is planned to be deprecated in favor of the ManagementPolicies\nfield in a future release. Currently, both could be set independently and\nnon-default values would be honored if the feature flag is enabled.\nSee the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223",
          "enum": [
            "Orphan",
            "Delete"
          ],
          "type": "string"
        },
        "forProvider": {
          "properties": {
            "alertmanager": {
              "description": "(Block Set) A contact point that sends notifications to other Alertmanager instances. (see below for nested schema)\nA contact point that sends notifications to other Alertmanager instances.",
              "items": {
                "properties": {
                  "basicAuthPasswordSecretRef": {
                    "description": "(String, Sensitive) The password component of the basic auth credentials to use.\nThe password component of the basic auth credentials to use.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username component of the basic auth credentials to use.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL of the Alertmanager instance.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "dingding": {
              "description": "(Block Set) A contact point that sends notifications to DingDing. (see below for nested schema)\nA contact point that sends notifications to DingDing.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "messageType": {
                    "description": "either 'link' or 'actionCard'\nThe format of message to send - either 'link' or 'actionCard'",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe DingDing webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "disableProvenance": {
              "description": "Defaults to false. Defaults to `false`.",
              "type": "boolean"
            },
            "discord": {
              "description": "(Block Set) A contact point that sends notifications as Discord messages (see below for nested schema)\nA contact point that sends notifications as Discord messages",
              "items": {
                "properties": {
                  "avatarUrl": {
                    "description": "(String) The URL of a custom avatar image to use. Defaults to \u201c.\nThe URL of a custom avatar image to use. Defaults to \u201c.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message. Defaults to \u201c.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated content of the title.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe discord webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "useDiscordUsername": {
                    "description": "(Boolean) Whether to use the bot account's plain username instead of \"Grafana.\" Defaults to false.\nWhether to use the bot account's plain username instead of \"Grafana.\" Defaults to `false`.",
                    "type": "boolean"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "email": {
              "description": "(Block Set) A contact point that sends notifications to an email address. (see below for nested schema)\nA contact point that sends notifications to an email address.",
              "items": {
                "properties": {
                  "addresses": {
                    "description": "(List of String) The addresses to send emails to.\nThe addresses to send emails to.",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the email. Defaults to \u201c.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "singleEmail": {
                    "description": "(Boolean) Whether to send a single email CC'ing all addresses, rather than a separate email to each address. Defaults to false.\nWhether to send a single email CC'ing all addresses, rather than a separate email to each address. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "subject": {
                    "description": "(String) The templated subject line of the email. Defaults to \u201c.\nThe templated subject line of the email. Defaults to \u201c.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "googlechat": {
              "description": "(Block Set) A contact point that sends notifications to Google Chat. (see below for nested schema)\nA contact point that sends notifications to Google Chat.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated content of the title.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe Google Chat webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "kafka": {
              "description": "(Block Set) A contact point that publishes notifications to Apache Kafka topics. (see below for nested schema)\nA contact point that publishes notifications to Apache Kafka topics.",
              "items": {
                "properties": {
                  "apiVersion": {
                    "description": "(String) The API version to use when contacting the Kafka REST Server. Supported: v2 (default) and v3. Defaults to v2.\nThe API version to use when contacting the Kafka REST Server. Supported: v2 (default) and v3. Defaults to `v2`.",
                    "type": "string"
                  },
                  "clusterId": {
                    "description": "(String) The Id of cluster to use when contacting the Kafka REST Server. Required api_version to be 'v3'\nThe Id of cluster to use when contacting the Kafka REST Server. Required api_version to be 'v3'",
                    "type": "string"
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the Kafka message.",
                    "type": "string"
                  },
                  "details": {
                    "description": "(String) The templated details to include with the message.\nThe templated details to include with the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "passwordSecretRef": {
                    "description": "(String, Sensitive) The password to use when making a call to the Kafka REST Proxy\nThe password to use when making a call to the Kafka REST Proxy",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "restProxyUrlSecretRef": {
                    "description": "(String, Sensitive) The URL of the Kafka REST proxy to send requests to.\nThe URL of the Kafka REST proxy to send requests to.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "topic": {
                    "description": "(String) The name of the Kafka topic to publish to.\nThe name of the Kafka topic to publish to.",
                    "type": "string"
                  },
                  "username": {
                    "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nThe user name to use when making a call to the Kafka REST Proxy",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "line": {
              "description": "(Block Set) A contact point that sends notifications to LINE.me. (see below for nested schema)\nA contact point that sends notifications to LINE.me.",
              "items": {
                "properties": {
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nThe bearer token used to authorize the client.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "name": {
              "description": "(String) The name of the contact point.\nThe name of the contact point.",
              "type": "string"
            },
            "oncall": {
              "description": "Call. (see below for nested schema)\nA contact point that sends notifications to Grafana On-Call.",
              "items": {
                "properties": {
                  "authorizationCredentialsSecretRef": {
                    "description": "attaches an auth header with this value. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this value. Do not use in conjunction with basic auth parameters.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "authorizationScheme": {
                    "description": "attaches an auth header with this name. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this name. Do not use in conjunction with basic auth parameters.",
                    "type": "string"
                  },
                  "basicAuthPasswordSecretRef": {
                    "description": "(String, Sensitive) The password component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "httpMethod": {
                    "description": "(String) The HTTP method to use in the request. Defaults to POST.\nThe HTTP method to use in the request. Defaults to `POST`.",
                    "type": "string"
                  },
                  "maxAlerts": {
                    "description": "(Number) The maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.\nThe maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nCustom message. You can use template variables.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send webhook requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "opsgenie": {
              "description": "(Block Set) A contact point that sends notifications to OpsGenie. (see below for nested schema)\nA contact point that sends notifications to OpsGenie.",
              "items": {
                "properties": {
                  "apiKeySecretRef": {
                    "description": "(String, Sensitive) The OpsGenie API key to use.\nThe OpsGenie API key to use.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "autoClose": {
                    "description": "close alerts in OpsGenie when they resolve in the Alertmanager.\nWhether to auto-close alerts in OpsGenie when they resolve in the Alertmanager.",
                    "type": "boolean"
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nA templated high-level description to use for the alert.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "overridePriority": {
                    "description": "(Boolean) Whether to allow the alert priority to be configured via the value of the og_priority annotation on the alert.\nWhether to allow the alert priority to be configured via the value of the `og_priority` annotation on the alert.",
                    "type": "boolean"
                  },
                  "responders": {
                    "description": "(Block List) Teams, users, escalations and schedules that the alert will be routed to send notifications. If the API Key belongs to a team integration, this field will be overwritten with the owner team. This feature is available from Grafana 10.3+. (see below for nested schema)\nTeams, users, escalations and schedules that the alert will be routed to send notifications. If the API Key belongs to a team integration, this field will be overwritten with the owner team. This feature is available from Grafana 10.3+.",
                    "items": {
                      "properties": {
                        "id": {
                          "description": "(String) The ID of this resource.\nID of the responder. Must be specified if name and username are empty.",
                          "type": "string"
                        },
                        "name": {
                          "description": "(String) The name of the contact point.\nName of the responder. Must be specified if username and id are empty.",
                          "type": "string"
                        },
                        "type": {
                          "description": "(String) Type of the responder. Supported: team, teams, user, escalation, schedule or a template that is expanded to one of these values.\nType of the responder. Supported: team, teams, user, escalation, schedule or a template that is expanded to one of these values.",
                          "type": "string"
                        },
                        "username": {
                          "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nUser name of the responder. Must be specified if name and id are empty.",
                          "type": "string"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "sendTagsAs": {
                    "description": "(String) Whether to send annotations to OpsGenie as Tags, Details, or both. Supported values are tags, details, both, or empty to use the default behavior of Tags.\nWhether to send annotations to OpsGenie as Tags, Details, or both. Supported values are `tags`, `details`, `both`, or empty to use the default behavior of Tags.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nAllows customization of the OpsGenie API URL.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "orgId": {
              "description": "(String) The Organization ID. If not set, the Org ID defined in the provider block will be used.\nThe Organization ID. If not set, the Org ID defined in the provider block will be used.",
              "type": "string"
            },
            "organizationRef": {
              "description": "Reference to a Organization in oss to populate orgId.",
              "properties": {
                "name": {
                  "description": "Name of the referenced object.",
                  "type": "string"
                },
                "policy": {
                  "description": "Policies for referencing.",
                  "properties": {
                    "resolution": {
                      "default": "Required",
                      "description": "Resolution specifies whether resolution of this reference is required.\nThe default is 'Required', which means the reconcile will fail if the\nreference cannot be resolved. 'Optional' means this reference will be\na no-op if it cannot be resolved.",
                      "enum": [
                        "Required",
                        "Optional"
                      ],
                      "type": "string"
                    },
                    "resolve": {
                      "description": "Resolve specifies when this reference should be resolved. The default\nis 'IfNotPresent', which will attempt to resolve the reference only when\nthe corresponding field is not present. Use 'Always' to resolve the\nreference on every reconcile.",
                      "enum": [
                        "Always",
                        "IfNotPresent"
                      ],
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                }
              },
              "required": [
                "name"
              ],
              "type": "object",
              "additionalProperties": false
            },
            "organizationSelector": {
              "description": "Selector for a Organization in oss to populate orgId.",
              "properties": {
                "matchControllerRef": {
                  "description": "MatchControllerRef ensures an object with the same controller reference\nas the selecting object is selected.",
                  "type": "boolean"
                },
                "matchLabels": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "description": "MatchLabels ensures an object with matching labels is selected.",
                  "type": "object"
                },
                "policy": {
                  "description": "Policies for selection.",
                  "properties": {
                    "resolution": {
                      "default": "Required",
                      "description": "Resolution specifies whether resolution of this reference is required.\nThe default is 'Required', which means the reconcile will fail if the\nreference cannot be resolved. 'Optional' means this reference will be\na no-op if it cannot be resolved.",
                      "enum": [
                        "Required",
                        "Optional"
                      ],
                      "type": "string"
                    },
                    "resolve": {
                      "description": "Resolve specifies when this reference should be resolved. The default\nis 'IfNotPresent', which will attempt to resolve the reference only when\nthe corresponding field is not present. Use 'Always' to resolve the\nreference on every reconcile.",
                      "enum": [
                        "Always",
                        "IfNotPresent"
                      ],
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                }
              },
              "type": "object",
              "additionalProperties": false
            },
            "pagerduty": {
              "description": "(Block Set) A contact point that sends notifications to PagerDuty. (see below for nested schema)\nA contact point that sends notifications to PagerDuty.",
              "items": {
                "properties": {
                  "class": {
                    "description": "(String) The class or type of event, for example ping failure.\nThe class or type of event, for example `ping failure`.",
                    "type": "string"
                  },
                  "client": {
                    "description": "(String) The name of the monitoring client that is triggering this event.\nThe name of the monitoring client that is triggering this event.",
                    "type": "string"
                  },
                  "clientUrl": {
                    "description": "(String) The URL of the monitoring client that is triggering this event.\nThe URL of the monitoring client that is triggering this event.",
                    "type": "string"
                  },
                  "component": {
                    "description": "(String) The component being affected by the event.\nThe component being affected by the event.",
                    "type": "string"
                  },
                  "details": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "(String) The templated details to include with the message.\nA set of arbitrary key/value pairs that provide further detail about the incident.",
                    "type": "object",
                    "x-kubernetes-map-type": "granular"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "group": {
                    "description": "(String) The group to which the provided component belongs to.\nThe group to which the provided component belongs to.",
                    "type": "string"
                  },
                  "integrationKeySecretRef": {
                    "description": "(String, Sensitive) The PagerDuty API key.\nThe PagerDuty API key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "severity": {
                    "description": "(String) The PagerDuty event severity level. Default is critical.\nThe PagerDuty event severity level. Default is `critical`.",
                    "type": "string"
                  },
                  "source": {
                    "description": "(String) The unique location of the affected system.\nThe unique location of the affected system.",
                    "type": "string"
                  },
                  "summary": {
                    "description": "(String) The templated summary message of the event.\nThe templated summary message of the event.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send API requests to",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "pushover": {
              "description": "(Block Set) A contact point that sends notifications to Pushover. (see below for nested schema)\nA contact point that sends notifications to Pushover.",
              "items": {
                "properties": {
                  "apiTokenSecretRef": {
                    "description": "(String, Sensitive) The Pushover API token.\nThe Pushover API token.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "device": {
                    "description": "separated list of devices to which the event is associated.\nComma-separated list of devices to which the event is associated.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "expire": {
                    "description": "(Number) How many seconds for which the notification will continue to be retried by Pushover.\nHow many seconds for which the notification will continue to be retried by Pushover.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated notification message content.",
                    "type": "string"
                  },
                  "okPriority": {
                    "description": "(Number) The priority level of the resolved event.\nThe priority level of the resolved event.",
                    "type": "number"
                  },
                  "okSound": {
                    "description": "(String) The sound associated with the resolved notification.\nThe sound associated with the resolved notification.",
                    "type": "string"
                  },
                  "priority": {
                    "description": "(Number) The priority level of the event.\nThe priority level of the event.",
                    "type": "number"
                  },
                  "retry": {
                    "description": "(Number) How often, in seconds, the Pushover servers will send the same notification to the user.\nHow often, in seconds, the Pushover servers will send the same notification to the user.",
                    "type": "number"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "sound": {
                    "description": "(String) The sound associated with the notification.\nThe sound associated with the notification.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "uploadImage": {
                    "description": "(Boolean) Whether to send images in the notification or not. Default is true. Requires Grafana to be configured to send images in notifications.\nWhether to send images in the notification or not. Default is true. Requires Grafana to be configured to send images in notifications.",
                    "type": "boolean"
                  },
                  "userKeySecretRef": {
                    "description": "(String, Sensitive) The Pushover user key.\nThe Pushover user key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "sensugo": {
              "description": "(Block Set) A contact point that sends notifications to SensuGo. (see below for nested schema)\nA contact point that sends notifications to SensuGo.",
              "items": {
                "properties": {
                  "apiKeySecretRef": {
                    "description": "(String, Sensitive) The OpsGenie API key to use.\nThe SensuGo API key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "check": {
                    "description": "(String) The SensuGo check to which the event should be routed.\nThe SensuGo check to which the event should be routed.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "entity": {
                    "description": "(String) The entity being monitored.\nThe entity being monitored.",
                    "type": "string"
                  },
                  "handler": {
                    "description": "(String) A custom handler to execute in addition to the check.\nA custom handler to execute in addition to the check.",
                    "type": "string"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nTemplated message content describing the alert.",
                    "type": "string"
                  },
                  "namespace": {
                    "description": "(String) The namespace in which the check resides.\nThe namespace in which the check resides.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe SensuGo URL to send requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "slack": {
              "description": "(Block Set) A contact point that sends notifications to Slack. (see below for nested schema)\nA contact point that sends notifications to Slack.",
              "items": {
                "properties": {
                  "color": {
                    "description": "(String) Templated color of the slack message.\nTemplated color of the slack message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "endpointUrl": {
                    "description": "(String) Use this to override the Slack API endpoint URL to send requests to.\nUse this to override the Slack API endpoint URL to send requests to.",
                    "type": "string"
                  },
                  "iconEmoji": {
                    "description": "(String) The name of a Slack workspace emoji to use as the bot icon.\nThe name of a Slack workspace emoji to use as the bot icon.",
                    "type": "string"
                  },
                  "iconUrl": {
                    "description": "(String) A URL of an image to use as the bot icon.\nA URL of an image to use as the bot icon.",
                    "type": "string"
                  },
                  "mentionChannel": {
                    "description": "(String) Describes how to ping the slack channel that messages are being sent to. Options are here for an @here ping, channel for @channel, or empty for no ping.\nDescribes how to ping the slack channel that messages are being sent to. Options are `here` for an @here ping, `channel` for @channel, or empty for no ping.",
                    "type": "string"
                  },
                  "mentionGroups": {
                    "description": "separated list of groups to mention in the message.\nComma-separated list of groups to mention in the message.",
                    "type": "string"
                  },
                  "mentionUsers": {
                    "description": "separated list of users to mention in the message.\nComma-separated list of users to mention in the message.",
                    "type": "string"
                  },
                  "recipient": {
                    "description": "(String) Channel, private group, or IM channel (can be an encoded ID or a name) to send messages to.\nChannel, private group, or IM channel (can be an encoded ID or a name) to send messages to.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "text": {
                    "description": "(String) Templated content of the message.\nTemplated content of the message.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nA Slack API token,for sending messages directly without the webhook method.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nA Slack webhook URL,for sending messages via the webhook method.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "username": {
                    "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nUsername for the bot to use.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "sns": {
              "description": "(Block Set) A contact point that sends notifications to Amazon SNS. Requires Amazon Managed Grafana. (see below for nested schema)\nA contact point that sends notifications to Amazon SNS. Requires Amazon Managed Grafana.",
              "items": {
                "properties": {
                  "accessKeySecretRef": {
                    "description": "(String, Sensitive) AWS access key ID used to authenticate with Amazon SNS.\nAWS access key ID used to authenticate with Amazon SNS.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "assumeRoleArn": {
                    "description": "(String) The Amazon Resource Name (ARN) of the role to assume to send notifications to Amazon SNS.\nThe Amazon Resource Name (ARN) of the role to assume to send notifications to Amazon SNS.",
                    "type": "string"
                  },
                  "authProvider": {
                    "description": "(String) The authentication provider to use. Valid values are default, arn and keys. Default is default. Defaults to default.\nThe authentication provider to use. Valid values are `default`, `arn` and `keys`. Default is `default`. Defaults to `default`.",
                    "type": "string"
                  },
                  "body": {
                    "description": "(String)",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "externalId": {
                    "description": "(String) The external ID to use when assuming the role.\nThe external ID to use when assuming the role.",
                    "type": "string"
                  },
                  "messageFormat": {
                    "description": "(String) The format of the message to send. Valid values are text, body and json. Default is text. Defaults to text.\nThe format of the message to send. Valid values are `text`, `body` and `json`. Default is `text`. Defaults to `text`.",
                    "type": "string"
                  },
                  "secretKeySecretRef": {
                    "description": "(String, Sensitive) AWS secret access key used to authenticate with Amazon SNS.\nAWS secret access key used to authenticate with Amazon SNS.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "subject": {
                    "description": "(String) The templated subject line of the email. Defaults to \u201c.",
                    "type": "string"
                  },
                  "topic": {
                    "description": "(String) The name of the Kafka topic to publish to.\nThe Amazon SNS topic to send notifications to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "teams": {
              "description": "(Block Set) A contact point that sends notifications to Microsoft Teams. (see below for nested schema)\nA contact point that sends notifications to Microsoft Teams.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated message content to send.",
                    "type": "string"
                  },
                  "sectionTitle": {
                    "description": "(String) The templated subtitle for each message section.\nThe templated subtitle for each message section.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nA Teams webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "telegram": {
              "description": "(Block Set) A contact point that sends notifications to Telegram. (see below for nested schema)\nA contact point that sends notifications to Telegram.",
              "items": {
                "properties": {
                  "chatId": {
                    "description": "(String) The chat ID to send messages to.\nThe chat ID to send messages to.",
                    "type": "string"
                  },
                  "disableNotifications": {
                    "description": "(Boolean) When set users will receive a notification with no sound.\nWhen set users will receive a notification with no sound.",
                    "type": "boolean"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "disableWebPagePreview": {
                    "description": "(Boolean) When set it disables link previews for links in the message.\nWhen set it disables link previews for links in the message.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "messageThreadId": {
                    "description": "(String) The ID of the message thread to send the message to.\nThe ID of the message thread to send the message to.",
                    "type": "string"
                  },
                  "parseMode": {
                    "description": "(String) Mode for parsing entities in the message text. Supported: None, Markdown, MarkdownV2, and HTML. HTML is the default.\nMode for parsing entities in the message text. Supported: None, Markdown, MarkdownV2, and HTML. HTML is the default.",
                    "type": "string"
                  },
                  "protectContent": {
                    "description": "(Boolean) When set it protects the contents of the message from forwarding and saving.\nWhen set it protects the contents of the message from forwarding and saving.",
                    "type": "boolean"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nThe Telegram bot token.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "threema": {
              "description": "(Block Set) A contact point that sends notifications to Threema. (see below for nested schema)\nA contact point that sends notifications to Threema.",
              "items": {
                "properties": {
                  "apiSecretSecretRef": {
                    "description": "(String, Sensitive) The Threema API key.\nThe Threema API key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "gatewayId": {
                    "description": "(String) The Threema gateway ID.\nThe Threema gateway ID.",
                    "type": "string"
                  },
                  "recipientId": {
                    "description": "(String) The ID of the recipient of the message.\nThe ID of the recipient of the message.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "victorops": {
              "description": "(Block Set) A contact point that sends notifications to VictorOps (now known as Splunk OnCall). (see below for nested schema)\nA contact point that sends notifications to VictorOps (now known as Splunk OnCall).",
              "items": {
                "properties": {
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nTemplated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "messageType": {
                    "description": "either 'link' or 'actionCard'\nThe VictorOps alert state - typically either `CRITICAL` or `RECOVERY`.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title to display.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe VictorOps webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "webex": {
              "description": "(Block Set) A contact point that sends notifications to Cisco Webex. (see below for nested schema)\nA contact point that sends notifications to Cisco Webex.",
              "items": {
                "properties": {
                  "apiUrl": {
                    "description": "(String) The URL to send webhook requests to.\nThe URL to send webhook requests to.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated title of the message to send.",
                    "type": "string"
                  },
                  "roomId": {
                    "description": "(String) ID of the Webex Teams room where to send the messages.\nID of the Webex Teams room where to send the messages.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nThe bearer token used to authorize the client.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "webhook": {
              "description": "(Block Set) A contact point that sends notifications to an arbitrary webhook, using the Prometheus webhook format defined here: https://prometheus.io/docs/alerting/latest/configuration/#webhook_config (see below for nested schema)\nA contact point that sends notifications to an arbitrary webhook, using the Prometheus webhook format defined here: https://prometheus.io/docs/alerting/latest/configuration/#webhook_config",
              "items": {
                "properties": {
                  "authorizationCredentialsSecretRef": {
                    "description": "attaches an auth header with this value. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this value. Do not use in conjunction with basic auth parameters.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "authorizationScheme": {
                    "description": "attaches an auth header with this name. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this name. Do not use in conjunction with basic auth parameters.",
                    "type": "string"
                  },
                  "basicAuthPasswordSecretRef": {
                    "description": "(String, Sensitive) The password component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "headers": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "(Map of String) Custom headers to attach to the request.\nCustom headers to attach to the request.",
                    "type": "object",
                    "x-kubernetes-map-type": "granular"
                  },
                  "hmacConfig": {
                    "description": "(Block Set, Max: 1) HMAC signature configuration options. (see below for nested schema)\nHMAC signature configuration options.",
                    "items": {
                      "properties": {
                        "header": {
                          "description": "Grafana-Alerting-Signature.\nThe header in which the HMAC signature will be included. Defaults to `X-Grafana-Alerting-Signature`.",
                          "type": "string"
                        },
                        "secretSecretRef": {
                          "description": "(String, Sensitive) The secret key used to generate the HMAC signature.\nThe secret key used to generate the HMAC signature.",
                          "properties": {
                            "key": {
                              "description": "The key to select.",
                              "type": "string"
                            },
                            "name": {
                              "description": "Name of the secret.",
                              "type": "string"
                            },
                            "namespace": {
                              "description": "Namespace of the secret.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "key",
                            "name",
                            "namespace"
                          ],
                          "type": "object",
                          "additionalProperties": false
                        },
                        "timestampHeader": {
                          "description": "(String) If set, the timestamp will be included in the HMAC signature. The value should be the name of the header to use.\nIf set, the timestamp will be included in the HMAC signature. The value should be the name of the header to use.",
                          "type": "string"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "httpConfig": {
                    "description": "(Block Set, Max: 1) Common HTTP client options. (see below for nested schema)\nCommon HTTP client options.",
                    "items": {
                      "properties": {
                        "oauth2": {
                          "description": "(Block Set, Max: 1) OAuth2 configuration options. (see below for nested schema)\nOAuth2 configuration options.",
                          "items": {
                            "properties": {
                              "clientId": {
                                "description": "(String) Client ID to use when authenticating.\nClient ID to use when authenticating.",
                                "type": "string"
                              },
                              "clientSecretSecretRef": {
                                "description": "(String, Sensitive) Client secret to use when authenticating.\nClient secret to use when authenticating.",
                                "properties": {
                                  "key": {
                                    "description": "The key to select.",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the secret.",
                                    "type": "string"
                                  },
                                  "namespace": {
                                    "description": "Namespace of the secret.",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "key",
                                  "name",
                                  "namespace"
                                ],
                                "type": "object",
                                "additionalProperties": false
                              },
                              "endpointParams": {
                                "additionalProperties": {
                                  "type": "string"
                                },
                                "description": "(Map of String) Optional parameters to append to the access token request.\nOptional parameters to append to the access token request.",
                                "type": "object",
                                "x-kubernetes-map-type": "granular"
                              },
                              "proxyConfig": {
                                "description": "(Block Set, Max: 1) Optional proxy configuration for OAuth2 requests. (see below for nested schema)\nOptional proxy configuration for OAuth2 requests.",
                                "items": {
                                  "properties": {
                                    "noProxy": {
                                      "description": "separated list of addresses that should not use a proxy.\nComma-separated list of addresses that should not use a proxy.",
                                      "type": "string"
                                    },
                                    "proxyConnectHeader": {
                                      "additionalProperties": {
                                        "type": "string"
                                      },
                                      "description": "(Map of String) Optional headers to send to proxies during CONNECT requests.\nOptional headers to send to proxies during CONNECT requests.",
                                      "type": "object",
                                      "x-kubernetes-map-type": "granular"
                                    },
                                    "proxyFromEnvironment": {
                                      "description": "(Boolean) Use environment HTTP_PROXY, HTTPS_PROXY and NO_PROXY to determine proxies. Defaults to false.\nUse environment HTTP_PROXY, HTTPS_PROXY and NO_PROXY to determine proxies. Defaults to `false`.",
                                      "type": "boolean"
                                    },
                                    "proxyUrl": {
                                      "description": "(String) HTTP proxy server to use to connect to the targets.\nHTTP proxy server to use to connect to the targets.",
                                      "type": "string"
                                    }
                                  },
                                  "type": "object",
                                  "additionalProperties": false
                                },
                                "type": "array"
                              },
                              "scopes": {
                                "description": "(List of String) Optional scopes to request when obtaining an access token.\nOptional scopes to request when obtaining an access token.",
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "tlsConfig": {
                                "description": "(Map of String, Sensitive) Allows configuring TLS for the webhook notifier.\nOptional TLS configuration options for OAuth2 requests.",
                                "items": {
                                  "properties": {
                                    "caCertificateSecretRef": {
                                      "description": "(String, Sensitive) Certificate in PEM format to use when verifying the server's certificate chain.\nCertificate in PEM format to use when verifying the server's certificate chain.",
                                      "properties": {
                                        "key": {
                                          "description": "The key to select.",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the secret.",
                                          "type": "string"
                                        },
                                        "namespace": {
                                          "description": "Namespace of the secret.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "key",
                                        "name",
                                        "namespace"
                                      ],
                                      "type": "object",
                                      "additionalProperties": false
                                    },
                                    "clientCertificateSecretRef": {
                                      "description": "(String, Sensitive) Client certificate in PEM format to use when connecting to the server.\nClient certificate in PEM format to use when connecting to the server.",
                                      "properties": {
                                        "key": {
                                          "description": "The key to select.",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the secret.",
                                          "type": "string"
                                        },
                                        "namespace": {
                                          "description": "Namespace of the secret.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "key",
                                        "name",
                                        "namespace"
                                      ],
                                      "type": "object",
                                      "additionalProperties": false
                                    },
                                    "clientKeySecretRef": {
                                      "description": "(String, Sensitive) Client key in PEM format to use when connecting to the server.\nClient key in PEM format to use when connecting to the server.",
                                      "properties": {
                                        "key": {
                                          "description": "The key to select.",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the secret.",
                                          "type": "string"
                                        },
                                        "namespace": {
                                          "description": "Namespace of the secret.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "key",
                                        "name",
                                        "namespace"
                                      ],
                                      "type": "object",
                                      "additionalProperties": false
                                    },
                                    "insecureSkipVerify": {
                                      "description": "(Boolean) Do not verify the server's certificate chain and host name. Defaults to false.\nDo not verify the server's certificate chain and host name. Defaults to `false`.",
                                      "type": "boolean"
                                    }
                                  },
                                  "type": "object",
                                  "additionalProperties": false
                                },
                                "type": "array"
                              },
                              "tokenUrl": {
                                "description": "(String) URL for the access token endpoint.\nURL for the access token endpoint.",
                                "type": "string"
                              }
                            },
                            "type": "object",
                            "additionalProperties": false
                          },
                          "type": "array"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "httpMethod": {
                    "description": "(String) The HTTP method to use in the request. Defaults to POST.\nThe HTTP method to use in the request. Defaults to `POST`.",
                    "type": "string"
                  },
                  "maxAlerts": {
                    "description": "(Number) The maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.\nThe maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nCustom message. You can use template variables.",
                    "type": "string"
                  },
                  "payload": {
                    "description": "(Block Set, Max: 1) Optionally provide a templated payload. Overrides 'Message' and 'Title' field. (see below for nested schema)\nOptionally provide a templated payload. Overrides 'Message' and 'Title' field.",
                    "items": {
                      "properties": {
                        "template": {
                          "description": "(String) Custom payload template.\nCustom payload template.",
                          "type": "string"
                        },
                        "vars": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "(Map of String) Optionally provide a variables to be used in the payload template. They will be available in the template as .Vars.<variable_name>.\nOptionally provide a variables to be used in the payload template. They will be available in the template as `.Vars.<variable_name>`.",
                          "type": "object",
                          "x-kubernetes-map-type": "granular"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "tlsConfigSecretRef": {
                    "description": "(Map of String, Sensitive) Allows configuring TLS for the webhook notifier.\nAllows configuring TLS for the webhook notifier.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send webhook requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "wecom": {
              "description": "(Block Set) A contact point that sends notifications to WeCom. (see below for nested schema)\nA contact point that sends notifications to WeCom.",
              "items": {
                "properties": {
                  "agentId": {
                    "description": "(String) Agent ID added to the request payload when using APIAPP.\nAgent ID added to the request payload when using APIAPP.",
                    "type": "string"
                  },
                  "corpId": {
                    "description": "(String) Corp ID used to get token when using APIAPP.\nCorp ID used to get token when using APIAPP.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message to send.",
                    "type": "string"
                  },
                  "msgType": {
                    "description": "(String) The type of them message. Supported: markdown, text. Default: text.\nThe type of them message. Supported: markdown, text. Default: text.",
                    "type": "string"
                  },
                  "secretSecretRef": {
                    "description": "(String, Sensitive) The secret key used to generate the HMAC signature.\nThe secret key required to obtain access token when using APIAPP. See https://work.weixin.qq.com/wework_admin/frame#apps to create APIAPP.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "description": "(Map of String, Sensitive) Additional custom properties to attach to the notifier. Defaults to map[].\nAdditional custom properties to attach to the notifier. Defaults to `map[]`.",
                    "properties": {
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message to send.",
                    "type": "string"
                  },
                  "toUser": {
                    "description": "(String) The ID of user that should receive the message. Multiple entries should be separated by '|'. Default: @all.\nThe ID of user that should receive the message. Multiple entries should be separated by '|'. Default: @all.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe WeCom webhook URL. Required if using GroupRobot.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "initProvider": {
          "description": "THIS IS A BETA FIELD. It will be honored\nunless the Management Policies feature flag is disabled.\nInitProvider holds the same fields as ForProvider, with the exception\nof Identifier and other resource reference fields. The fields that are\nin InitProvider are merged into ForProvider when the resource is created.\nThe same fields are also added to the terraform ignore_changes hook, to\navoid updating them after creation. This is useful for fields that are\nrequired on creation, but we do not desire to update them after creation,\nfor example because of an external controller is managing them, like an\nautoscaler.",
          "properties": {
            "alertmanager": {
              "description": "(Block Set) A contact point that sends notifications to other Alertmanager instances. (see below for nested schema)\nA contact point that sends notifications to other Alertmanager instances.",
              "items": {
                "properties": {
                  "basicAuthPasswordSecretRef": {
                    "description": "(String, Sensitive) The password component of the basic auth credentials to use.\nThe password component of the basic auth credentials to use.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username component of the basic auth credentials to use.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL of the Alertmanager instance.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "dingding": {
              "description": "(Block Set) A contact point that sends notifications to DingDing. (see below for nested schema)\nA contact point that sends notifications to DingDing.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "messageType": {
                    "description": "either 'link' or 'actionCard'\nThe format of message to send - either 'link' or 'actionCard'",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe DingDing webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "urlSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "disableProvenance": {
              "description": "Defaults to false. Defaults to `false`.",
              "type": "boolean"
            },
            "discord": {
              "description": "(Block Set) A contact point that sends notifications as Discord messages (see below for nested schema)\nA contact point that sends notifications as Discord messages",
              "items": {
                "properties": {
                  "avatarUrl": {
                    "description": "(String) The URL of a custom avatar image to use. Defaults to \u201c.\nThe URL of a custom avatar image to use. Defaults to \u201c.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message. Defaults to \u201c.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated content of the title.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe discord webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "useDiscordUsername": {
                    "description": "(Boolean) Whether to use the bot account's plain username instead of \"Grafana.\" Defaults to false.\nWhether to use the bot account's plain username instead of \"Grafana.\" Defaults to `false`.",
                    "type": "boolean"
                  }
                },
                "required": [
                  "urlSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "email": {
              "description": "(Block Set) A contact point that sends notifications to an email address. (see below for nested schema)\nA contact point that sends notifications to an email address.",
              "items": {
                "properties": {
                  "addresses": {
                    "description": "(List of String) The addresses to send emails to.\nThe addresses to send emails to.",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the email. Defaults to \u201c.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "singleEmail": {
                    "description": "(Boolean) Whether to send a single email CC'ing all addresses, rather than a separate email to each address. Defaults to false.\nWhether to send a single email CC'ing all addresses, rather than a separate email to each address. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "subject": {
                    "description": "(String) The templated subject line of the email. Defaults to \u201c.\nThe templated subject line of the email. Defaults to \u201c.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "googlechat": {
              "description": "(Block Set) A contact point that sends notifications to Google Chat. (see below for nested schema)\nA contact point that sends notifications to Google Chat.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated content of the title.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe Google Chat webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "urlSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "kafka": {
              "description": "(Block Set) A contact point that publishes notifications to Apache Kafka topics. (see below for nested schema)\nA contact point that publishes notifications to Apache Kafka topics.",
              "items": {
                "properties": {
                  "apiVersion": {
                    "description": "(String) The API version to use when contacting the Kafka REST Server. Supported: v2 (default) and v3. Defaults to v2.\nThe API version to use when contacting the Kafka REST Server. Supported: v2 (default) and v3. Defaults to `v2`.",
                    "type": "string"
                  },
                  "clusterId": {
                    "description": "(String) The Id of cluster to use when contacting the Kafka REST Server. Required api_version to be 'v3'\nThe Id of cluster to use when contacting the Kafka REST Server. Required api_version to be 'v3'",
                    "type": "string"
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the Kafka message.",
                    "type": "string"
                  },
                  "details": {
                    "description": "(String) The templated details to include with the message.\nThe templated details to include with the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "passwordSecretRef": {
                    "description": "(String, Sensitive) The password to use when making a call to the Kafka REST Proxy\nThe password to use when making a call to the Kafka REST Proxy",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "restProxyUrlSecretRef": {
                    "description": "(String, Sensitive) The URL of the Kafka REST proxy to send requests to.\nThe URL of the Kafka REST proxy to send requests to.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "topic": {
                    "description": "(String) The name of the Kafka topic to publish to.\nThe name of the Kafka topic to publish to.",
                    "type": "string"
                  },
                  "username": {
                    "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nThe user name to use when making a call to the Kafka REST Proxy",
                    "type": "string"
                  }
                },
                "required": [
                  "restProxyUrlSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "line": {
              "description": "(Block Set) A contact point that sends notifications to LINE.me. (see below for nested schema)\nA contact point that sends notifications to LINE.me.",
              "items": {
                "properties": {
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nThe bearer token used to authorize the client.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "tokenSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "name": {
              "description": "(String) The name of the contact point.\nThe name of the contact point.",
              "type": "string"
            },
            "oncall": {
              "description": "Call. (see below for nested schema)\nA contact point that sends notifications to Grafana On-Call.",
              "items": {
                "properties": {
                  "authorizationCredentialsSecretRef": {
                    "description": "attaches an auth header with this value. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this value. Do not use in conjunction with basic auth parameters.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "authorizationScheme": {
                    "description": "attaches an auth header with this name. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this name. Do not use in conjunction with basic auth parameters.",
                    "type": "string"
                  },
                  "basicAuthPasswordSecretRef": {
                    "description": "(String, Sensitive) The password component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "httpMethod": {
                    "description": "(String) The HTTP method to use in the request. Defaults to POST.\nThe HTTP method to use in the request. Defaults to `POST`.",
                    "type": "string"
                  },
                  "maxAlerts": {
                    "description": "(Number) The maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.\nThe maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nCustom message. You can use template variables.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send webhook requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "opsgenie": {
              "description": "(Block Set) A contact point that sends notifications to OpsGenie. (see below for nested schema)\nA contact point that sends notifications to OpsGenie.",
              "items": {
                "properties": {
                  "apiKeySecretRef": {
                    "description": "(String, Sensitive) The OpsGenie API key to use.\nThe OpsGenie API key to use.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "autoClose": {
                    "description": "close alerts in OpsGenie when they resolve in the Alertmanager.\nWhether to auto-close alerts in OpsGenie when they resolve in the Alertmanager.",
                    "type": "boolean"
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nA templated high-level description to use for the alert.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "overridePriority": {
                    "description": "(Boolean) Whether to allow the alert priority to be configured via the value of the og_priority annotation on the alert.\nWhether to allow the alert priority to be configured via the value of the `og_priority` annotation on the alert.",
                    "type": "boolean"
                  },
                  "responders": {
                    "description": "(Block List) Teams, users, escalations and schedules that the alert will be routed to send notifications. If the API Key belongs to a team integration, this field will be overwritten with the owner team. This feature is available from Grafana 10.3+. (see below for nested schema)\nTeams, users, escalations and schedules that the alert will be routed to send notifications. If the API Key belongs to a team integration, this field will be overwritten with the owner team. This feature is available from Grafana 10.3+.",
                    "items": {
                      "properties": {
                        "id": {
                          "description": "(String) The ID of this resource.\nID of the responder. Must be specified if name and username are empty.",
                          "type": "string"
                        },
                        "name": {
                          "description": "(String) The name of the contact point.\nName of the responder. Must be specified if username and id are empty.",
                          "type": "string"
                        },
                        "type": {
                          "description": "(String) Type of the responder. Supported: team, teams, user, escalation, schedule or a template that is expanded to one of these values.\nType of the responder. Supported: team, teams, user, escalation, schedule or a template that is expanded to one of these values.",
                          "type": "string"
                        },
                        "username": {
                          "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nUser name of the responder. Must be specified if name and id are empty.",
                          "type": "string"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "sendTagsAs": {
                    "description": "(String) Whether to send annotations to OpsGenie as Tags, Details, or both. Supported values are tags, details, both, or empty to use the default behavior of Tags.\nWhether to send annotations to OpsGenie as Tags, Details, or both. Supported values are `tags`, `details`, `both`, or empty to use the default behavior of Tags.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nAllows customization of the OpsGenie API URL.",
                    "type": "string"
                  }
                },
                "required": [
                  "apiKeySecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "orgId": {
              "description": "(String) The Organization ID. If not set, the Org ID defined in the provider block will be used.\nThe Organization ID. If not set, the Org ID defined in the provider block will be used.",
              "type": "string"
            },
            "organizationRef": {
              "description": "Reference to a Organization in oss to populate orgId.",
              "properties": {
                "name": {
                  "description": "Name of the referenced object.",
                  "type": "string"
                },
                "policy": {
                  "description": "Policies for referencing.",
                  "properties": {
                    "resolution": {
                      "default": "Required",
                      "description": "Resolution specifies whether resolution of this reference is required.\nThe default is 'Required', which means the reconcile will fail if the\nreference cannot be resolved. 'Optional' means this reference will be\na no-op if it cannot be resolved.",
                      "enum": [
                        "Required",
                        "Optional"
                      ],
                      "type": "string"
                    },
                    "resolve": {
                      "description": "Resolve specifies when this reference should be resolved. The default\nis 'IfNotPresent', which will attempt to resolve the reference only when\nthe corresponding field is not present. Use 'Always' to resolve the\nreference on every reconcile.",
                      "enum": [
                        "Always",
                        "IfNotPresent"
                      ],
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                }
              },
              "required": [
                "name"
              ],
              "type": "object",
              "additionalProperties": false
            },
            "organizationSelector": {
              "description": "Selector for a Organization in oss to populate orgId.",
              "properties": {
                "matchControllerRef": {
                  "description": "MatchControllerRef ensures an object with the same controller reference\nas the selecting object is selected.",
                  "type": "boolean"
                },
                "matchLabels": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "description": "MatchLabels ensures an object with matching labels is selected.",
                  "type": "object"
                },
                "policy": {
                  "description": "Policies for selection.",
                  "properties": {
                    "resolution": {
                      "default": "Required",
                      "description": "Resolution specifies whether resolution of this reference is required.\nThe default is 'Required', which means the reconcile will fail if the\nreference cannot be resolved. 'Optional' means this reference will be\na no-op if it cannot be resolved.",
                      "enum": [
                        "Required",
                        "Optional"
                      ],
                      "type": "string"
                    },
                    "resolve": {
                      "description": "Resolve specifies when this reference should be resolved. The default\nis 'IfNotPresent', which will attempt to resolve the reference only when\nthe corresponding field is not present. Use 'Always' to resolve the\nreference on every reconcile.",
                      "enum": [
                        "Always",
                        "IfNotPresent"
                      ],
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                }
              },
              "type": "object",
              "additionalProperties": false
            },
            "pagerduty": {
              "description": "(Block Set) A contact point that sends notifications to PagerDuty. (see below for nested schema)\nA contact point that sends notifications to PagerDuty.",
              "items": {
                "properties": {
                  "class": {
                    "description": "(String) The class or type of event, for example ping failure.\nThe class or type of event, for example `ping failure`.",
                    "type": "string"
                  },
                  "client": {
                    "description": "(String) The name of the monitoring client that is triggering this event.\nThe name of the monitoring client that is triggering this event.",
                    "type": "string"
                  },
                  "clientUrl": {
                    "description": "(String) The URL of the monitoring client that is triggering this event.\nThe URL of the monitoring client that is triggering this event.",
                    "type": "string"
                  },
                  "component": {
                    "description": "(String) The component being affected by the event.\nThe component being affected by the event.",
                    "type": "string"
                  },
                  "details": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "(String) The templated details to include with the message.\nA set of arbitrary key/value pairs that provide further detail about the incident.",
                    "type": "object",
                    "x-kubernetes-map-type": "granular"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "group": {
                    "description": "(String) The group to which the provided component belongs to.\nThe group to which the provided component belongs to.",
                    "type": "string"
                  },
                  "integrationKeySecretRef": {
                    "description": "(String, Sensitive) The PagerDuty API key.\nThe PagerDuty API key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "severity": {
                    "description": "(String) The PagerDuty event severity level. Default is critical.\nThe PagerDuty event severity level. Default is `critical`.",
                    "type": "string"
                  },
                  "source": {
                    "description": "(String) The unique location of the affected system.\nThe unique location of the affected system.",
                    "type": "string"
                  },
                  "summary": {
                    "description": "(String) The templated summary message of the event.\nThe templated summary message of the event.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send API requests to",
                    "type": "string"
                  }
                },
                "required": [
                  "integrationKeySecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "pushover": {
              "description": "(Block Set) A contact point that sends notifications to Pushover. (see below for nested schema)\nA contact point that sends notifications to Pushover.",
              "items": {
                "properties": {
                  "apiTokenSecretRef": {
                    "description": "(String, Sensitive) The Pushover API token.\nThe Pushover API token.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "device": {
                    "description": "separated list of devices to which the event is associated.\nComma-separated list of devices to which the event is associated.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "expire": {
                    "description": "(Number) How many seconds for which the notification will continue to be retried by Pushover.\nHow many seconds for which the notification will continue to be retried by Pushover.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated notification message content.",
                    "type": "string"
                  },
                  "okPriority": {
                    "description": "(Number) The priority level of the resolved event.\nThe priority level of the resolved event.",
                    "type": "number"
                  },
                  "okSound": {
                    "description": "(String) The sound associated with the resolved notification.\nThe sound associated with the resolved notification.",
                    "type": "string"
                  },
                  "priority": {
                    "description": "(Number) The priority level of the event.\nThe priority level of the event.",
                    "type": "number"
                  },
                  "retry": {
                    "description": "(Number) How often, in seconds, the Pushover servers will send the same notification to the user.\nHow often, in seconds, the Pushover servers will send the same notification to the user.",
                    "type": "number"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "sound": {
                    "description": "(String) The sound associated with the notification.\nThe sound associated with the notification.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "uploadImage": {
                    "description": "(Boolean) Whether to send images in the notification or not. Default is true. Requires Grafana to be configured to send images in notifications.\nWhether to send images in the notification or not. Default is true. Requires Grafana to be configured to send images in notifications.",
                    "type": "boolean"
                  },
                  "userKeySecretRef": {
                    "description": "(String, Sensitive) The Pushover user key.\nThe Pushover user key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "apiTokenSecretRef",
                  "userKeySecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "sensugo": {
              "description": "(Block Set) A contact point that sends notifications to SensuGo. (see below for nested schema)\nA contact point that sends notifications to SensuGo.",
              "items": {
                "properties": {
                  "apiKeySecretRef": {
                    "description": "(String, Sensitive) The OpsGenie API key to use.\nThe SensuGo API key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "check": {
                    "description": "(String) The SensuGo check to which the event should be routed.\nThe SensuGo check to which the event should be routed.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "entity": {
                    "description": "(String) The entity being monitored.\nThe entity being monitored.",
                    "type": "string"
                  },
                  "handler": {
                    "description": "(String) A custom handler to execute in addition to the check.\nA custom handler to execute in addition to the check.",
                    "type": "string"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nTemplated message content describing the alert.",
                    "type": "string"
                  },
                  "namespace": {
                    "description": "(String) The namespace in which the check resides.\nThe namespace in which the check resides.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe SensuGo URL to send requests to.",
                    "type": "string"
                  }
                },
                "required": [
                  "apiKeySecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "slack": {
              "description": "(Block Set) A contact point that sends notifications to Slack. (see below for nested schema)\nA contact point that sends notifications to Slack.",
              "items": {
                "properties": {
                  "color": {
                    "description": "(String) Templated color of the slack message.\nTemplated color of the slack message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "endpointUrl": {
                    "description": "(String) Use this to override the Slack API endpoint URL to send requests to.\nUse this to override the Slack API endpoint URL to send requests to.",
                    "type": "string"
                  },
                  "iconEmoji": {
                    "description": "(String) The name of a Slack workspace emoji to use as the bot icon.\nThe name of a Slack workspace emoji to use as the bot icon.",
                    "type": "string"
                  },
                  "iconUrl": {
                    "description": "(String) A URL of an image to use as the bot icon.\nA URL of an image to use as the bot icon.",
                    "type": "string"
                  },
                  "mentionChannel": {
                    "description": "(String) Describes how to ping the slack channel that messages are being sent to. Options are here for an @here ping, channel for @channel, or empty for no ping.\nDescribes how to ping the slack channel that messages are being sent to. Options are `here` for an @here ping, `channel` for @channel, or empty for no ping.",
                    "type": "string"
                  },
                  "mentionGroups": {
                    "description": "separated list of groups to mention in the message.\nComma-separated list of groups to mention in the message.",
                    "type": "string"
                  },
                  "mentionUsers": {
                    "description": "separated list of users to mention in the message.\nComma-separated list of users to mention in the message.",
                    "type": "string"
                  },
                  "recipient": {
                    "description": "(String) Channel, private group, or IM channel (can be an encoded ID or a name) to send messages to.\nChannel, private group, or IM channel (can be an encoded ID or a name) to send messages to.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "text": {
                    "description": "(String) Templated content of the message.\nTemplated content of the message.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nA Slack API token,for sending messages directly without the webhook method.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nA Slack webhook URL,for sending messages via the webhook method.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "username": {
                    "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nUsername for the bot to use.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "sns": {
              "description": "(Block Set) A contact point that sends notifications to Amazon SNS. Requires Amazon Managed Grafana. (see below for nested schema)\nA contact point that sends notifications to Amazon SNS. Requires Amazon Managed Grafana.",
              "items": {
                "properties": {
                  "accessKeySecretRef": {
                    "description": "(String, Sensitive) AWS access key ID used to authenticate with Amazon SNS.\nAWS access key ID used to authenticate with Amazon SNS.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "assumeRoleArn": {
                    "description": "(String) The Amazon Resource Name (ARN) of the role to assume to send notifications to Amazon SNS.\nThe Amazon Resource Name (ARN) of the role to assume to send notifications to Amazon SNS.",
                    "type": "string"
                  },
                  "authProvider": {
                    "description": "(String) The authentication provider to use. Valid values are default, arn and keys. Default is default. Defaults to default.\nThe authentication provider to use. Valid values are `default`, `arn` and `keys`. Default is `default`. Defaults to `default`.",
                    "type": "string"
                  },
                  "body": {
                    "description": "(String)",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "externalId": {
                    "description": "(String) The external ID to use when assuming the role.\nThe external ID to use when assuming the role.",
                    "type": "string"
                  },
                  "messageFormat": {
                    "description": "(String) The format of the message to send. Valid values are text, body and json. Default is text. Defaults to text.\nThe format of the message to send. Valid values are `text`, `body` and `json`. Default is `text`. Defaults to `text`.",
                    "type": "string"
                  },
                  "secretKeySecretRef": {
                    "description": "(String, Sensitive) AWS secret access key used to authenticate with Amazon SNS.\nAWS secret access key used to authenticate with Amazon SNS.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "subject": {
                    "description": "(String) The templated subject line of the email. Defaults to \u201c.",
                    "type": "string"
                  },
                  "topic": {
                    "description": "(String) The name of the Kafka topic to publish to.\nThe Amazon SNS topic to send notifications to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "teams": {
              "description": "(Block Set) A contact point that sends notifications to Microsoft Teams. (see below for nested schema)\nA contact point that sends notifications to Microsoft Teams.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated message content to send.",
                    "type": "string"
                  },
                  "sectionTitle": {
                    "description": "(String) The templated subtitle for each message section.\nThe templated subtitle for each message section.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nA Teams webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "urlSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "telegram": {
              "description": "(Block Set) A contact point that sends notifications to Telegram. (see below for nested schema)\nA contact point that sends notifications to Telegram.",
              "items": {
                "properties": {
                  "chatId": {
                    "description": "(String) The chat ID to send messages to.\nThe chat ID to send messages to.",
                    "type": "string"
                  },
                  "disableNotifications": {
                    "description": "(Boolean) When set users will receive a notification with no sound.\nWhen set users will receive a notification with no sound.",
                    "type": "boolean"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "disableWebPagePreview": {
                    "description": "(Boolean) When set it disables link previews for links in the message.\nWhen set it disables link previews for links in the message.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "messageThreadId": {
                    "description": "(String) The ID of the message thread to send the message to.\nThe ID of the message thread to send the message to.",
                    "type": "string"
                  },
                  "parseMode": {
                    "description": "(String) Mode for parsing entities in the message text. Supported: None, Markdown, MarkdownV2, and HTML. HTML is the default.\nMode for parsing entities in the message text. Supported: None, Markdown, MarkdownV2, and HTML. HTML is the default.",
                    "type": "string"
                  },
                  "protectContent": {
                    "description": "(Boolean) When set it protects the contents of the message from forwarding and saving.\nWhen set it protects the contents of the message from forwarding and saving.",
                    "type": "boolean"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nThe Telegram bot token.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "tokenSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "threema": {
              "description": "(Block Set) A contact point that sends notifications to Threema. (see below for nested schema)\nA contact point that sends notifications to Threema.",
              "items": {
                "properties": {
                  "apiSecretSecretRef": {
                    "description": "(String, Sensitive) The Threema API key.\nThe Threema API key.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "gatewayId": {
                    "description": "(String) The Threema gateway ID.\nThe Threema gateway ID.",
                    "type": "string"
                  },
                  "recipientId": {
                    "description": "(String) The ID of the recipient of the message.\nThe ID of the recipient of the message.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  }
                },
                "required": [
                  "apiSecretSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "victorops": {
              "description": "(Block Set) A contact point that sends notifications to VictorOps (now known as Splunk OnCall). (see below for nested schema)\nA contact point that sends notifications to VictorOps (now known as Splunk OnCall).",
              "items": {
                "properties": {
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nTemplated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "messageType": {
                    "description": "either 'link' or 'actionCard'\nThe VictorOps alert state - typically either `CRITICAL` or `RECOVERY`.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title to display.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe VictorOps webhook URL.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "urlSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "webex": {
              "description": "(Block Set) A contact point that sends notifications to Cisco Webex. (see below for nested schema)\nA contact point that sends notifications to Cisco Webex.",
              "items": {
                "properties": {
                  "apiUrl": {
                    "description": "(String) The URL to send webhook requests to.\nThe URL to send webhook requests to.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated title of the message to send.",
                    "type": "string"
                  },
                  "roomId": {
                    "description": "(String) ID of the Webex Teams room where to send the messages.\nID of the Webex Teams room where to send the messages.",
                    "type": "string"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "tokenSecretRef": {
                    "description": "(String, Sensitive) The bearer token used to authorize the client.\nThe bearer token used to authorize the client.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "required": [
                  "tokenSecretRef"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "webhook": {
              "description": "(Block Set) A contact point that sends notifications to an arbitrary webhook, using the Prometheus webhook format defined here: https://prometheus.io/docs/alerting/latest/configuration/#webhook_config (see below for nested schema)\nA contact point that sends notifications to an arbitrary webhook, using the Prometheus webhook format defined here: https://prometheus.io/docs/alerting/latest/configuration/#webhook_config",
              "items": {
                "properties": {
                  "authorizationCredentialsSecretRef": {
                    "description": "attaches an auth header with this value. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this value. Do not use in conjunction with basic auth parameters.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "authorizationScheme": {
                    "description": "attaches an auth header with this name. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this name. Do not use in conjunction with basic auth parameters.",
                    "type": "string"
                  },
                  "basicAuthPasswordSecretRef": {
                    "description": "(String, Sensitive) The password component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "headers": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "(Map of String) Custom headers to attach to the request.\nCustom headers to attach to the request.",
                    "type": "object",
                    "x-kubernetes-map-type": "granular"
                  },
                  "hmacConfig": {
                    "description": "(Block Set, Max: 1) HMAC signature configuration options. (see below for nested schema)\nHMAC signature configuration options.",
                    "items": {
                      "properties": {
                        "header": {
                          "description": "Grafana-Alerting-Signature.\nThe header in which the HMAC signature will be included. Defaults to `X-Grafana-Alerting-Signature`.",
                          "type": "string"
                        },
                        "secretSecretRef": {
                          "description": "(String, Sensitive) The secret key used to generate the HMAC signature.\nThe secret key used to generate the HMAC signature.",
                          "properties": {
                            "key": {
                              "description": "The key to select.",
                              "type": "string"
                            },
                            "name": {
                              "description": "Name of the secret.",
                              "type": "string"
                            },
                            "namespace": {
                              "description": "Namespace of the secret.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "key",
                            "name",
                            "namespace"
                          ],
                          "type": "object",
                          "additionalProperties": false
                        },
                        "timestampHeader": {
                          "description": "(String) If set, the timestamp will be included in the HMAC signature. The value should be the name of the header to use.\nIf set, the timestamp will be included in the HMAC signature. The value should be the name of the header to use.",
                          "type": "string"
                        }
                      },
                      "required": [
                        "secretSecretRef"
                      ],
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "httpConfig": {
                    "description": "(Block Set, Max: 1) Common HTTP client options. (see below for nested schema)\nCommon HTTP client options.",
                    "items": {
                      "properties": {
                        "oauth2": {
                          "description": "(Block Set, Max: 1) OAuth2 configuration options. (see below for nested schema)\nOAuth2 configuration options.",
                          "items": {
                            "properties": {
                              "clientId": {
                                "description": "(String) Client ID to use when authenticating.\nClient ID to use when authenticating.",
                                "type": "string"
                              },
                              "clientSecretSecretRef": {
                                "description": "(String, Sensitive) Client secret to use when authenticating.\nClient secret to use when authenticating.",
                                "properties": {
                                  "key": {
                                    "description": "The key to select.",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the secret.",
                                    "type": "string"
                                  },
                                  "namespace": {
                                    "description": "Namespace of the secret.",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "key",
                                  "name",
                                  "namespace"
                                ],
                                "type": "object",
                                "additionalProperties": false
                              },
                              "endpointParams": {
                                "additionalProperties": {
                                  "type": "string"
                                },
                                "description": "(Map of String) Optional parameters to append to the access token request.\nOptional parameters to append to the access token request.",
                                "type": "object",
                                "x-kubernetes-map-type": "granular"
                              },
                              "proxyConfig": {
                                "description": "(Block Set, Max: 1) Optional proxy configuration for OAuth2 requests. (see below for nested schema)\nOptional proxy configuration for OAuth2 requests.",
                                "items": {
                                  "properties": {
                                    "noProxy": {
                                      "description": "separated list of addresses that should not use a proxy.\nComma-separated list of addresses that should not use a proxy.",
                                      "type": "string"
                                    },
                                    "proxyConnectHeader": {
                                      "additionalProperties": {
                                        "type": "string"
                                      },
                                      "description": "(Map of String) Optional headers to send to proxies during CONNECT requests.\nOptional headers to send to proxies during CONNECT requests.",
                                      "type": "object",
                                      "x-kubernetes-map-type": "granular"
                                    },
                                    "proxyFromEnvironment": {
                                      "description": "(Boolean) Use environment HTTP_PROXY, HTTPS_PROXY and NO_PROXY to determine proxies. Defaults to false.\nUse environment HTTP_PROXY, HTTPS_PROXY and NO_PROXY to determine proxies. Defaults to `false`.",
                                      "type": "boolean"
                                    },
                                    "proxyUrl": {
                                      "description": "(String) HTTP proxy server to use to connect to the targets.\nHTTP proxy server to use to connect to the targets.",
                                      "type": "string"
                                    }
                                  },
                                  "type": "object",
                                  "additionalProperties": false
                                },
                                "type": "array"
                              },
                              "scopes": {
                                "description": "(List of String) Optional scopes to request when obtaining an access token.\nOptional scopes to request when obtaining an access token.",
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "tlsConfig": {
                                "description": "(Map of String, Sensitive) Allows configuring TLS for the webhook notifier.\nOptional TLS configuration options for OAuth2 requests.",
                                "items": {
                                  "properties": {
                                    "caCertificateSecretRef": {
                                      "description": "(String, Sensitive) Certificate in PEM format to use when verifying the server's certificate chain.\nCertificate in PEM format to use when verifying the server's certificate chain.",
                                      "properties": {
                                        "key": {
                                          "description": "The key to select.",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the secret.",
                                          "type": "string"
                                        },
                                        "namespace": {
                                          "description": "Namespace of the secret.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "key",
                                        "name",
                                        "namespace"
                                      ],
                                      "type": "object",
                                      "additionalProperties": false
                                    },
                                    "clientCertificateSecretRef": {
                                      "description": "(String, Sensitive) Client certificate in PEM format to use when connecting to the server.\nClient certificate in PEM format to use when connecting to the server.",
                                      "properties": {
                                        "key": {
                                          "description": "The key to select.",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the secret.",
                                          "type": "string"
                                        },
                                        "namespace": {
                                          "description": "Namespace of the secret.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "key",
                                        "name",
                                        "namespace"
                                      ],
                                      "type": "object",
                                      "additionalProperties": false
                                    },
                                    "clientKeySecretRef": {
                                      "description": "(String, Sensitive) Client key in PEM format to use when connecting to the server.\nClient key in PEM format to use when connecting to the server.",
                                      "properties": {
                                        "key": {
                                          "description": "The key to select.",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the secret.",
                                          "type": "string"
                                        },
                                        "namespace": {
                                          "description": "Namespace of the secret.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "key",
                                        "name",
                                        "namespace"
                                      ],
                                      "type": "object",
                                      "additionalProperties": false
                                    },
                                    "insecureSkipVerify": {
                                      "description": "(Boolean) Do not verify the server's certificate chain and host name. Defaults to false.\nDo not verify the server's certificate chain and host name. Defaults to `false`.",
                                      "type": "boolean"
                                    }
                                  },
                                  "type": "object",
                                  "additionalProperties": false
                                },
                                "type": "array"
                              },
                              "tokenUrl": {
                                "description": "(String) URL for the access token endpoint.\nURL for the access token endpoint.",
                                "type": "string"
                              }
                            },
                            "required": [
                              "clientSecretSecretRef"
                            ],
                            "type": "object",
                            "additionalProperties": false
                          },
                          "type": "array"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "httpMethod": {
                    "description": "(String) The HTTP method to use in the request. Defaults to POST.\nThe HTTP method to use in the request. Defaults to `POST`.",
                    "type": "string"
                  },
                  "maxAlerts": {
                    "description": "(Number) The maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.\nThe maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nCustom message. You can use template variables.",
                    "type": "string"
                  },
                  "payload": {
                    "description": "(Block Set, Max: 1) Optionally provide a templated payload. Overrides 'Message' and 'Title' field. (see below for nested schema)\nOptionally provide a templated payload. Overrides 'Message' and 'Title' field.",
                    "items": {
                      "properties": {
                        "template": {
                          "description": "(String) Custom payload template.\nCustom payload template.",
                          "type": "string"
                        },
                        "vars": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "(Map of String) Optionally provide a variables to be used in the payload template. They will be available in the template as .Vars.<variable_name>.\nOptionally provide a variables to be used in the payload template. They will be available in the template as `.Vars.<variable_name>`.",
                          "type": "object",
                          "x-kubernetes-map-type": "granular"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "tlsConfigSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send webhook requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "wecom": {
              "description": "(Block Set) A contact point that sends notifications to WeCom. (see below for nested schema)\nA contact point that sends notifications to WeCom.",
              "items": {
                "properties": {
                  "agentId": {
                    "description": "(String) Agent ID added to the request payload when using APIAPP.\nAgent ID added to the request payload when using APIAPP.",
                    "type": "string"
                  },
                  "corpId": {
                    "description": "(String) Corp ID used to get token when using APIAPP.\nCorp ID used to get token when using APIAPP.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message to send.",
                    "type": "string"
                  },
                  "msgType": {
                    "description": "(String) The type of them message. Supported: markdown, text. Default: text.\nThe type of them message. Supported: markdown, text. Default: text.",
                    "type": "string"
                  },
                  "secretSecretRef": {
                    "description": "(String, Sensitive) The secret key used to generate the HMAC signature.\nThe secret key required to obtain access token when using APIAPP. See https://work.weixin.qq.com/wework_admin/frame#apps to create APIAPP.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  },
                  "settingsSecretRef": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message to send.",
                    "type": "string"
                  },
                  "toUser": {
                    "description": "(String) The ID of user that should receive the message. Multiple entries should be separated by '|'. Default: @all.\nThe ID of user that should receive the message. Multiple entries should be separated by '|'. Default: @all.",
                    "type": "string"
                  },
                  "urlSecretRef": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe WeCom webhook URL. Required if using GroupRobot.",
                    "properties": {
                      "key": {
                        "description": "The key to select.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name of the secret.",
                        "type": "string"
                      },
                      "namespace": {
                        "description": "Namespace of the secret.",
                        "type": "string"
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "namespace"
                    ],
                    "type": "object",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "managementPolicies": {
          "default": [
            "*"
          ],
          "description": "THIS IS A BETA FIELD. It is on by default but can be opted out\nthrough a Crossplane feature flag.\nManagementPolicies specify the array of actions Crossplane is allowed to\ntake on the managed and external resources.\nThis field is planned to replace the DeletionPolicy field in a future\nrelease. Currently, both could be set independently and non-default\nvalues would be honored if the feature flag is enabled. If both are\ncustom, the DeletionPolicy field will be ignored.\nSee the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223\nand this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md",
          "items": {
            "description": "A ManagementAction represents an action that the Crossplane controllers\ncan take on an external resource.",
            "enum": [
              "Observe",
              "Create",
              "Update",
              "Delete",
              "LateInitialize",
              "*"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "providerConfigRef": {
          "default": {
            "name": "default"
          },
          "description": "ProviderConfigReference specifies how the provider that will be used to\ncreate, observe, update, and delete this managed resource should be\nconfigured.",
          "properties": {
            "name": {
              "description": "Name of the referenced object.",
              "type": "string"
            },
            "policy": {
              "description": "Policies for referencing.",
              "properties": {
                "resolution": {
                  "default": "Required",
                  "description": "Resolution specifies whether resolution of this reference is required.\nThe default is 'Required', which means the reconcile will fail if the\nreference cannot be resolved. 'Optional' means this reference will be\na no-op if it cannot be resolved.",
                  "enum": [
                    "Required",
                    "Optional"
                  ],
                  "type": "string"
                },
                "resolve": {
                  "description": "Resolve specifies when this reference should be resolved. The default\nis 'IfNotPresent', which will attempt to resolve the reference only when\nthe corresponding field is not present. Use 'Always' to resolve the\nreference on every reconcile.",
                  "enum": [
                    "Always",
                    "IfNotPresent"
                  ],
                  "type": "string"
                }
              },
              "type": "object",
              "additionalProperties": false
            }
          },
          "required": [
            "name"
          ],
          "type": "object",
          "additionalProperties": false
        },
        "publishConnectionDetailsTo": {
          "description": "PublishConnectionDetailsTo specifies the connection secret config which\ncontains a name, metadata and a reference to secret store config to\nwhich any connection details for this managed resource should be written.\nConnection details frequently include the endpoint, username,\nand password required to connect to the managed resource.",
          "properties": {
            "configRef": {
              "default": {
                "name": "default"
              },
              "description": "SecretStoreConfigRef specifies which secret store config should be used\nfor this ConnectionSecret.",
              "properties": {
                "name": {
                  "description": "Name of the referenced object.",
                  "type": "string"
                },
                "policy": {
                  "description": "Policies for referencing.",
                  "properties": {
                    "resolution": {
                      "default": "Required",
                      "description": "Resolution specifies whether resolution of this reference is required.\nThe default is 'Required', which means the reconcile will fail if the\nreference cannot be resolved. 'Optional' means this reference will be\na no-op if it cannot be resolved.",
                      "enum": [
                        "Required",
                        "Optional"
                      ],
                      "type": "string"
                    },
                    "resolve": {
                      "description": "Resolve specifies when this reference should be resolved. The default\nis 'IfNotPresent', which will attempt to resolve the reference only when\nthe corresponding field is not present. Use 'Always' to resolve the\nreference on every reconcile.",
                      "enum": [
                        "Always",
                        "IfNotPresent"
                      ],
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                }
              },
              "required": [
                "name"
              ],
              "type": "object",
              "additionalProperties": false
            },
            "metadata": {
              "description": "Metadata is the metadata for connection secret.",
              "properties": {
                "annotations": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "description": "Annotations are the annotations to be added to connection secret.\n- For Kubernetes secrets, this will be used as \"metadata.annotations\".\n- It is up to Secret Store implementation for others store types.",
                  "type": "object"
                },
                "labels": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "description": "Labels are the labels/tags to be added to connection secret.\n- For Kubernetes secrets, this will be used as \"metadata.labels\".\n- It is up to Secret Store implementation for others store types.",
                  "type": "object"
                },
                "type": {
                  "description": "Type is the SecretType for the connection secret.\n- Only valid for Kubernetes Secret Stores.",
                  "type": "string"
                }
              },
              "type": "object",
              "additionalProperties": false
            },
            "name": {
              "description": "Name is the name of the connection secret.",
              "type": "string"
            }
          },
          "required": [
            "name"
          ],
          "type": "object",
          "additionalProperties": false
        },
        "writeConnectionSecretToRef": {
          "description": "WriteConnectionSecretToReference specifies the namespace and name of a\nSecret to which any connection details for this managed resource should\nbe written. Connection details frequently include the endpoint, username,\nand password required to connect to the managed resource.\nThis field is planned to be replaced in a future release in favor of\nPublishConnectionDetailsTo. Currently, both could be set independently\nand connection details would be published to both without affecting\neach other.",
          "properties": {
            "name": {
              "description": "Name of the secret.",
              "type": "string"
            },
            "namespace": {
              "description": "Namespace of the secret.",
              "type": "string"
            }
          },
          "required": [
            "name",
            "namespace"
          ],
          "type": "object",
          "additionalProperties": false
        }
      },
      "required": [
        "forProvider"
      ],
      "type": "object",
      "x-kubernetes-validations": [
        {
          "message": "spec.forProvider.name is a required parameter",
          "rule": "!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))"
        }
      ],
      "additionalProperties": false
    },
    "status": {
      "description": "ContactPointStatus defines the observed state of ContactPoint.",
      "properties": {
        "atProvider": {
          "properties": {
            "alertmanager": {
              "description": "(Block Set) A contact point that sends notifications to other Alertmanager instances. (see below for nested schema)\nA contact point that sends notifications to other Alertmanager instances.",
              "items": {
                "properties": {
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username component of the basic auth credentials to use.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL of the Alertmanager instance.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "dingding": {
              "description": "(Block Set) A contact point that sends notifications to DingDing. (see below for nested schema)\nA contact point that sends notifications to DingDing.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "messageType": {
                    "description": "either 'link' or 'actionCard'\nThe format of message to send - either 'link' or 'actionCard'",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "disableProvenance": {
              "description": "Defaults to false. Defaults to `false`.",
              "type": "boolean"
            },
            "discord": {
              "description": "(Block Set) A contact point that sends notifications as Discord messages (see below for nested schema)\nA contact point that sends notifications as Discord messages",
              "items": {
                "properties": {
                  "avatarUrl": {
                    "description": "(String) The URL of a custom avatar image to use. Defaults to \u201c.\nThe URL of a custom avatar image to use. Defaults to \u201c.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message. Defaults to \u201c.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated content of the title.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "useDiscordUsername": {
                    "description": "(Boolean) Whether to use the bot account's plain username instead of \"Grafana.\" Defaults to false.\nWhether to use the bot account's plain username instead of \"Grafana.\" Defaults to `false`.",
                    "type": "boolean"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "email": {
              "description": "(Block Set) A contact point that sends notifications to an email address. (see below for nested schema)\nA contact point that sends notifications to an email address.",
              "items": {
                "properties": {
                  "addresses": {
                    "description": "(List of String) The addresses to send emails to.\nThe addresses to send emails to.",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the email. Defaults to \u201c.",
                    "type": "string"
                  },
                  "singleEmail": {
                    "description": "(Boolean) Whether to send a single email CC'ing all addresses, rather than a separate email to each address. Defaults to false.\nWhether to send a single email CC'ing all addresses, rather than a separate email to each address. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "subject": {
                    "description": "(String) The templated subject line of the email. Defaults to \u201c.\nThe templated subject line of the email. Defaults to \u201c.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "googlechat": {
              "description": "(Block Set) A contact point that sends notifications to Google Chat. (see below for nested schema)\nA contact point that sends notifications to Google Chat.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated content of the title.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "id": {
              "description": "(String) The ID of this resource.",
              "type": "string"
            },
            "kafka": {
              "description": "(Block Set) A contact point that publishes notifications to Apache Kafka topics. (see below for nested schema)\nA contact point that publishes notifications to Apache Kafka topics.",
              "items": {
                "properties": {
                  "apiVersion": {
                    "description": "(String) The API version to use when contacting the Kafka REST Server. Supported: v2 (default) and v3. Defaults to v2.\nThe API version to use when contacting the Kafka REST Server. Supported: v2 (default) and v3. Defaults to `v2`.",
                    "type": "string"
                  },
                  "clusterId": {
                    "description": "(String) The Id of cluster to use when contacting the Kafka REST Server. Required api_version to be 'v3'\nThe Id of cluster to use when contacting the Kafka REST Server. Required api_version to be 'v3'",
                    "type": "string"
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the Kafka message.",
                    "type": "string"
                  },
                  "details": {
                    "description": "(String) The templated details to include with the message.\nThe templated details to include with the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "topic": {
                    "description": "(String) The name of the Kafka topic to publish to.\nThe name of the Kafka topic to publish to.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "username": {
                    "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nThe user name to use when making a call to the Kafka REST Proxy",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "line": {
              "description": "(Block Set) A contact point that sends notifications to LINE.me. (see below for nested schema)\nA contact point that sends notifications to LINE.me.",
              "items": {
                "properties": {
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "name": {
              "description": "(String) The name of the contact point.\nThe name of the contact point.",
              "type": "string"
            },
            "oncall": {
              "description": "Call. (see below for nested schema)\nA contact point that sends notifications to Grafana On-Call.",
              "items": {
                "properties": {
                  "authorizationScheme": {
                    "description": "attaches an auth header with this name. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this name. Do not use in conjunction with basic auth parameters.",
                    "type": "string"
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "httpMethod": {
                    "description": "(String) The HTTP method to use in the request. Defaults to POST.\nThe HTTP method to use in the request. Defaults to `POST`.",
                    "type": "string"
                  },
                  "maxAlerts": {
                    "description": "(Number) The maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.\nThe maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nCustom message. You can use template variables.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send webhook requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "opsgenie": {
              "description": "(Block Set) A contact point that sends notifications to OpsGenie. (see below for nested schema)\nA contact point that sends notifications to OpsGenie.",
              "items": {
                "properties": {
                  "autoClose": {
                    "description": "close alerts in OpsGenie when they resolve in the Alertmanager.\nWhether to auto-close alerts in OpsGenie when they resolve in the Alertmanager.",
                    "type": "boolean"
                  },
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nA templated high-level description to use for the alert.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "overridePriority": {
                    "description": "(Boolean) Whether to allow the alert priority to be configured via the value of the og_priority annotation on the alert.\nWhether to allow the alert priority to be configured via the value of the `og_priority` annotation on the alert.",
                    "type": "boolean"
                  },
                  "responders": {
                    "description": "(Block List) Teams, users, escalations and schedules that the alert will be routed to send notifications. If the API Key belongs to a team integration, this field will be overwritten with the owner team. This feature is available from Grafana 10.3+. (see below for nested schema)\nTeams, users, escalations and schedules that the alert will be routed to send notifications. If the API Key belongs to a team integration, this field will be overwritten with the owner team. This feature is available from Grafana 10.3+.",
                    "items": {
                      "properties": {
                        "id": {
                          "description": "(String) The ID of this resource.\nID of the responder. Must be specified if name and username are empty.",
                          "type": "string"
                        },
                        "name": {
                          "description": "(String) The name of the contact point.\nName of the responder. Must be specified if username and id are empty.",
                          "type": "string"
                        },
                        "type": {
                          "description": "(String) Type of the responder. Supported: team, teams, user, escalation, schedule or a template that is expanded to one of these values.\nType of the responder. Supported: team, teams, user, escalation, schedule or a template that is expanded to one of these values.",
                          "type": "string"
                        },
                        "username": {
                          "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nUser name of the responder. Must be specified if name and id are empty.",
                          "type": "string"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "sendTagsAs": {
                    "description": "(String) Whether to send annotations to OpsGenie as Tags, Details, or both. Supported values are tags, details, both, or empty to use the default behavior of Tags.\nWhether to send annotations to OpsGenie as Tags, Details, or both. Supported values are `tags`, `details`, `both`, or empty to use the default behavior of Tags.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nAllows customization of the OpsGenie API URL.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "orgId": {
              "description": "(String) The Organization ID. If not set, the Org ID defined in the provider block will be used.\nThe Organization ID. If not set, the Org ID defined in the provider block will be used.",
              "type": "string"
            },
            "pagerduty": {
              "description": "(Block Set) A contact point that sends notifications to PagerDuty. (see below for nested schema)\nA contact point that sends notifications to PagerDuty.",
              "items": {
                "properties": {
                  "class": {
                    "description": "(String) The class or type of event, for example ping failure.\nThe class or type of event, for example `ping failure`.",
                    "type": "string"
                  },
                  "client": {
                    "description": "(String) The name of the monitoring client that is triggering this event.\nThe name of the monitoring client that is triggering this event.",
                    "type": "string"
                  },
                  "clientUrl": {
                    "description": "(String) The URL of the monitoring client that is triggering this event.\nThe URL of the monitoring client that is triggering this event.",
                    "type": "string"
                  },
                  "component": {
                    "description": "(String) The component being affected by the event.\nThe component being affected by the event.",
                    "type": "string"
                  },
                  "details": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "(String) The templated details to include with the message.\nA set of arbitrary key/value pairs that provide further detail about the incident.",
                    "type": "object",
                    "x-kubernetes-map-type": "granular"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "group": {
                    "description": "(String) The group to which the provided component belongs to.\nThe group to which the provided component belongs to.",
                    "type": "string"
                  },
                  "severity": {
                    "description": "(String) The PagerDuty event severity level. Default is critical.\nThe PagerDuty event severity level. Default is `critical`.",
                    "type": "string"
                  },
                  "source": {
                    "description": "(String) The unique location of the affected system.\nThe unique location of the affected system.",
                    "type": "string"
                  },
                  "summary": {
                    "description": "(String) The templated summary message of the event.\nThe templated summary message of the event.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send API requests to",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "pushover": {
              "description": "(Block Set) A contact point that sends notifications to Pushover. (see below for nested schema)\nA contact point that sends notifications to Pushover.",
              "items": {
                "properties": {
                  "device": {
                    "description": "separated list of devices to which the event is associated.\nComma-separated list of devices to which the event is associated.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "expire": {
                    "description": "(Number) How many seconds for which the notification will continue to be retried by Pushover.\nHow many seconds for which the notification will continue to be retried by Pushover.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated notification message content.",
                    "type": "string"
                  },
                  "okPriority": {
                    "description": "(Number) The priority level of the resolved event.\nThe priority level of the resolved event.",
                    "type": "number"
                  },
                  "okSound": {
                    "description": "(String) The sound associated with the resolved notification.\nThe sound associated with the resolved notification.",
                    "type": "string"
                  },
                  "priority": {
                    "description": "(Number) The priority level of the event.\nThe priority level of the event.",
                    "type": "number"
                  },
                  "retry": {
                    "description": "(Number) How often, in seconds, the Pushover servers will send the same notification to the user.\nHow often, in seconds, the Pushover servers will send the same notification to the user.",
                    "type": "number"
                  },
                  "sound": {
                    "description": "(String) The sound associated with the notification.\nThe sound associated with the notification.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "uploadImage": {
                    "description": "(Boolean) Whether to send images in the notification or not. Default is true. Requires Grafana to be configured to send images in notifications.\nWhether to send images in the notification or not. Default is true. Requires Grafana to be configured to send images in notifications.",
                    "type": "boolean"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "sensugo": {
              "description": "(Block Set) A contact point that sends notifications to SensuGo. (see below for nested schema)\nA contact point that sends notifications to SensuGo.",
              "items": {
                "properties": {
                  "check": {
                    "description": "(String) The SensuGo check to which the event should be routed.\nThe SensuGo check to which the event should be routed.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "entity": {
                    "description": "(String) The entity being monitored.\nThe entity being monitored.",
                    "type": "string"
                  },
                  "handler": {
                    "description": "(String) A custom handler to execute in addition to the check.\nA custom handler to execute in addition to the check.",
                    "type": "string"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nTemplated message content describing the alert.",
                    "type": "string"
                  },
                  "namespace": {
                    "description": "(String) The namespace in which the check resides.\nThe namespace in which the check resides.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe SensuGo URL to send requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "slack": {
              "description": "(Block Set) A contact point that sends notifications to Slack. (see below for nested schema)\nA contact point that sends notifications to Slack.",
              "items": {
                "properties": {
                  "color": {
                    "description": "(String) Templated color of the slack message.\nTemplated color of the slack message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "endpointUrl": {
                    "description": "(String) Use this to override the Slack API endpoint URL to send requests to.\nUse this to override the Slack API endpoint URL to send requests to.",
                    "type": "string"
                  },
                  "iconEmoji": {
                    "description": "(String) The name of a Slack workspace emoji to use as the bot icon.\nThe name of a Slack workspace emoji to use as the bot icon.",
                    "type": "string"
                  },
                  "iconUrl": {
                    "description": "(String) A URL of an image to use as the bot icon.\nA URL of an image to use as the bot icon.",
                    "type": "string"
                  },
                  "mentionChannel": {
                    "description": "(String) Describes how to ping the slack channel that messages are being sent to. Options are here for an @here ping, channel for @channel, or empty for no ping.\nDescribes how to ping the slack channel that messages are being sent to. Options are `here` for an @here ping, `channel` for @channel, or empty for no ping.",
                    "type": "string"
                  },
                  "mentionGroups": {
                    "description": "separated list of groups to mention in the message.\nComma-separated list of groups to mention in the message.",
                    "type": "string"
                  },
                  "mentionUsers": {
                    "description": "separated list of users to mention in the message.\nComma-separated list of users to mention in the message.",
                    "type": "string"
                  },
                  "recipient": {
                    "description": "(String) Channel, private group, or IM channel (can be an encoded ID or a name) to send messages to.\nChannel, private group, or IM channel (can be an encoded ID or a name) to send messages to.",
                    "type": "string"
                  },
                  "text": {
                    "description": "(String) Templated content of the message.\nTemplated content of the message.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "username": {
                    "description": "(String) The user name to use when making a call to the Kafka REST Proxy\nUsername for the bot to use.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "sns": {
              "description": "(Block Set) A contact point that sends notifications to Amazon SNS. Requires Amazon Managed Grafana. (see below for nested schema)\nA contact point that sends notifications to Amazon SNS. Requires Amazon Managed Grafana.",
              "items": {
                "properties": {
                  "assumeRoleArn": {
                    "description": "(String) The Amazon Resource Name (ARN) of the role to assume to send notifications to Amazon SNS.\nThe Amazon Resource Name (ARN) of the role to assume to send notifications to Amazon SNS.",
                    "type": "string"
                  },
                  "authProvider": {
                    "description": "(String) The authentication provider to use. Valid values are default, arn and keys. Default is default. Defaults to default.\nThe authentication provider to use. Valid values are `default`, `arn` and `keys`. Default is `default`. Defaults to `default`.",
                    "type": "string"
                  },
                  "body": {
                    "description": "(String)",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "externalId": {
                    "description": "(String) The external ID to use when assuming the role.\nThe external ID to use when assuming the role.",
                    "type": "string"
                  },
                  "messageFormat": {
                    "description": "(String) The format of the message to send. Valid values are text, body and json. Default is text. Defaults to text.\nThe format of the message to send. Valid values are `text`, `body` and `json`. Default is `text`. Defaults to `text`.",
                    "type": "string"
                  },
                  "subject": {
                    "description": "(String) The templated subject line of the email. Defaults to \u201c.",
                    "type": "string"
                  },
                  "topic": {
                    "description": "(String) The name of the Kafka topic to publish to.\nThe Amazon SNS topic to send notifications to.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "teams": {
              "description": "(Block Set) A contact point that sends notifications to Microsoft Teams. (see below for nested schema)\nA contact point that sends notifications to Microsoft Teams.",
              "items": {
                "properties": {
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated message content to send.",
                    "type": "string"
                  },
                  "sectionTitle": {
                    "description": "(String) The templated subtitle for each message section.\nThe templated subtitle for each message section.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "telegram": {
              "description": "(Block Set) A contact point that sends notifications to Telegram. (see below for nested schema)\nA contact point that sends notifications to Telegram.",
              "items": {
                "properties": {
                  "chatId": {
                    "description": "(String) The chat ID to send messages to.\nThe chat ID to send messages to.",
                    "type": "string"
                  },
                  "disableNotifications": {
                    "description": "(Boolean) When set users will receive a notification with no sound.\nWhen set users will receive a notification with no sound.",
                    "type": "boolean"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "disableWebPagePreview": {
                    "description": "(Boolean) When set it disables link previews for links in the message.\nWhen set it disables link previews for links in the message.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message.",
                    "type": "string"
                  },
                  "messageThreadId": {
                    "description": "(String) The ID of the message thread to send the message to.\nThe ID of the message thread to send the message to.",
                    "type": "string"
                  },
                  "parseMode": {
                    "description": "(String) Mode for parsing entities in the message text. Supported: None, Markdown, MarkdownV2, and HTML. HTML is the default.\nMode for parsing entities in the message text. Supported: None, Markdown, MarkdownV2, and HTML. HTML is the default.",
                    "type": "string"
                  },
                  "protectContent": {
                    "description": "(Boolean) When set it protects the contents of the message from forwarding and saving.\nWhen set it protects the contents of the message from forwarding and saving.",
                    "type": "boolean"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "threema": {
              "description": "(Block Set) A contact point that sends notifications to Threema. (see below for nested schema)\nA contact point that sends notifications to Threema.",
              "items": {
                "properties": {
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nThe templated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "gatewayId": {
                    "description": "(String) The Threema gateway ID.\nThe Threema gateway ID.",
                    "type": "string"
                  },
                  "recipientId": {
                    "description": "(String) The ID of the recipient of the message.\nThe ID of the recipient of the message.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "victorops": {
              "description": "(Block Set) A contact point that sends notifications to VictorOps (now known as Splunk OnCall). (see below for nested schema)\nA contact point that sends notifications to VictorOps (now known as Splunk OnCall).",
              "items": {
                "properties": {
                  "description": {
                    "description": "(String) The templated description of the Kafka message.\nTemplated description of the message.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "messageType": {
                    "description": "either 'link' or 'actionCard'\nThe VictorOps alert state - typically either `CRITICAL` or `RECOVERY`.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title to display.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "webex": {
              "description": "(Block Set) A contact point that sends notifications to Cisco Webex. (see below for nested schema)\nA contact point that sends notifications to Cisco Webex.",
              "items": {
                "properties": {
                  "apiUrl": {
                    "description": "(String) The URL to send webhook requests to.\nThe URL to send webhook requests to.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated title of the message to send.",
                    "type": "string"
                  },
                  "roomId": {
                    "description": "(String) ID of the Webex Teams room where to send the messages.\nID of the Webex Teams room where to send the messages.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "webhook": {
              "description": "(Block Set) A contact point that sends notifications to an arbitrary webhook, using the Prometheus webhook format defined here: https://prometheus.io/docs/alerting/latest/configuration/#webhook_config (see below for nested schema)\nA contact point that sends notifications to an arbitrary webhook, using the Prometheus webhook format defined here: https://prometheus.io/docs/alerting/latest/configuration/#webhook_config",
              "items": {
                "properties": {
                  "authorizationScheme": {
                    "description": "attaches an auth header with this name. Do not use in conjunction with basic auth parameters.\nAllows a custom authorization scheme - attaches an auth header with this name. Do not use in conjunction with basic auth parameters.",
                    "type": "string"
                  },
                  "basicAuthUser": {
                    "description": "(String) The username component of the basic auth credentials to use.\nThe username to use in basic auth headers attached to the request. If omitted, basic auth will not be used.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "headers": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "(Map of String) Custom headers to attach to the request.\nCustom headers to attach to the request.",
                    "type": "object",
                    "x-kubernetes-map-type": "granular"
                  },
                  "hmacConfig": {
                    "description": "(Block Set, Max: 1) HMAC signature configuration options. (see below for nested schema)\nHMAC signature configuration options.",
                    "items": {
                      "properties": {
                        "header": {
                          "description": "Grafana-Alerting-Signature.\nThe header in which the HMAC signature will be included. Defaults to `X-Grafana-Alerting-Signature`.",
                          "type": "string"
                        },
                        "timestampHeader": {
                          "description": "(String) If set, the timestamp will be included in the HMAC signature. The value should be the name of the header to use.\nIf set, the timestamp will be included in the HMAC signature. The value should be the name of the header to use.",
                          "type": "string"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "httpConfig": {
                    "description": "(Block Set, Max: 1) Common HTTP client options. (see below for nested schema)\nCommon HTTP client options.",
                    "items": {
                      "properties": {
                        "oauth2": {
                          "description": "(Block Set, Max: 1) OAuth2 configuration options. (see below for nested schema)\nOAuth2 configuration options.",
                          "items": {
                            "properties": {
                              "clientId": {
                                "description": "(String) Client ID to use when authenticating.\nClient ID to use when authenticating.",
                                "type": "string"
                              },
                              "endpointParams": {
                                "additionalProperties": {
                                  "type": "string"
                                },
                                "description": "(Map of String) Optional parameters to append to the access token request.\nOptional parameters to append to the access token request.",
                                "type": "object",
                                "x-kubernetes-map-type": "granular"
                              },
                              "proxyConfig": {
                                "description": "(Block Set, Max: 1) Optional proxy configuration for OAuth2 requests. (see below for nested schema)\nOptional proxy configuration for OAuth2 requests.",
                                "items": {
                                  "properties": {
                                    "noProxy": {
                                      "description": "separated list of addresses that should not use a proxy.\nComma-separated list of addresses that should not use a proxy.",
                                      "type": "string"
                                    },
                                    "proxyConnectHeader": {
                                      "additionalProperties": {
                                        "type": "string"
                                      },
                                      "description": "(Map of String) Optional headers to send to proxies during CONNECT requests.\nOptional headers to send to proxies during CONNECT requests.",
                                      "type": "object",
                                      "x-kubernetes-map-type": "granular"
                                    },
                                    "proxyFromEnvironment": {
                                      "description": "(Boolean) Use environment HTTP_PROXY, HTTPS_PROXY and NO_PROXY to determine proxies. Defaults to false.\nUse environment HTTP_PROXY, HTTPS_PROXY and NO_PROXY to determine proxies. Defaults to `false`.",
                                      "type": "boolean"
                                    },
                                    "proxyUrl": {
                                      "description": "(String) HTTP proxy server to use to connect to the targets.\nHTTP proxy server to use to connect to the targets.",
                                      "type": "string"
                                    }
                                  },
                                  "type": "object",
                                  "additionalProperties": false
                                },
                                "type": "array"
                              },
                              "scopes": {
                                "description": "(List of String) Optional scopes to request when obtaining an access token.\nOptional scopes to request when obtaining an access token.",
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "tlsConfig": {
                                "description": "(Map of String, Sensitive) Allows configuring TLS for the webhook notifier.\nOptional TLS configuration options for OAuth2 requests.",
                                "items": {
                                  "properties": {
                                    "insecureSkipVerify": {
                                      "description": "(Boolean) Do not verify the server's certificate chain and host name. Defaults to false.\nDo not verify the server's certificate chain and host name. Defaults to `false`.",
                                      "type": "boolean"
                                    }
                                  },
                                  "type": "object",
                                  "additionalProperties": false
                                },
                                "type": "array"
                              },
                              "tokenUrl": {
                                "description": "(String) URL for the access token endpoint.\nURL for the access token endpoint.",
                                "type": "string"
                              }
                            },
                            "type": "object",
                            "additionalProperties": false
                          },
                          "type": "array"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "httpMethod": {
                    "description": "(String) The HTTP method to use in the request. Defaults to POST.\nThe HTTP method to use in the request. Defaults to `POST`.",
                    "type": "string"
                  },
                  "maxAlerts": {
                    "description": "(Number) The maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.\nThe maximum number of alerts to send in a single request. This can be helpful in limiting the size of the request body. The default is 0, which indicates no limit.",
                    "type": "number"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nCustom message. You can use template variables.",
                    "type": "string"
                  },
                  "payload": {
                    "description": "(Block Set, Max: 1) Optionally provide a templated payload. Overrides 'Message' and 'Title' field. (see below for nested schema)\nOptionally provide a templated payload. Overrides 'Message' and 'Title' field.",
                    "items": {
                      "properties": {
                        "template": {
                          "description": "(String) Custom payload template.\nCustom payload template.",
                          "type": "string"
                        },
                        "vars": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "(Map of String) Optionally provide a variables to be used in the payload template. They will be available in the template as .Vars.<variable_name>.\nOptionally provide a variables to be used in the payload template. They will be available in the template as `.Vars.<variable_name>`.",
                          "type": "object",
                          "x-kubernetes-map-type": "granular"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nTemplated title of the message.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  },
                  "url": {
                    "description": "(String) The URL of the Alertmanager instance.\nThe URL to send webhook requests to.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "wecom": {
              "description": "(Block Set) A contact point that sends notifications to WeCom. (see below for nested schema)\nA contact point that sends notifications to WeCom.",
              "items": {
                "properties": {
                  "agentId": {
                    "description": "(String) Agent ID added to the request payload when using APIAPP.\nAgent ID added to the request payload when using APIAPP.",
                    "type": "string"
                  },
                  "corpId": {
                    "description": "(String) Corp ID used to get token when using APIAPP.\nCorp ID used to get token when using APIAPP.",
                    "type": "string"
                  },
                  "disableResolveMessage": {
                    "description": "(Boolean) Whether to disable sending resolve messages. Defaults to false.\nWhether to disable sending resolve messages. Defaults to `false`.",
                    "type": "boolean"
                  },
                  "message": {
                    "description": "(String) The templated content of the message.\nThe templated content of the message to send.",
                    "type": "string"
                  },
                  "msgType": {
                    "description": "(String) The type of them message. Supported: markdown, text. Default: text.\nThe type of them message. Supported: markdown, text. Default: text.",
                    "type": "string"
                  },
                  "title": {
                    "description": "(String) The templated title of the message.\nThe templated title of the message to send.",
                    "type": "string"
                  },
                  "toUser": {
                    "description": "(String) The ID of user that should receive the message. Multiple entries should be separated by '|'. Default: @all.\nThe ID of user that should receive the message. Multiple entries should be separated by '|'. Default: @all.",
                    "type": "string"
                  },
                  "uid": {
                    "description": "(String) The UID of the contact point.\nThe UID of the contact point.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "conditions": {
          "description": "Conditions of the resource.",
          "items": {
            "description": "A Condition that may apply to a resource.",
            "properties": {
              "lastTransitionTime": {
                "description": "LastTransitionTime is the last time this condition transitioned from one\nstatus to another.",
                "format": "date-time",
                "type": "string"
              },
              "message": {
                "description": "A Message containing details about this condition's last transition from\none status to another, if any.",
                "type": "string"
              },
              "observedGeneration": {
                "description": "ObservedGeneration represents the .metadata.generation that the condition was set based upon.\nFor instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date\nwith respect to the current state of the instance.",
                "format": "int64",
                "type": "integer"
              },
              "reason": {
                "description": "A Reason for this condition's last transition from one status to another.",
                "type": "string"
              },
              "status": {
                "description": "Status of this condition; is it currently True, False, or Unknown?",
                "type": "string"
              },
              "type": {
                "description": "Type of this condition. At most one of each condition type may apply to\na resource at any point in time.",
                "type": "string"
              }
            },
            "required": [
              "lastTransitionTime",
              "reason",
              "status",
              "type"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "type": "array",
          "x-kubernetes-list-map-keys": [
            "type"
          ],
          "x-kubernetes-list-type": "map"
        },
        "observedGeneration": {
          "description": "ObservedGeneration is the latest metadata.generation\nwhich resulted in either a ready state, or stalled due to error\nit can not recover from without human intervention.",
          "format": "int64",
          "type": "integer"
        }
      },
      "type": "object",
      "additionalProperties": false
    }
  },
  "required": [
    "spec"
  ],
  "type": "object"
}
