Skip to content

Commit fe7b281

Browse files
Releasing the new Budget FilterExpression and Metrics fields to support more granular filtering options. These new fields are intended to replace CostFilters and CostTypes, which are deprecated as of 2025/18/04.
1 parent 3b261e6 commit fe7b281

32 files changed

+2411
-73
lines changed

generator/ServiceModels/budgets/budgets-2016-10-20.api.json

Lines changed: 153 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -630,14 +630,26 @@
630630
"BudgetName":{"shape":"BudgetName"},
631631
"BudgetLimit":{"shape":"Spend"},
632632
"PlannedBudgetLimits":{"shape":"PlannedBudgetLimits"},
633-
"CostFilters":{"shape":"CostFilters"},
634-
"CostTypes":{"shape":"CostTypes"},
633+
"CostFilters":{
634+
"shape":"CostFilters",
635+
"deprecated":true,
636+
"deprecatedMessage":"CostFilters lack support for newer dimensions and filtering options. Please consider using the new 'FilterExpression' field.",
637+
"deprecatedSince":"2025-04-18"
638+
},
639+
"CostTypes":{
640+
"shape":"CostTypes",
641+
"deprecated":true,
642+
"deprecatedMessage":"CostTypes lack support for newer record type dimensions and filtering options. Please consider using the new 'Metrics' field.",
643+
"deprecatedSince":"2025-04-18"
644+
},
635645
"TimeUnit":{"shape":"TimeUnit"},
636646
"TimePeriod":{"shape":"TimePeriod"},
637647
"CalculatedSpend":{"shape":"CalculatedSpend"},
638648
"BudgetType":{"shape":"BudgetType"},
639649
"LastUpdatedTime":{"shape":"GenericTimestamp"},
640-
"AutoAdjustData":{"shape":"AutoAdjustData"}
650+
"AutoAdjustData":{"shape":"AutoAdjustData"},
651+
"FilterExpression":{"shape":"Expression"},
652+
"Metrics":{"shape":"Metrics"}
641653
}
642654
},
643655
"BudgetName":{
@@ -712,6 +724,15 @@
712724
"EQUAL_TO"
713725
]
714726
},
727+
"CostCategoryName":{"type":"string"},
728+
"CostCategoryValues":{
729+
"type":"structure",
730+
"members":{
731+
"Key":{"shape":"CostCategoryName"},
732+
"Values":{"shape":"Values"},
733+
"MatchOptions":{"shape":"MatchOptions"}
734+
}
735+
},
715736
"CostFilters":{
716737
"type":"map",
717738
"key":{"shape":"GenericString"},
@@ -1058,7 +1079,8 @@
10581079
],
10591080
"members":{
10601081
"AccountId":{"shape":"AccountId"},
1061-
"BudgetName":{"shape":"BudgetName"}
1082+
"BudgetName":{"shape":"BudgetName"},
1083+
"ShowFilterExpression":{"shape":"NullableBoolean"}
10621084
}
10631085
},
10641086
"DescribeBudgetResponse":{
@@ -1073,7 +1095,8 @@
10731095
"members":{
10741096
"AccountId":{"shape":"AccountId"},
10751097
"MaxResults":{"shape":"MaxResultsDescribeBudgets"},
1076-
"NextToken":{"shape":"GenericString"}
1098+
"NextToken":{"shape":"GenericString"},
1099+
"ShowFilterExpression":{"shape":"NullableBoolean"}
10771100
}
10781101
},
10791102
"DescribeBudgetsResponse":{
@@ -1125,6 +1148,44 @@
11251148
"NextToken":{"shape":"GenericString"}
11261149
}
11271150
},
1151+
"Dimension":{
1152+
"type":"string",
1153+
"enum":[
1154+
"AZ",
1155+
"INSTANCE_TYPE",
1156+
"LINKED_ACCOUNT",
1157+
"LINKED_ACCOUNT_NAME",
1158+
"OPERATION",
1159+
"PURCHASE_TYPE",
1160+
"REGION",
1161+
"SERVICE",
1162+
"SERVICE_CODE",
1163+
"USAGE_TYPE",
1164+
"USAGE_TYPE_GROUP",
1165+
"RECORD_TYPE",
1166+
"OPERATING_SYSTEM",
1167+
"TENANCY",
1168+
"SCOPE",
1169+
"PLATFORM",
1170+
"SUBSCRIPTION_ID",
1171+
"LEGAL_ENTITY_NAME",
1172+
"INVOICING_ENTITY",
1173+
"DEPLOYMENT_OPTION",
1174+
"DATABASE_ENGINE",
1175+
"CACHE_ENGINE",
1176+
"INSTANCE_TYPE_FAMILY",
1177+
"BILLING_ENTITY",
1178+
"RESERVATION_ID",
1179+
"RESOURCE_ID",
1180+
"RIGHTSIZING_TYPE",
1181+
"SAVINGS_PLANS_TYPE",
1182+
"SAVINGS_PLAN_ARN",
1183+
"PAYMENT_OPTION",
1184+
"RESERVATION_MODIFIED",
1185+
"TAG_KEY",
1186+
"COST_CATEGORY_NAME"
1187+
]
1188+
},
11281189
"DimensionValue":{
11291190
"type":"string",
11301191
"max":2147483647,
@@ -1198,6 +1259,33 @@
11981259
},
11991260
"exception":true
12001261
},
1262+
"Expression":{
1263+
"type":"structure",
1264+
"members":{
1265+
"Or":{"shape":"Expressions"},
1266+
"And":{"shape":"Expressions"},
1267+
"Not":{"shape":"Expression"},
1268+
"Dimensions":{"shape":"ExpressionDimensionValues"},
1269+
"Tags":{"shape":"TagValues"},
1270+
"CostCategories":{"shape":"CostCategoryValues"}
1271+
}
1272+
},
1273+
"ExpressionDimensionValues":{
1274+
"type":"structure",
1275+
"required":[
1276+
"Key",
1277+
"Values"
1278+
],
1279+
"members":{
1280+
"Key":{"shape":"Dimension"},
1281+
"Values":{"shape":"Values"},
1282+
"MatchOptions":{"shape":"MatchOptions"}
1283+
}
1284+
},
1285+
"Expressions":{
1286+
"type":"list",
1287+
"member":{"shape":"Expression"}
1288+
},
12011289
"GenericString":{
12021290
"type":"string",
12031291
"max":2147483647,
@@ -1281,6 +1369,23 @@
12811369
"ResourceTags":{"shape":"ResourceTagList"}
12821370
}
12831371
},
1372+
"MatchOption":{
1373+
"type":"string",
1374+
"enum":[
1375+
"EQUALS",
1376+
"ABSENT",
1377+
"STARTS_WITH",
1378+
"ENDS_WITH",
1379+
"CONTAINS",
1380+
"GREATER_THAN_OR_EQUAL",
1381+
"CASE_SENSITIVE",
1382+
"CASE_INSENSITIVE"
1383+
]
1384+
},
1385+
"MatchOptions":{
1386+
"type":"list",
1387+
"member":{"shape":"MatchOption"}
1388+
},
12841389
"MaxResults":{
12851390
"type":"integer",
12861391
"box":true,
@@ -1299,6 +1404,24 @@
12991404
"max":1000,
13001405
"min":1
13011406
},
1407+
"Metric":{
1408+
"type":"string",
1409+
"enum":[
1410+
"BlendedCost",
1411+
"UnblendedCost",
1412+
"AmortizedCost",
1413+
"NetUnblendedCost",
1414+
"NetAmortizedCost",
1415+
"UsageQuantity",
1416+
"NormalizedUsageAmount",
1417+
"Hours"
1418+
]
1419+
},
1420+
"Metrics":{
1421+
"type":"list",
1422+
"member":{"shape":"Metric"},
1423+
"max":1
1424+
},
13021425
"NotFoundException":{
13031426
"type":"structure",
13041427
"members":{
@@ -1524,6 +1647,12 @@
15241647
"EMAIL"
15251648
]
15261649
},
1650+
"TagKey":{
1651+
"type":"string",
1652+
"max":1024,
1653+
"min":0,
1654+
"pattern":"[\\S\\s]*"
1655+
},
15271656
"TagResourceRequest":{
15281657
"type":"structure",
15291658
"required":[
@@ -1540,6 +1669,14 @@
15401669
"members":{
15411670
}
15421671
},
1672+
"TagValues":{
1673+
"type":"structure",
1674+
"members":{
1675+
"Key":{"shape":"TagKey"},
1676+
"Values":{"shape":"Values"},
1677+
"MatchOptions":{"shape":"MatchOptions"}
1678+
}
1679+
},
15431680
"TargetId":{
15441681
"type":"string",
15451682
"max":68,
@@ -1708,6 +1845,17 @@
17081845
"max":100,
17091846
"min":1
17101847
},
1848+
"Value":{
1849+
"type":"string",
1850+
"max":1024,
1851+
"min":0,
1852+
"pattern":"[\\S\\s]*"
1853+
},
1854+
"Values":{
1855+
"type":"list",
1856+
"member":{"shape":"Value"},
1857+
"min":1
1858+
},
17111859
"errorMessage":{"type":"string"}
17121860
}
17131861
}

0 commit comments

Comments
 (0)