BUDGETS
CreateBudget
enum_AutoAdjustType := [ "HISTORICAL", "FORECAST" ]
enum_BudgetType := [ "USAGE", "COST", "RI_UTILIZATION", "RI_COVERAGE", "SAVINGS_PLANS_UTILIZATION", "SAVINGS_PLANS_COVERAGE" ]
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_SubscriptionType := [ "SNS", "EMAIL" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
enum_TimeUnit := [ "DAILY", "MONTHLY", "QUARTERLY", "ANNUALLY" ]
valid {
input.Body.AccountId == STRING
input.Body.Budget.BudgetName == STRING
input.Body.Budget.BudgetLimit.Amount == STRING
input.Body.Budget.BudgetLimit.Unit == STRING
input.Body.Budget.PlannedBudgetLimits.STRING.Amount == STRING
input.Body.Budget.PlannedBudgetLimits.STRING.Unit == STRING
input.Body.Budget.CostFilters.STRING[_] == STRING
input.Body.Budget.CostTypes.IncludeTax == BOOLEAN
input.Body.Budget.CostTypes.IncludeSubscription == BOOLEAN
input.Body.Budget.CostTypes.UseBlended == BOOLEAN
input.Body.Budget.CostTypes.IncludeRefund == BOOLEAN
input.Body.Budget.CostTypes.IncludeCredit == BOOLEAN
input.Body.Budget.CostTypes.IncludeUpfront == BOOLEAN
input.Body.Budget.CostTypes.IncludeRecurring == BOOLEAN
input.Body.Budget.CostTypes.IncludeOtherSubscription == BOOLEAN
input.Body.Budget.CostTypes.IncludeSupport == BOOLEAN
input.Body.Budget.CostTypes.IncludeDiscount == BOOLEAN
input.Body.Budget.CostTypes.UseAmortized == BOOLEAN
input.Body.Budget.TimeUnit == enum_TimeUnit[_]
input.Body.Budget.TimePeriod.Start == TIMESTAMP
input.Body.Budget.TimePeriod.End == TIMESTAMP
input.Body.Budget.CalculatedSpend.ActualSpend.Amount == STRING
input.Body.Budget.CalculatedSpend.ActualSpend.Unit == STRING
input.Body.Budget.CalculatedSpend.ForecastedSpend.Amount == STRING
input.Body.Budget.CalculatedSpend.ForecastedSpend.Unit == STRING
input.Body.Budget.BudgetType == enum_BudgetType[_]
input.Body.Budget.LastUpdatedTime == TIMESTAMP
input.Body.Budget.AutoAdjustData.AutoAdjustType == enum_AutoAdjustType[_]
input.Body.Budget.AutoAdjustData.HistoricalOptions.BudgetAdjustmentPeriod == INTEGER
input.Body.Budget.AutoAdjustData.HistoricalOptions.LookBackAvailablePeriods == INTEGER
input.Body.Budget.AutoAdjustData.LastAutoAdjustTime == TIMESTAMP
input.Body.NotificationsWithSubscribers[_].Notification.NotificationType == enum_NotificationType[_]
input.Body.NotificationsWithSubscribers[_].Notification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.NotificationsWithSubscribers[_].Notification.Threshold == DOUBLE
input.Body.NotificationsWithSubscribers[_].Notification.ThresholdType == enum_ThresholdType[_]
input.Body.NotificationsWithSubscribers[_].Notification.NotificationState == enum_NotificationState[_]
input.Body.NotificationsWithSubscribers[_].Subscribers[_].SubscriptionType == enum_SubscriptionType[_]
input.Body.NotificationsWithSubscribers[_].Subscribers[_].Address == STRING
input.Body.ResourceTags[_].Key == STRING
input.Body.ResourceTags[_].Value == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
CreateBudgetAction
enum_ActionSubType := [ "STOP_EC2_INSTANCES", "STOP_RDS_INSTANCES" ]
enum_ActionType := [ "APPLY_IAM_POLICY", "APPLY_SCP_POLICY", "RUN_SSM_DOCUMENTS" ]
enum_ApprovalModel := [ "AUTOMATIC", "MANUAL" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_SubscriptionType := [ "SNS", "EMAIL" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.NotificationType == enum_NotificationType[_]
input.Body.ActionType == enum_ActionType[_]
input.Body.ActionThreshold.ActionThresholdValue == DOUBLE
input.Body.ActionThreshold.ActionThresholdType == enum_ThresholdType[_]
input.Body.Definition.IamActionDefinition.PolicyArn == STRING
input.Body.Definition.IamActionDefinition.Roles[_] == STRING
input.Body.Definition.IamActionDefinition.Groups[_] == STRING
input.Body.Definition.IamActionDefinition.Users[_] == STRING
input.Body.Definition.ScpActionDefinition.PolicyId == STRING
input.Body.Definition.ScpActionDefinition.TargetIds[_] == STRING
input.Body.Definition.SsmActionDefinition.ActionSubType == enum_ActionSubType[_]
input.Body.Definition.SsmActionDefinition.Region == STRING
input.Body.Definition.SsmActionDefinition.InstanceIds[_] == STRING
input.Body.ExecutionRoleArn == STRING
input.Body.ApprovalModel == enum_ApprovalModel[_]
input.Body.Subscribers[_].SubscriptionType == enum_SubscriptionType[_]
input.Body.Subscribers[_].Address == STRING
input.Body.ResourceTags[_].Key == STRING
input.Body.ResourceTags[_].Value == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
CreateNotification
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_SubscriptionType := [ "SNS", "EMAIL" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.Notification.NotificationType == enum_NotificationType[_]
input.Body.Notification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.Notification.Threshold == DOUBLE
input.Body.Notification.ThresholdType == enum_ThresholdType[_]
input.Body.Notification.NotificationState == enum_NotificationState[_]
input.Body.Subscribers[_].SubscriptionType == enum_SubscriptionType[_]
input.Body.Subscribers[_].Address == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
CreateSubscriber
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_SubscriptionType := [ "SNS", "EMAIL" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.Notification.NotificationType == enum_NotificationType[_]
input.Body.Notification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.Notification.Threshold == DOUBLE
input.Body.Notification.ThresholdType == enum_ThresholdType[_]
input.Body.Notification.NotificationState == enum_NotificationState[_]
input.Body.Subscriber.SubscriptionType == enum_SubscriptionType[_]
input.Body.Subscriber.Address == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DeleteBudget
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DeleteBudgetAction
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.ActionId == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DeleteNotification
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.Notification.NotificationType == enum_NotificationType[_]
input.Body.Notification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.Notification.Threshold == DOUBLE
input.Body.Notification.ThresholdType == enum_ThresholdType[_]
input.Body.Notification.NotificationState == enum_NotificationState[_]
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DeleteSubscriber
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_SubscriptionType := [ "SNS", "EMAIL" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.Notification.NotificationType == enum_NotificationType[_]
input.Body.Notification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.Notification.Threshold == DOUBLE
input.Body.Notification.ThresholdType == enum_ThresholdType[_]
input.Body.Notification.NotificationState == enum_NotificationState[_]
input.Body.Subscriber.SubscriptionType == enum_SubscriptionType[_]
input.Body.Subscriber.Address == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudget
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudgetAction
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.ActionId == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudgetActionHistories
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.ActionId == STRING
input.Body.TimePeriod.Start == TIMESTAMP
input.Body.TimePeriod.End == TIMESTAMP
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudgetActionsForAccount
valid {
input.Body.AccountId == STRING
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudgetActionsForBudget
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudgetNotificationsForAccount
valid {
input.Body.AccountId == STRING
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudgetPerformanceHistory
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.TimePeriod.Start == TIMESTAMP
input.Body.TimePeriod.End == TIMESTAMP
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeBudgets
valid {
input.Body.AccountId == STRING
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeNotificationsForBudget
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
DescribeSubscribersForNotification
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.Notification.NotificationType == enum_NotificationType[_]
input.Body.Notification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.Notification.Threshold == DOUBLE
input.Body.Notification.ThresholdType == enum_ThresholdType[_]
input.Body.Notification.NotificationState == enum_NotificationState[_]
input.Body.MaxResults == INTEGER
input.Body.NextToken == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
ExecuteBudgetAction
enum_ExecutionType := [ "APPROVE_BUDGET_ACTION", "RETRY_BUDGET_ACTION", "REVERSE_BUDGET_ACTION", "RESET_BUDGET_ACTION" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.ActionId == STRING
input.Body.ExecutionType == enum_ExecutionType[_]
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
ListTagsForResource
valid {
input.Body.ResourceARN == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
TagResource
valid {
input.Body.ResourceARN == STRING
input.Body.ResourceTags[_].Key == STRING
input.Body.ResourceTags[_].Value == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
UntagResource
valid {
input.Body.ResourceARN == STRING
input.Body.ResourceTagKeys[_] == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
UpdateBudget
enum_AutoAdjustType := [ "HISTORICAL", "FORECAST" ]
enum_BudgetType := [ "USAGE", "COST", "RI_UTILIZATION", "RI_COVERAGE", "SAVINGS_PLANS_UTILIZATION", "SAVINGS_PLANS_COVERAGE" ]
enum_TimeUnit := [ "DAILY", "MONTHLY", "QUARTERLY", "ANNUALLY" ]
valid {
input.Body.AccountId == STRING
input.Body.NewBudget.BudgetName == STRING
input.Body.NewBudget.BudgetLimit.Amount == STRING
input.Body.NewBudget.BudgetLimit.Unit == STRING
input.Body.NewBudget.PlannedBudgetLimits.STRING.Amount == STRING
input.Body.NewBudget.PlannedBudgetLimits.STRING.Unit == STRING
input.Body.NewBudget.CostFilters.STRING[_] == STRING
input.Body.NewBudget.CostTypes.IncludeTax == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeSubscription == BOOLEAN
input.Body.NewBudget.CostTypes.UseBlended == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeRefund == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeCredit == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeUpfront == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeRecurring == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeOtherSubscription == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeSupport == BOOLEAN
input.Body.NewBudget.CostTypes.IncludeDiscount == BOOLEAN
input.Body.NewBudget.CostTypes.UseAmortized == BOOLEAN
input.Body.NewBudget.TimeUnit == enum_TimeUnit[_]
input.Body.NewBudget.TimePeriod.Start == TIMESTAMP
input.Body.NewBudget.TimePeriod.End == TIMESTAMP
input.Body.NewBudget.CalculatedSpend.ActualSpend.Amount == STRING
input.Body.NewBudget.CalculatedSpend.ActualSpend.Unit == STRING
input.Body.NewBudget.CalculatedSpend.ForecastedSpend.Amount == STRING
input.Body.NewBudget.CalculatedSpend.ForecastedSpend.Unit == STRING
input.Body.NewBudget.BudgetType == enum_BudgetType[_]
input.Body.NewBudget.LastUpdatedTime == TIMESTAMP
input.Body.NewBudget.AutoAdjustData.AutoAdjustType == enum_AutoAdjustType[_]
input.Body.NewBudget.AutoAdjustData.HistoricalOptions.BudgetAdjustmentPeriod == INTEGER
input.Body.NewBudget.AutoAdjustData.HistoricalOptions.LookBackAvailablePeriods == INTEGER
input.Body.NewBudget.AutoAdjustData.LastAutoAdjustTime == TIMESTAMP
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
UpdateBudgetAction
enum_ActionSubType := [ "STOP_EC2_INSTANCES", "STOP_RDS_INSTANCES" ]
enum_ApprovalModel := [ "AUTOMATIC", "MANUAL" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_SubscriptionType := [ "SNS", "EMAIL" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.ActionId == STRING
input.Body.NotificationType == enum_NotificationType[_]
input.Body.ActionThreshold.ActionThresholdValue == DOUBLE
input.Body.ActionThreshold.ActionThresholdType == enum_ThresholdType[_]
input.Body.Definition.IamActionDefinition.PolicyArn == STRING
input.Body.Definition.IamActionDefinition.Roles[_] == STRING
input.Body.Definition.IamActionDefinition.Groups[_] == STRING
input.Body.Definition.IamActionDefinition.Users[_] == STRING
input.Body.Definition.ScpActionDefinition.PolicyId == STRING
input.Body.Definition.ScpActionDefinition.TargetIds[_] == STRING
input.Body.Definition.SsmActionDefinition.ActionSubType == enum_ActionSubType[_]
input.Body.Definition.SsmActionDefinition.Region == STRING
input.Body.Definition.SsmActionDefinition.InstanceIds[_] == STRING
input.Body.ExecutionRoleArn == STRING
input.Body.ApprovalModel == enum_ApprovalModel[_]
input.Body.Subscribers[_].SubscriptionType == enum_SubscriptionType[_]
input.Body.Subscribers[_].Address == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
UpdateNotification
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.OldNotification.NotificationType == enum_NotificationType[_]
input.Body.OldNotification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.OldNotification.Threshold == DOUBLE
input.Body.OldNotification.ThresholdType == enum_ThresholdType[_]
input.Body.OldNotification.NotificationState == enum_NotificationState[_]
input.Body.NewNotification.NotificationType == enum_NotificationType[_]
input.Body.NewNotification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.NewNotification.Threshold == DOUBLE
input.Body.NewNotification.ThresholdType == enum_ThresholdType[_]
input.Body.NewNotification.NotificationState == enum_NotificationState[_]
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
UpdateSubscriber
enum_ComparisonOperator := [ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ]
enum_NotificationState := [ "OK", "ALARM" ]
enum_NotificationType := [ "ACTUAL", "FORECASTED" ]
enum_SubscriptionType := [ "SNS", "EMAIL" ]
enum_ThresholdType := [ "PERCENTAGE", "ABSOLUTE_VALUE" ]
valid {
input.Body.AccountId == STRING
input.Body.BudgetName == STRING
input.Body.Notification.NotificationType == enum_NotificationType[_]
input.Body.Notification.ComparisonOperator == enum_ComparisonOperator[_]
input.Body.Notification.Threshold == DOUBLE
input.Body.Notification.ThresholdType == enum_ThresholdType[_]
input.Body.Notification.NotificationState == enum_NotificationState[_]
input.Body.OldSubscriber.SubscriptionType == enum_SubscriptionType[_]
input.Body.OldSubscriber.Address == STRING
input.Body.NewSubscriber.SubscriptionType == enum_SubscriptionType[_]
input.Body.NewSubscriber.Address == STRING
input.ProviderMetadata.Account == STRING
input.ProviderMetadata.AccessKeyId == STRING
input.ProviderMetadata.Region == STRING
}
Updated 8 days ago