{
  "$schema": "http://json-schema.org/draft-04/schema",
  "properties": {
    "notification_type_dto": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "MAIL",
            "SMS",
            "SERVICEPROXY"
          ]
        },
        "address": {
          "type": "array",
          "iteams": {
            "type": "string",
            "max_length": 200
          }
        }
      }
    },
    "subject": {
      "type": "string",
      "max_length": 200
    },
    "time": {
      "type": "number",
      "minimum": 0,
      "maximum": 1e+29
    },
    "notification_message_type": {
      "type": "string",
      "enum": [
        "METRICS",
        "METRICS_VALUE",
        "TEXT"
      ]
    },
    "metrics": {
      "any_of": [
        {
          "type": "array",
          "iteams": {
            "type": "object",
            "properties": {
              "code": {
                "type": "string",
                "max_length": 200
              },
              "name": {
                "any_of": [
                  {
                    "type": "string",
                    "max_length": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "description": {
                "any_of": [
                  {
                    "type": "string",
                    "max_length": 500
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "unit": {
                "any_of": [
                  {
                    "type": "string",
                    "max_length": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "domain_base": {
                "any_of": [
                  {
                    "type": "object",
                    "properties": {
                      "code": {
                        "any_of": [
                          {
                            "type": "string",
                            "max_length": 200
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "path": {
                "any_of": [
                  {
                    "type": "string",
                    "max_length": 5000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "value": {
                "any_of": [
                  {
                    "type": "string",
                    "max_length": 500
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "min": {
                "any_of": [
                  {
                    "type": "number",
                    "minimum": -1e+29,
                    "maximum": 1e+29
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "max": {
                "any_of": [
                  {
                    "type": "number",
                    "minimum": -1e+29,
                    "maximum": 1e+29
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "mean": {
                "any_of": [
                  {
                    "type": "number",
                    "minimum": -1e+29,
                    "maximum": 1e+29
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "before_last": {
                "any_of": [
                  {
                    "type": "number",
                    "minimum": -1e+29,
                    "maximum": 1e+29
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "last": {
                "any_of": [
                  {
                    "type": "number",
                    "minimum": -1e+29,
                    "maximum": 1e+29
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "sweep": {
                "any_of": [
                  {
                    "type": "number",
                    "minimum": -1e+29,
                    "maximum": 1e+29
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "count": {
                "any_of": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1e+29
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "error_level_type": {
                "type": {
                  "type": "string",
                  "enum": [
                    "ERROR",
                    "WARNING",
                    "INFO",
                    "NORMAL"
                  ]
                },
                "is_system_metrics": {
                  "type": "boolean"
                },
                "triggers": {
                  "type": "array",
                  "iteams": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string",
                        "max_length": 500
                      },
                      "error_level_type": {
                        "type": "string",
                        "enum": [
                          "ERROR",
                          "WARNING",
                          "INFO",
                          "NORMAL"
                        ]
                      },
                      "nerror_levelame": {
                        "type": "object",
                        "properties": {
                          "error_level_type": {
                            "type": "string",
                            "enum": [
                              "ERROR",
                              "WARNING",
                              "INFO",
                              "NORMAL"
                            ]
                          },
                          "error_level": {
                            "any_of": [
                              {
                                "type": "object"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "incident_priority_type": {
                            "type": "string",
                            "enum": [
                              "LOWER"
                            ]
                          },
                          "value": {
                            "type": "number",
                            "minimum": -1e+29,
                            "maximum": 1e+29
                          },
                          "boolean_value": {
                            "type": "boolean"
                          },
                          "check_substring_value": {
                            "type": "string"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "text": {
      "any_of": [
        {
          "type": "string",
          "max_length": 500
        },
        {
          "type": "null"
        }
      ]
    },
    "monitoring_url": {
      "type": "string",
      "max_length": 500
    }
  },
  "required": [
    "notificationTypeDTO",
    "subject",
    "time",
    "notificationMessageType",
    "text",
    "monitoringUrl"
  ],
  "additional_properties": false
}