CODESTAR-NOTIFICATIONS

CreateNotificationRule

enum_DetailType := [ "BASIC", "FULL" ]
enum_NotificationRuleStatus := [ "ENABLED", "DISABLED" ]

valid {
    input.Body.Name == STRING
    input.Body.EventTypeIds[_] == STRING
    input.Body.Resource == STRING
    input.Body.Targets[_].TargetType == STRING
    input.Body.Targets[_].TargetAddress == STRING
    input.Body.DetailType == enum_DetailType[_]
    input.Body.ClientRequestToken == STRING
    input.Body.Tags.STRING == STRING
    input.Body.Status == enum_NotificationRuleStatus[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteNotificationRule

valid {
    input.Body.Arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteTarget

valid {
    input.Body.TargetAddress == STRING
    input.Body.ForceUnsubscribeAll == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DescribeNotificationRule

valid {
    input.Body.Arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListEventTypes

enum_ListEventTypesFilterName := [ "RESOURCE_TYPE", "SERVICE_NAME" ]

valid {
    input.Body.Filters[_].Name == enum_ListEventTypesFilterName[_]
    input.Body.Filters[_].Value == STRING
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListNotificationRules

enum_ListNotificationRulesFilterName := [ "EVENT_TYPE_ID", "CREATED_BY", "RESOURCE", "TARGET_ADDRESS" ]

valid {
    input.Body.Filters[_].Name == enum_ListNotificationRulesFilterName[_]
    input.Body.Filters[_].Value == STRING
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListTagsForResource

valid {
    input.Body.Arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListTargets

enum_ListTargetsFilterName := [ "TARGET_TYPE", "TARGET_ADDRESS", "TARGET_STATUS" ]

valid {
    input.Body.Filters[_].Name == enum_ListTargetsFilterName[_]
    input.Body.Filters[_].Value == STRING
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

Subscribe

valid {
    input.Body.Arn == STRING
    input.Body.Target.TargetType == STRING
    input.Body.Target.TargetAddress == STRING
    input.Body.ClientRequestToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

TagResource

valid {
    input.Body.Arn == STRING
    input.Body.Tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

Unsubscribe

valid {
    input.Body.Arn == STRING
    input.Body.TargetAddress == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UntagResource

valid {
    input.ReqMap.resourceArn == STRING
    input.Qs.tagKeys[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateNotificationRule

enum_DetailType := [ "BASIC", "FULL" ]
enum_NotificationRuleStatus := [ "ENABLED", "DISABLED" ]

valid {
    input.Body.Arn == STRING
    input.Body.Name == STRING
    input.Body.Status == enum_NotificationRuleStatus[_]
    input.Body.EventTypeIds[_] == STRING
    input.Body.Targets[_].TargetType == STRING
    input.Body.Targets[_].TargetAddress == STRING
    input.Body.DetailType == enum_DetailType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}