MICROSOFT.ALERTSMANAGEMENT

ActionRules_CreateUpdate

enum_ActionRulePropertiesStatus := [ "Enabled", "Disabled" ]
enum_ActionRulePropertiesType := [ "Suppression", "ActionGroup", "Diagnostics" ]
enum_ConditionOperator := [ "Equals", "NotEquals", "Contains", "DoesNotContain" ]
enum_ScopeScopeType := [ "ResourceGroup", "Resource", "Subscription" ]
enum_api-version := [ "2019-05-05-preview" ]

valid {
    input.Body.properties.scope.scopeType == enum_ScopeScopeType[_]
    input.Body.properties.scope.values[_] == STRING
    input.Body.properties.conditions.severity.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.severity.values[_] == STRING
    input.Body.properties.conditions.monitorService.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.monitorService.values[_] == STRING
    input.Body.properties.conditions.monitorCondition.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.monitorCondition.values[_] == STRING
    input.Body.properties.conditions.targetResourceType.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.targetResourceType.values[_] == STRING
    input.Body.properties.conditions.alertRuleId.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.alertRuleId.values[_] == STRING
    input.Body.properties.conditions.alertRuleName.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.alertRuleName.values[_] == STRING
    input.Body.properties.conditions.description.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.description.values[_] == STRING
    input.Body.properties.conditions.alertContext.operator == enum_ConditionOperator[_]
    input.Body.properties.conditions.alertContext.values[_] == STRING
    input.Body.properties.description == STRING
    input.Body.properties.status == enum_ActionRulePropertiesStatus[_]
    input.Body.properties.type == enum_ActionRulePropertiesType[_]
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.actionRuleName == STRING
    input.Qs.api-version == enum_api-version[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ActionRules_Delete

enum_api-version := [ "2019-05-05-preview" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.actionRuleName == STRING
    input.Qs.api-version == enum_api-version[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ActionRules_GetByName

enum_api-version := [ "2019-05-05-preview" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.actionRuleName == STRING
    input.Qs.api-version == enum_api-version[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ActionRules_Update

enum_PatchPropertiesStatus := [ "Enabled", "Disabled" ]
enum_api-version := [ "2019-05-05-preview" ]

valid {
    input.Body.properties.status == enum_PatchPropertiesStatus[_]
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.actionRuleName == STRING
    input.Qs.api-version == enum_api-version[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AlertProcessingRules_CreateOrUpdate

enum_ActionActionType := [ "AddActionGroups", "RemoveAllActionGroups", "CorrelateAlerts" ]
enum_ConditionField := [ "Severity", "MonitorService", "MonitorCondition", "SignalType", "TargetResourceType", "TargetResource", "TargetResourceGroup", "AlertRuleId", "AlertRuleName", "Description", "AlertContext" ]
enum_ConditionOperator := [ "Equals", "NotEquals", "Contains", "DoesNotContain" ]
enum_RecurrenceRecurrenceType := [ "Daily", "Weekly", "Monthly" ]

valid {
    input.Body.properties.scopes[_] == STRING
    input.Body.properties.conditions[_].field == enum_ConditionField[_]
    input.Body.properties.conditions[_].operator == enum_ConditionOperator[_]
    input.Body.properties.conditions[_].values[_] == STRING
    input.Body.properties.schedule.effectiveFrom == STRING
    input.Body.properties.schedule.effectiveUntil == STRING
    input.Body.properties.schedule.timeZone == STRING
    input.Body.properties.schedule.recurrences[_].recurrenceType == enum_RecurrenceRecurrenceType[_]
    input.Body.properties.schedule.recurrences[_].startTime == STRING
    input.Body.properties.schedule.recurrences[_].endTime == STRING
    input.Body.properties.actions[_].actionType == enum_ActionActionType[_]
    input.Body.properties.description == STRING
    input.Body.properties.enabled == BOOLEAN
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertProcessingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AlertProcessingRules_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertProcessingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AlertProcessingRules_GetByName

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertProcessingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AlertProcessingRules_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AlertProcessingRules_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

AlertProcessingRules_Update

valid {
    input.Body.properties.enabled == BOOLEAN
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertProcessingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AlertRuleRecommendations_ListByResource

valid {
    input.ReqMap.resourceUri == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

AlertRuleRecommendations_ListByTargetType

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.targetType == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Alerts_ChangeState

enum_newState := [ "New", "Acknowledged", "Closed" ]

valid {
    input.Body.comments == STRING
    input.ReqMap.scope == STRING
    input.ReqMap.alertId == STRING
    input.Qs.api-version == STRING
    input.Qs.newState == enum_newState[_]
    input.ProviderMetadata.Region == STRING
}

Alerts_GetAll

enum_alertState := [ "New", "Acknowledged", "Closed" ]
enum_alertsSortBy := [ "name", "severity", "alertState", "monitorCondition", "targetResource", "targetResourceName", "targetResourceGroup", "targetResourceType", "startDateTime", "lastModifiedDateTime" ]
enum_monitorCondition := [ "Fired", "Resolved" ]
enum_monitorService := [ "Application Insights", "ActivityLog Administrative", "ActivityLog Security", "ActivityLog Recommendation", "ActivityLog Policy", "ActivityLog Autoscale", "Log Analytics", "Nagios", "Platform", "SCOM", "ServiceHealth", "SmartDetector", "VM Insights", "Zabbix", "Resource Health" ]
enum_severity := [ "Sev0", "Sev1", "Sev2", "Sev3", "Sev4" ]
enum_sortOrder := [ "asc", "desc" ]
enum_timeRange := [ "1h", "1d", "7d", "30d" ]

valid {
    input.ReqMap.scope == STRING
    input.Qs.targetResource == STRING
    input.Qs.targetResourceType == STRING
    input.Qs.targetResourceGroup == STRING
    input.Qs.monitorService == enum_monitorService[_]
    input.Qs.monitorCondition == enum_monitorCondition[_]
    input.Qs.severity == enum_severity[_]
    input.Qs.alertState == enum_alertState[_]
    input.Qs.alertRule == STRING
    input.Qs.smartGroupId == STRING
    input.Qs.includeContext == BOOLEAN
    input.Qs.includeEgressConfig == BOOLEAN
    input.Qs.pageCount == INTEGER
    input.Qs.sortBy == enum_alertsSortBy[_]
    input.Qs.sortOrder == enum_sortOrder[_]
    input.Qs.select == STRING
    input.Qs.timeRange == enum_timeRange[_]
    input.Qs.customTimeRange == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Alerts_GetById

valid {
    input.ReqMap.scope == STRING
    input.ReqMap.alertId == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Alerts_GetEnrichments

valid {
    input.ReqMap.scope == STRING
    input.ReqMap.alertId == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Alerts_GetHistory

valid {
    input.ReqMap.scope == STRING
    input.ReqMap.alertId == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Alerts_GetSummary

enum_alertState := [ "New", "Acknowledged", "Closed" ]
enum_alertsSummaryGroupBy := [ "severity", "alertState", "monitorCondition", "monitorService", "signalType", "alertRule" ]
enum_monitorCondition := [ "Fired", "Resolved" ]
enum_monitorService := [ "Application Insights", "ActivityLog Administrative", "ActivityLog Security", "ActivityLog Recommendation", "ActivityLog Policy", "ActivityLog Autoscale", "Log Analytics", "Nagios", "Platform", "SCOM", "ServiceHealth", "SmartDetector", "VM Insights", "Zabbix", "Resource Health" ]
enum_severity := [ "Sev0", "Sev1", "Sev2", "Sev3", "Sev4" ]
enum_timeRange := [ "1h", "1d", "7d", "30d" ]

valid {
    input.ReqMap.scope == STRING
    input.Qs.groupby == enum_alertsSummaryGroupBy[_]
    input.Qs.includeSmartGroupsCount == BOOLEAN
    input.Qs.targetResource == STRING
    input.Qs.targetResourceType == STRING
    input.Qs.targetResourceGroup == STRING
    input.Qs.monitorService == enum_monitorService[_]
    input.Qs.monitorCondition == enum_monitorCondition[_]
    input.Qs.severity == enum_severity[_]
    input.Qs.alertState == enum_alertState[_]
    input.Qs.alertRule == STRING
    input.Qs.timeRange == enum_timeRange[_]
    input.Qs.customTimeRange == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Alerts_ListEnrichments

valid {
    input.ReqMap.scope == STRING
    input.ReqMap.alertId == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Alerts_MetaData

enum_identifier := [ "MonitorServiceList" ]

valid {
    input.Qs.api-version == STRING
    input.Qs.identifier == enum_identifier[_]
    input.ProviderMetadata.Region == STRING
}

MigrateFromSmartDetection_StartMigration

enum_SmartDetectionMigrationRequestActionGroupCreationPolicy := [ "Custom", "Auto" ]

valid {
    input.Body.scope[_] == STRING
    input.Body.actionGroupCreationPolicy == enum_SmartDetectionMigrationRequestActionGroupCreationPolicy[_]
    input.Body.customActionGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Operations_List

valid {
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

PrometheusRuleGroups_CreateOrUpdate

valid {
    input.Body.properties.description == STRING
    input.Body.properties.enabled == BOOLEAN
    input.Body.properties.clusterName == STRING
    input.Body.properties.scopes[_] == STRING
    input.Body.properties.interval == STRING
    input.Body.properties.rules[_].record == STRING
    input.Body.properties.rules[_].alert == STRING
    input.Body.properties.rules[_].enabled == BOOLEAN
    input.Body.properties.rules[_].expression == STRING
    input.Body.properties.rules[_].labels.STRING == STRING
    input.Body.properties.rules[_].severity == INTEGER
    input.Body.properties.rules[_].for == STRING
    input.Body.properties.rules[_].annotations.STRING == STRING
    input.Body.properties.rules[_].actions[_].actionGroupId == STRING
    input.Body.properties.rules[_].actions[_].actionProperties.STRING == STRING
    input.Body.properties.rules[_].resolveConfiguration.autoResolved == BOOLEAN
    input.Body.properties.rules[_].resolveConfiguration.timeToResolve == STRING
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ruleGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrometheusRuleGroups_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ruleGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrometheusRuleGroups_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ruleGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrometheusRuleGroups_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrometheusRuleGroups_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

PrometheusRuleGroups_Update

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.enabled == BOOLEAN
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ruleGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SmartDetectorAlertRules_CreateOrUpdate

enum_AlertRulePropertiesSeverity := [ "Sev0", "Sev1", "Sev2", "Sev3", "Sev4" ]
enum_AlertRulePropertiesState := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.description == STRING
    input.Body.properties.state == enum_AlertRulePropertiesState[_]
    input.Body.properties.severity == enum_AlertRulePropertiesSeverity[_]
    input.Body.properties.frequency == STRING
    input.Body.properties.detector.id == STRING
    input.Body.properties.detector.parameters.STRING.STRING == STRING
    input.Body.properties.scope[_] == STRING
    input.Body.properties.actionGroups.customEmailSubject == STRING
    input.Body.properties.actionGroups.customWebhookPayload == STRING
    input.Body.properties.actionGroups.groupIds[_] == STRING
    input.Body.properties.throttling.duration == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SmartDetectorAlertRules_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SmartDetectorAlertRules_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.Qs.expandDetector == BOOLEAN
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SmartDetectorAlertRules_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.expandDetector == BOOLEAN
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

SmartDetectorAlertRules_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.Qs.expandDetector == BOOLEAN
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SmartDetectorAlertRules_Patch

enum_AlertRulePatchPropertiesSeverity := [ "Sev0", "Sev1", "Sev2", "Sev3", "Sev4" ]
enum_AlertRulePatchPropertiesState := [ "Enabled", "Disabled" ]

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.description == STRING
    input.Body.properties.state == enum_AlertRulePatchPropertiesState[_]
    input.Body.properties.severity == enum_AlertRulePatchPropertiesSeverity[_]
    input.Body.properties.frequency == STRING
    input.Body.properties.actionGroups.customEmailSubject == STRING
    input.Body.properties.actionGroups.customWebhookPayload == STRING
    input.Body.properties.actionGroups.groupIds[_] == STRING
    input.Body.properties.throttling.duration == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SmartGroups_ChangeState

enum_api-version := [ "2019-05-05-preview" ]
enum_newState := [ "New", "Acknowledged", "Closed" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.smartGroupId == STRING
    input.Qs.api-version == enum_api-version[_]
    input.Qs.newState == enum_newState[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

SmartGroups_GetAll

enum_api-version := [ "2019-05-05-preview" ]
enum_monitorCondition := [ "Fired", "Resolved" ]
enum_monitorService := [ "Application Insights", "ActivityLog Administrative", "ActivityLog Security", "ActivityLog Recommendation", "ActivityLog Policy", "ActivityLog Autoscale", "Log Analytics", "Nagios", "Platform", "SCOM", "ServiceHealth", "SmartDetector", "VM Insights", "Zabbix" ]
enum_severity := [ "Sev0", "Sev1", "Sev2", "Sev3", "Sev4" ]
enum_smartGroupState := [ "New", "Acknowledged", "Closed" ]
enum_smartGroupsSortBy := [ "alertsCount", "state", "severity", "startDateTime", "lastModifiedDateTime" ]
enum_sortOrder := [ "asc", "desc" ]
enum_timeRange := [ "1h", "1d", "7d", "30d" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.targetResource == STRING
    input.Qs.targetResourceGroup == STRING
    input.Qs.targetResourceType == STRING
    input.Qs.monitorService == enum_monitorService[_]
    input.Qs.monitorCondition == enum_monitorCondition[_]
    input.Qs.severity == enum_severity[_]
    input.Qs.smartGroupState == enum_smartGroupState[_]
    input.Qs.timeRange == enum_timeRange[_]
    input.Qs.pageCount == INTEGER
    input.Qs.sortBy == enum_smartGroupsSortBy[_]
    input.Qs.sortOrder == enum_sortOrder[_]
    input.Qs.api-version == enum_api-version[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

SmartGroups_GetById

enum_api-version := [ "2019-05-05-preview" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.smartGroupId == STRING
    input.Qs.api-version == enum_api-version[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

SmartGroups_GetHistory

enum_api-version := [ "2019-05-05-preview" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.smartGroupId == STRING
    input.Qs.api-version == enum_api-version[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

TenantActivityLogAlerts_CreateOrUpdate

valid {
    input.Body.properties.tenantScope == STRING
    input.Body.properties.scopes[_] == STRING
    input.Body.properties.condition.allOf[_].anyOf[_].field == STRING
    input.Body.properties.condition.allOf[_].anyOf[_].equals == STRING
    input.Body.properties.condition.allOf[_].anyOf[_].containsAny[_] == STRING
    input.Body.properties.condition.allOf[_].field == STRING
    input.Body.properties.condition.allOf[_].equals == STRING
    input.Body.properties.condition.allOf[_].containsAny[_] == STRING
    input.Body.properties.actions.actionGroups[_].actionGroupId == STRING
    input.Body.properties.actions.actionGroups[_].webhookProperties.STRING == STRING
    input.Body.properties.actions.actionGroups[_].actionProperties.STRING == STRING
    input.Body.properties.enabled == BOOLEAN
    input.Body.properties.description == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.managementGroupName == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

TenantActivityLogAlerts_Delete

valid {
    input.ReqMap.managementGroupName == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

TenantActivityLogAlerts_Get

valid {
    input.ReqMap.managementGroupName == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

TenantActivityLogAlerts_ListByManagementGroup

valid {
    input.ReqMap.managementGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

TenantActivityLogAlerts_ListByTenant

valid {
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

TenantActivityLogAlerts_Update

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.enabled == BOOLEAN
    input.ReqMap.managementGroupName == STRING
    input.ReqMap.alertRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}