{
  "description": "Generator information:\n- Generated from: /monitor/resource-manager/Microsoft.Insights/stable/2022-06-15/scheduledQueryRule_API.json\n- ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/scheduledQueryRules/{ruleName}",
  "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": {
      "properties": {
        "actions": {
          "description": "Actions: Actions to invoke when the alert fires.",
          "properties": {
            "actionGroupsReferences": {
              "description": "ActionGroupsReferences: Action Group resource Ids to invoke when the alert fires.",
              "items": {
                "description": "ResourceReference represents a resource reference, either to a Kubernetes resource or directly to an Azure resource via ARMID",
                "properties": {
                  "armId": {
                    "description": "ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.\nThe /resourcegroups/{resourceGroupName} bit is optional as some resources are scoped at the subscription level\nARMID is mutually exclusive with Group, Kind, Namespace and Name.",
                    "pattern": "(?i)(^(/subscriptions/([^/]+)(/resourcegroups/([^/]+))?)?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$|^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?$)",
                    "type": "string"
                  },
                  "group": {
                    "description": "Group is the Kubernetes group of the resource.",
                    "type": "string"
                  },
                  "kind": {
                    "description": "Kind is the Kubernetes kind of the resource.",
                    "type": "string"
                  },
                  "name": {
                    "description": "Name is the Kubernetes name of the resource.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "customProperties": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "CustomProperties: The properties of an alert payload.",
              "type": "object"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "autoMitigate": {
          "description": "AutoMitigate: The flag that indicates whether the alert should be automatically resolved or not. The default is true.\nRelevant only for rules of the kind LogAlert.",
          "type": "boolean"
        },
        "azureName": {
          "description": "AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it\ndoesn't have to be.",
          "pattern": "^[^#<>%&:\\?/{}*]{1,260}$",
          "type": "string"
        },
        "checkWorkspaceAlertsStorageConfigured": {
          "description": "CheckWorkspaceAlertsStorageConfigured: The flag which indicates whether this scheduled query rule should be stored in\nthe customer's storage. The default is false. Relevant only for rules of the kind LogAlert.",
          "type": "boolean"
        },
        "criteria": {
          "description": "Criteria: The rule criteria that defines the conditions of the scheduled query rule.",
          "properties": {
            "allOf": {
              "description": "AllOf: A list of conditions to evaluate against the specified scopes",
              "items": {
                "description": "A condition of the scheduled query rule.",
                "properties": {
                  "dimensions": {
                    "description": "Dimensions: List of Dimensions conditions",
                    "items": {
                      "description": "Dimension splitting and filtering definition",
                      "properties": {
                        "name": {
                          "description": "Name: Name of the dimension",
                          "type": "string"
                        },
                        "operator": {
                          "description": "Operator: Operator for dimension values",
                          "enum": [
                            "Exclude",
                            "Include"
                          ],
                          "type": "string"
                        },
                        "values": {
                          "description": "Values: List of dimension values",
                          "items": {
                            "type": "string"
                          },
                          "type": "array"
                        }
                      },
                      "required": [
                        "name",
                        "operator",
                        "values"
                      ],
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "failingPeriods": {
                    "description": "FailingPeriods: The minimum number of violations required within the selected lookback time window required to raise an\nalert. Relevant only for rules of the kind LogAlert.",
                    "properties": {
                      "minFailingPeriodsToAlert": {
                        "description": "MinFailingPeriodsToAlert: The number of violations to trigger an alert. Should be smaller or equal to\nnumberOfEvaluationPeriods. Default value is 1",
                        "type": "integer"
                      },
                      "numberOfEvaluationPeriods": {
                        "description": "NumberOfEvaluationPeriods: The number of aggregated lookback points. The lookback time window is calculated based on the\naggregation granularity (windowSize) and the selected number of aggregated points. Default value is 1",
                        "type": "integer"
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "metricMeasureColumn": {
                    "description": "MetricMeasureColumn: The column containing the metric measure number. Relevant only for rules of the kind LogAlert.",
                    "type": "string"
                  },
                  "metricName": {
                    "description": "MetricName: The name of the metric to be sent. Relevant and required only for rules of the kind LogToMetric.",
                    "type": "string"
                  },
                  "operator": {
                    "description": "Operator: The criteria operator. Relevant and required only for rules of the kind LogAlert.",
                    "enum": [
                      "Equals",
                      "GreaterThan",
                      "GreaterThanOrEqual",
                      "LessThan",
                      "LessThanOrEqual"
                    ],
                    "type": "string"
                  },
                  "query": {
                    "description": "Query: Log query alert",
                    "type": "string"
                  },
                  "resourceIdColumnReference": {
                    "description": "ResourceIdColumnReference: The column containing the resource id. The content of the column must be a uri formatted as\nresource id. Relevant only for rules of the kind LogAlert.",
                    "properties": {
                      "armId": {
                        "description": "ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.\nThe /resourcegroups/{resourceGroupName} bit is optional as some resources are scoped at the subscription level\nARMID is mutually exclusive with Group, Kind, Namespace and Name.",
                        "pattern": "(?i)(^(/subscriptions/([^/]+)(/resourcegroups/([^/]+))?)?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$|^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?$)",
                        "type": "string"
                      },
                      "group": {
                        "description": "Group is the Kubernetes group of the resource.",
                        "type": "string"
                      },
                      "kind": {
                        "description": "Kind is the Kubernetes kind of the resource.",
                        "type": "string"
                      },
                      "name": {
                        "description": "Name is the Kubernetes name of the resource.",
                        "type": "string"
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "threshold": {
                    "description": "Threshold: the criteria threshold value that activates the alert. Relevant and required only for rules of the kind\nLogAlert.",
                    "type": "number"
                  },
                  "timeAggregation": {
                    "description": "TimeAggregation: Aggregation type. Relevant and required only for rules of the kind LogAlert.",
                    "enum": [
                      "Average",
                      "Count",
                      "Maximum",
                      "Minimum",
                      "Total"
                    ],
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "description": {
          "description": "Description: The description of the scheduled query rule.",
          "type": "string"
        },
        "displayName": {
          "description": "DisplayName: The display name of the alert rule",
          "type": "string"
        },
        "enabled": {
          "description": "Enabled: The flag which indicates whether this scheduled query rule is enabled. Value should be true or false",
          "type": "boolean"
        },
        "evaluationFrequency": {
          "description": "EvaluationFrequency: How often the scheduled query rule is evaluated represented in ISO 8601 duration format. Relevant\nand required only for rules of the kind LogAlert.",
          "type": "string"
        },
        "kind": {
          "description": "Kind: Indicates the type of scheduled query rule. The default is LogAlert.",
          "enum": [
            "LogAlert",
            "LogToMetric"
          ],
          "type": "string"
        },
        "location": {
          "description": "Location: The geo-location where the resource lives",
          "type": "string"
        },
        "muteActionsDuration": {
          "description": "MuteActionsDuration: Mute actions for the chosen period of time (in ISO 8601 duration format) after the alert is fired.\nRelevant only for rules of the kind LogAlert.",
          "type": "string"
        },
        "operatorSpec": {
          "description": "OperatorSpec: The specification for configuring operator behavior. This field is interpreted by the operator and not\npassed directly to Azure",
          "properties": {
            "configMapExpressions": {
              "description": "ConfigMapExpressions: configures where to place operator written dynamic ConfigMaps (created with CEL expressions).",
              "items": {
                "description": "DestinationExpression is a CEL expression and a destination to store the result in. The destination may\nbe a secret or a configmap. The value of the expression is stored at the specified location in\nthe destination.",
                "properties": {
                  "key": {
                    "description": "Key is the key in the ConfigMap or Secret being written to. If the CEL expression in Value returns a string\nthis is required to identify what key to write to. If the CEL expression in Value returns a map[string]string\nKey must not be set, instead the keys written will be determined dynamically based on the keys of the resulting\nmap[string]string.",
                    "type": "string"
                  },
                  "name": {
                    "description": "Name is the name of the Kubernetes configmap or secret to write to.\nThe configmap or secret will be created in the same namespace as the resource.",
                    "type": "string"
                  },
                  "value": {
                    "description": "Value is a CEL expression. The CEL expression may return a string or a map[string]string. For more information\non CEL in ASO see https://azure.github.io/azure-service-operator/guide/expressions/",
                    "type": "string"
                  }
                },
                "required": [
                  "name",
                  "value"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            },
            "secretExpressions": {
              "description": "SecretExpressions: configures where to place operator written dynamic secrets (created with CEL expressions).",
              "items": {
                "description": "DestinationExpression is a CEL expression and a destination to store the result in. The destination may\nbe a secret or a configmap. The value of the expression is stored at the specified location in\nthe destination.",
                "properties": {
                  "key": {
                    "description": "Key is the key in the ConfigMap or Secret being written to. If the CEL expression in Value returns a string\nthis is required to identify what key to write to. If the CEL expression in Value returns a map[string]string\nKey must not be set, instead the keys written will be determined dynamically based on the keys of the resulting\nmap[string]string.",
                    "type": "string"
                  },
                  "name": {
                    "description": "Name is the name of the Kubernetes configmap or secret to write to.\nThe configmap or secret will be created in the same namespace as the resource.",
                    "type": "string"
                  },
                  "value": {
                    "description": "Value is a CEL expression. The CEL expression may return a string or a map[string]string. For more information\non CEL in ASO see https://azure.github.io/azure-service-operator/guide/expressions/",
                    "type": "string"
                  }
                },
                "required": [
                  "name",
                  "value"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "overrideQueryTimeRange": {
          "description": "OverrideQueryTimeRange: If specified then overrides the query time range (default is\nWindowSize*NumberOfEvaluationPeriods). Relevant only for rules of the kind LogAlert.",
          "type": "string"
        },
        "owner": {
          "description": "Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also\ncontrols the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a\nreference to a resources.azure.com/ResourceGroup resource",
          "properties": {
            "armId": {
              "pattern": "(?i)(^(/subscriptions/([^/]+)(/resourcegroups/([^/]+))?)?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$|^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?$)",
              "type": "string"
            },
            "name": {
              "description": "This is the name of the Kubernetes resource to reference.",
              "type": "string"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "scopesReferences": {
          "description": "ScopesReferences: The list of resource id's that this scheduled query rule is scoped to.",
          "items": {
            "description": "ResourceReference represents a resource reference, either to a Kubernetes resource or directly to an Azure resource via ARMID",
            "properties": {
              "armId": {
                "description": "ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.\nThe /resourcegroups/{resourceGroupName} bit is optional as some resources are scoped at the subscription level\nARMID is mutually exclusive with Group, Kind, Namespace and Name.",
                "pattern": "(?i)(^(/subscriptions/([^/]+)(/resourcegroups/([^/]+))?)?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$|^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?$)",
                "type": "string"
              },
              "group": {
                "description": "Group is the Kubernetes group of the resource.",
                "type": "string"
              },
              "kind": {
                "description": "Kind is the Kubernetes kind of the resource.",
                "type": "string"
              },
              "name": {
                "description": "Name is the Kubernetes name of the resource.",
                "type": "string"
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        },
        "severity": {
          "description": "Severity: Severity of the alert. Should be an integer between [0-4]. Value of 0 is severest. Relevant and required only\nfor rules of the kind LogAlert.",
          "enum": [
            0,
            1,
            2,
            3,
            4
          ],
          "type": "integer"
        },
        "skipQueryValidation": {
          "description": "SkipQueryValidation: The flag which indicates whether the provided query should be validated or not. The default is\nfalse. Relevant only for rules of the kind LogAlert.",
          "type": "boolean"
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Tags: Resource tags.",
          "type": "object"
        },
        "targetResourceTypes": {
          "description": "TargetResourceTypes: List of resource type of the target resource(s) on which the alert is created/updated. For example\nif the scope is a resource group and targetResourceTypes is Microsoft.Compute/virtualMachines, then a different alert\nwill be fired for each virtual machine in the resource group which meet the alert criteria. Relevant only for rules of\nthe kind LogAlert",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "windowSize": {
          "description": "WindowSize: The period of time (in ISO 8601 duration format) on which the Alert query will be executed (bin size).\nRelevant and required only for rules of the kind LogAlert.",
          "type": "string"
        }
      },
      "required": [
        "location",
        "owner"
      ],
      "type": "object",
      "additionalProperties": false
    },
    "status": {
      "properties": {
        "actions": {
          "description": "Actions: Actions to invoke when the alert fires.",
          "properties": {
            "actionGroups": {
              "description": "ActionGroups: Action Group resource Ids to invoke when the alert fires.",
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            "customProperties": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "CustomProperties: The properties of an alert payload.",
              "type": "object"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "autoMitigate": {
          "description": "AutoMitigate: The flag that indicates whether the alert should be automatically resolved or not. The default is true.\nRelevant only for rules of the kind LogAlert.",
          "type": "boolean"
        },
        "checkWorkspaceAlertsStorageConfigured": {
          "description": "CheckWorkspaceAlertsStorageConfigured: The flag which indicates whether this scheduled query rule should be stored in\nthe customer's storage. The default is false. Relevant only for rules of the kind LogAlert.",
          "type": "boolean"
        },
        "conditions": {
          "description": "Conditions: The observed state of the resource",
          "items": {
            "description": "Condition defines an extension to status (an observation) of a resource",
            "properties": {
              "lastTransitionTime": {
                "description": "LastTransitionTime is the last time the condition transitioned from one status to another.",
                "format": "date-time",
                "type": "string"
              },
              "message": {
                "description": "Message is a human readable message indicating details about the transition. This field may be empty.",
                "type": "string"
              },
              "observedGeneration": {
                "description": "ObservedGeneration is the .metadata.generation that the condition was set based upon. For instance, if\n.metadata.generation is currently 12, but the .status.condition[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": "Reason for the condition's last transition.\nReasons are upper CamelCase (PascalCase) with no spaces. A reason is always provided, this field will not be empty.",
                "type": "string"
              },
              "severity": {
                "description": "Severity with which to treat failures of this type of condition.\nFor conditions which have positive polarity (Status == True is their normal/healthy state), this will be omitted when Status == True\nFor conditions which have negative polarity (Status == False is their normal/healthy state), this will be omitted when Status == False.\nThis is omitted in all cases when Status == Unknown",
                "type": "string"
              },
              "status": {
                "description": "Status of the condition, one of True, False, or Unknown.",
                "type": "string"
              },
              "type": {
                "description": "Type of condition.",
                "type": "string"
              }
            },
            "required": [
              "lastTransitionTime",
              "reason",
              "status",
              "type"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        },
        "createdWithApiVersion": {
          "description": "CreatedWithApiVersion: The api-version used when creating this alert rule",
          "type": "string"
        },
        "criteria": {
          "description": "Criteria: The rule criteria that defines the conditions of the scheduled query rule.",
          "properties": {
            "allOf": {
              "description": "AllOf: A list of conditions to evaluate against the specified scopes",
              "items": {
                "description": "A condition of the scheduled query rule.",
                "properties": {
                  "dimensions": {
                    "description": "Dimensions: List of Dimensions conditions",
                    "items": {
                      "description": "Dimension splitting and filtering definition",
                      "properties": {
                        "name": {
                          "description": "Name: Name of the dimension",
                          "type": "string"
                        },
                        "operator": {
                          "description": "Operator: Operator for dimension values",
                          "type": "string"
                        },
                        "values": {
                          "description": "Values: List of dimension values",
                          "items": {
                            "type": "string"
                          },
                          "type": "array"
                        }
                      },
                      "type": "object",
                      "additionalProperties": false
                    },
                    "type": "array"
                  },
                  "failingPeriods": {
                    "description": "FailingPeriods: The minimum number of violations required within the selected lookback time window required to raise an\nalert. Relevant only for rules of the kind LogAlert.",
                    "properties": {
                      "minFailingPeriodsToAlert": {
                        "description": "MinFailingPeriodsToAlert: The number of violations to trigger an alert. Should be smaller or equal to\nnumberOfEvaluationPeriods. Default value is 1",
                        "type": "integer"
                      },
                      "numberOfEvaluationPeriods": {
                        "description": "NumberOfEvaluationPeriods: The number of aggregated lookback points. The lookback time window is calculated based on the\naggregation granularity (windowSize) and the selected number of aggregated points. Default value is 1",
                        "type": "integer"
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "metricMeasureColumn": {
                    "description": "MetricMeasureColumn: The column containing the metric measure number. Relevant only for rules of the kind LogAlert.",
                    "type": "string"
                  },
                  "metricName": {
                    "description": "MetricName: The name of the metric to be sent. Relevant and required only for rules of the kind LogToMetric.",
                    "type": "string"
                  },
                  "operator": {
                    "description": "Operator: The criteria operator. Relevant and required only for rules of the kind LogAlert.",
                    "type": "string"
                  },
                  "query": {
                    "description": "Query: Log query alert",
                    "type": "string"
                  },
                  "resourceIdColumn": {
                    "description": "ResourceIdColumn: The column containing the resource id. The content of the column must be a uri formatted as resource\nid. Relevant only for rules of the kind LogAlert.",
                    "type": "string"
                  },
                  "threshold": {
                    "description": "Threshold: the criteria threshold value that activates the alert. Relevant and required only for rules of the kind\nLogAlert.",
                    "type": "number"
                  },
                  "timeAggregation": {
                    "description": "TimeAggregation: Aggregation type. Relevant and required only for rules of the kind LogAlert.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "type": "array"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "description": {
          "description": "Description: The description of the scheduled query rule.",
          "type": "string"
        },
        "displayName": {
          "description": "DisplayName: The display name of the alert rule",
          "type": "string"
        },
        "enabled": {
          "description": "Enabled: The flag which indicates whether this scheduled query rule is enabled. Value should be true or false",
          "type": "boolean"
        },
        "etag": {
          "description": "Etag: The etag field is *not* required. If it is provided in the response body, it must also be provided as a header per\nthe normal etag convention.  Entity tags are used for comparing two or more entities from the same requested resource.\nHTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and\nIf-Range (section 14.27) header fields.",
          "type": "string"
        },
        "evaluationFrequency": {
          "description": "EvaluationFrequency: How often the scheduled query rule is evaluated represented in ISO 8601 duration format. Relevant\nand required only for rules of the kind LogAlert.",
          "type": "string"
        },
        "id": {
          "description": "Id: Fully qualified resource ID for the resource. Ex -\n/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}",
          "type": "string"
        },
        "isLegacyLogAnalyticsRule": {
          "description": "IsLegacyLogAnalyticsRule: True if alert rule is legacy Log Analytic rule",
          "type": "boolean"
        },
        "isWorkspaceAlertsStorageConfigured": {
          "description": "IsWorkspaceAlertsStorageConfigured: The flag which indicates whether this scheduled query rule has been configured to be\nstored in the customer's storage. The default is false.",
          "type": "boolean"
        },
        "kind": {
          "description": "Kind: Indicates the type of scheduled query rule. The default is LogAlert.",
          "type": "string"
        },
        "location": {
          "description": "Location: The geo-location where the resource lives",
          "type": "string"
        },
        "muteActionsDuration": {
          "description": "MuteActionsDuration: Mute actions for the chosen period of time (in ISO 8601 duration format) after the alert is fired.\nRelevant only for rules of the kind LogAlert.",
          "type": "string"
        },
        "name": {
          "description": "Name: The name of the resource",
          "type": "string"
        },
        "overrideQueryTimeRange": {
          "description": "OverrideQueryTimeRange: If specified then overrides the query time range (default is\nWindowSize*NumberOfEvaluationPeriods). Relevant only for rules of the kind LogAlert.",
          "type": "string"
        },
        "scopes": {
          "description": "Scopes: The list of resource id's that this scheduled query rule is scoped to.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "severity": {
          "description": "Severity: Severity of the alert. Should be an integer between [0-4]. Value of 0 is severest. Relevant and required only\nfor rules of the kind LogAlert.",
          "type": "integer"
        },
        "skipQueryValidation": {
          "description": "SkipQueryValidation: The flag which indicates whether the provided query should be validated or not. The default is\nfalse. Relevant only for rules of the kind LogAlert.",
          "type": "boolean"
        },
        "systemData": {
          "description": "SystemData: SystemData of ScheduledQueryRule.",
          "properties": {
            "createdAt": {
              "description": "CreatedAt: The timestamp of resource creation (UTC).",
              "type": "string"
            },
            "createdBy": {
              "description": "CreatedBy: The identity that created the resource.",
              "type": "string"
            },
            "createdByType": {
              "description": "CreatedByType: The type of identity that created the resource.",
              "type": "string"
            },
            "lastModifiedAt": {
              "description": "LastModifiedAt: The timestamp of resource last modification (UTC)",
              "type": "string"
            },
            "lastModifiedBy": {
              "description": "LastModifiedBy: The identity that last modified the resource.",
              "type": "string"
            },
            "lastModifiedByType": {
              "description": "LastModifiedByType: The type of identity that last modified the resource.",
              "type": "string"
            }
          },
          "type": "object",
          "additionalProperties": false
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Tags: Resource tags.",
          "type": "object"
        },
        "targetResourceTypes": {
          "description": "TargetResourceTypes: List of resource type of the target resource(s) on which the alert is created/updated. For example\nif the scope is a resource group and targetResourceTypes is Microsoft.Compute/virtualMachines, then a different alert\nwill be fired for each virtual machine in the resource group which meet the alert criteria. Relevant only for rules of\nthe kind LogAlert",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "type": {
          "description": "Type: The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\"",
          "type": "string"
        },
        "windowSize": {
          "description": "WindowSize: The period of time (in ISO 8601 duration format) on which the Alert query will be executed (bin size).\nRelevant and required only for rules of the kind LogAlert.",
          "type": "string"
        }
      },
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
