aws-sdk-costexplorer 1.55.0 → 1.56.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8ddcbfcf351adf9c4c5b13e0b62e3fff3b71543a1a97774f8f8199954319646c
4
- data.tar.gz: 248b0bf1505f8715185c88ae65cc13453dc4c757bdafee566eeca329ed7438ce
3
+ metadata.gz: a9ec1577af523ee847ffeb7b718636c0cb2b8977a4bcc13f60ee60fd4b32ddae
4
+ data.tar.gz: b0b4af03e6d30209dbfd0d914932f4b13b5155ffdc996468dbab9057b2007b1d
5
5
  SHA512:
6
- metadata.gz: fa2fc50f1aea036e02324f1eb5bc6915fe646ce39a0a71212781797987c06df9b8f60fa3448c3a9e32f6a194a8aa3efcdfe29c398a44096560b430566b35fa8a
7
- data.tar.gz: 8e18b95afce70c86a416d086053eada9187f1c206f8769a3db903f465d43892796eb7fe15ac8e56a75af4fa1bb7eecf5dc476011ff2cd585611b701af139183f
6
+ metadata.gz: 0ae7babeab7c633991bc504377ac6eeedea381111151fd5dc7041529e48c7b0b39dac5fdf0d3d83b4cc7493e9db01613870de9e9e131dc24bb0327c23b6594bf
7
+ data.tar.gz: 25538d8345f3aeb016282dbb6ae5b47ee4452b5eb3877631b7c67ca2e81f72e7ccde3a94f89f09ec3457641ca20b2b365b3619644ab7adb047bb38fee71f7213
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-costexplorer/customizations'
48
48
  # @!group service
49
49
  module Aws::CostExplorer
50
50
 
51
- GEM_VERSION = '1.55.0'
51
+ GEM_VERSION = '1.56.0'
52
52
 
53
53
  end
@@ -373,19 +373,19 @@ module Aws::CostExplorer
373
373
  # # recursive Expression
374
374
  # },
375
375
  # dimensions: {
376
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
376
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
377
377
  # values: ["Value"],
378
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
378
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
379
379
  # },
380
380
  # tags: {
381
381
  # key: "TagKey",
382
382
  # values: ["Value"],
383
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
383
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
384
384
  # },
385
385
  # cost_categories: {
386
386
  # key: "CostCategoryName",
387
387
  # values: ["Value"],
388
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
388
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
389
389
  # },
390
390
  # },
391
391
  # dimensional_value_count: 1,
@@ -494,19 +494,19 @@ module Aws::CostExplorer
494
494
  # # recursive Expression
495
495
  # },
496
496
  # dimensions: {
497
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
497
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
498
498
  # values: ["Value"],
499
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
499
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
500
500
  # },
501
501
  # tags: {
502
502
  # key: "TagKey",
503
503
  # values: ["Value"],
504
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
504
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
505
505
  # },
506
506
  # cost_categories: {
507
507
  # key: "CostCategoryName",
508
508
  # values: ["Value"],
509
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
509
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
510
510
  # },
511
511
  # },
512
512
  # },
@@ -644,21 +644,21 @@ module Aws::CostExplorer
644
644
  # resp.cost_category.rules[0].rule.and #=> Array
645
645
  # resp.cost_category.rules[0].rule.and[0] #=> Types::Expression
646
646
  # resp.cost_category.rules[0].rule.not #=> Types::Expression
647
- # resp.cost_category.rules[0].rule.dimensions.key #=> String, one of "AZ", "INSTANCE_TYPE", "LINKED_ACCOUNT", "LINKED_ACCOUNT_NAME", "OPERATION", "PURCHASE_TYPE", "REGION", "SERVICE", "SERVICE_CODE", "USAGE_TYPE", "USAGE_TYPE_GROUP", "RECORD_TYPE", "OPERATING_SYSTEM", "TENANCY", "SCOPE", "PLATFORM", "SUBSCRIPTION_ID", "LEGAL_ENTITY_NAME", "DEPLOYMENT_OPTION", "DATABASE_ENGINE", "CACHE_ENGINE", "INSTANCE_TYPE_FAMILY", "BILLING_ENTITY", "RESERVATION_ID", "RESOURCE_ID", "RIGHTSIZING_TYPE", "SAVINGS_PLANS_TYPE", "SAVINGS_PLAN_ARN", "PAYMENT_OPTION"
647
+ # resp.cost_category.rules[0].rule.dimensions.key #=> String, one of "AZ", "INSTANCE_TYPE", "LINKED_ACCOUNT", "LINKED_ACCOUNT_NAME", "OPERATION", "PURCHASE_TYPE", "REGION", "SERVICE", "SERVICE_CODE", "USAGE_TYPE", "USAGE_TYPE_GROUP", "RECORD_TYPE", "OPERATING_SYSTEM", "TENANCY", "SCOPE", "PLATFORM", "SUBSCRIPTION_ID", "LEGAL_ENTITY_NAME", "DEPLOYMENT_OPTION", "DATABASE_ENGINE", "CACHE_ENGINE", "INSTANCE_TYPE_FAMILY", "BILLING_ENTITY", "RESERVATION_ID", "RESOURCE_ID", "RIGHTSIZING_TYPE", "SAVINGS_PLANS_TYPE", "SAVINGS_PLAN_ARN", "PAYMENT_OPTION", "AGREEMENT_END_DATE_TIME_AFTER", "AGREEMENT_END_DATE_TIME_BEFORE"
648
648
  # resp.cost_category.rules[0].rule.dimensions.values #=> Array
649
649
  # resp.cost_category.rules[0].rule.dimensions.values[0] #=> String
650
650
  # resp.cost_category.rules[0].rule.dimensions.match_options #=> Array
651
- # resp.cost_category.rules[0].rule.dimensions.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
651
+ # resp.cost_category.rules[0].rule.dimensions.match_options[0] #=> String, one of "EQUALS", "ABSENT", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
652
652
  # resp.cost_category.rules[0].rule.tags.key #=> String
653
653
  # resp.cost_category.rules[0].rule.tags.values #=> Array
654
654
  # resp.cost_category.rules[0].rule.tags.values[0] #=> String
655
655
  # resp.cost_category.rules[0].rule.tags.match_options #=> Array
656
- # resp.cost_category.rules[0].rule.tags.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
656
+ # resp.cost_category.rules[0].rule.tags.match_options[0] #=> String, one of "EQUALS", "ABSENT", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
657
657
  # resp.cost_category.rules[0].rule.cost_categories.key #=> String
658
658
  # resp.cost_category.rules[0].rule.cost_categories.values #=> Array
659
659
  # resp.cost_category.rules[0].rule.cost_categories.values[0] #=> String
660
660
  # resp.cost_category.rules[0].rule.cost_categories.match_options #=> Array
661
- # resp.cost_category.rules[0].rule.cost_categories.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
661
+ # resp.cost_category.rules[0].rule.cost_categories.match_options[0] #=> String, one of "EQUALS", "ABSENT", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
662
662
  # resp.cost_category.processing_status #=> Array
663
663
  # resp.cost_category.processing_status[0].component #=> String, one of "COST_EXPLORER"
664
664
  # resp.cost_category.processing_status[0].status #=> String, one of "PROCESSING", "APPLIED"
@@ -795,21 +795,21 @@ module Aws::CostExplorer
795
795
  # resp.anomaly_monitors[0].monitor_specification.and #=> Array
796
796
  # resp.anomaly_monitors[0].monitor_specification.and[0] #=> Types::Expression
797
797
  # resp.anomaly_monitors[0].monitor_specification.not #=> Types::Expression
798
- # resp.anomaly_monitors[0].monitor_specification.dimensions.key #=> String, one of "AZ", "INSTANCE_TYPE", "LINKED_ACCOUNT", "LINKED_ACCOUNT_NAME", "OPERATION", "PURCHASE_TYPE", "REGION", "SERVICE", "SERVICE_CODE", "USAGE_TYPE", "USAGE_TYPE_GROUP", "RECORD_TYPE", "OPERATING_SYSTEM", "TENANCY", "SCOPE", "PLATFORM", "SUBSCRIPTION_ID", "LEGAL_ENTITY_NAME", "DEPLOYMENT_OPTION", "DATABASE_ENGINE", "CACHE_ENGINE", "INSTANCE_TYPE_FAMILY", "BILLING_ENTITY", "RESERVATION_ID", "RESOURCE_ID", "RIGHTSIZING_TYPE", "SAVINGS_PLANS_TYPE", "SAVINGS_PLAN_ARN", "PAYMENT_OPTION"
798
+ # resp.anomaly_monitors[0].monitor_specification.dimensions.key #=> String, one of "AZ", "INSTANCE_TYPE", "LINKED_ACCOUNT", "LINKED_ACCOUNT_NAME", "OPERATION", "PURCHASE_TYPE", "REGION", "SERVICE", "SERVICE_CODE", "USAGE_TYPE", "USAGE_TYPE_GROUP", "RECORD_TYPE", "OPERATING_SYSTEM", "TENANCY", "SCOPE", "PLATFORM", "SUBSCRIPTION_ID", "LEGAL_ENTITY_NAME", "DEPLOYMENT_OPTION", "DATABASE_ENGINE", "CACHE_ENGINE", "INSTANCE_TYPE_FAMILY", "BILLING_ENTITY", "RESERVATION_ID", "RESOURCE_ID", "RIGHTSIZING_TYPE", "SAVINGS_PLANS_TYPE", "SAVINGS_PLAN_ARN", "PAYMENT_OPTION", "AGREEMENT_END_DATE_TIME_AFTER", "AGREEMENT_END_DATE_TIME_BEFORE"
799
799
  # resp.anomaly_monitors[0].monitor_specification.dimensions.values #=> Array
800
800
  # resp.anomaly_monitors[0].monitor_specification.dimensions.values[0] #=> String
801
801
  # resp.anomaly_monitors[0].monitor_specification.dimensions.match_options #=> Array
802
- # resp.anomaly_monitors[0].monitor_specification.dimensions.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
802
+ # resp.anomaly_monitors[0].monitor_specification.dimensions.match_options[0] #=> String, one of "EQUALS", "ABSENT", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
803
803
  # resp.anomaly_monitors[0].monitor_specification.tags.key #=> String
804
804
  # resp.anomaly_monitors[0].monitor_specification.tags.values #=> Array
805
805
  # resp.anomaly_monitors[0].monitor_specification.tags.values[0] #=> String
806
806
  # resp.anomaly_monitors[0].monitor_specification.tags.match_options #=> Array
807
- # resp.anomaly_monitors[0].monitor_specification.tags.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
807
+ # resp.anomaly_monitors[0].monitor_specification.tags.match_options[0] #=> String, one of "EQUALS", "ABSENT", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
808
808
  # resp.anomaly_monitors[0].monitor_specification.cost_categories.key #=> String
809
809
  # resp.anomaly_monitors[0].monitor_specification.cost_categories.values #=> Array
810
810
  # resp.anomaly_monitors[0].monitor_specification.cost_categories.values[0] #=> String
811
811
  # resp.anomaly_monitors[0].monitor_specification.cost_categories.match_options #=> Array
812
- # resp.anomaly_monitors[0].monitor_specification.cost_categories.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
812
+ # resp.anomaly_monitors[0].monitor_specification.cost_categories.match_options[0] #=> String, one of "EQUALS", "ABSENT", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
813
813
  # resp.anomaly_monitors[0].dimensional_value_count #=> Integer
814
814
  # resp.next_page_token #=> String
815
815
  #
@@ -965,6 +965,7 @@ module Aws::CostExplorer
965
965
  # * {Types::GetCostAndUsageResponse#next_page_token #next_page_token} => String
966
966
  # * {Types::GetCostAndUsageResponse#group_definitions #group_definitions} => Array<Types::GroupDefinition>
967
967
  # * {Types::GetCostAndUsageResponse#results_by_time #results_by_time} => Array<Types::ResultByTime>
968
+ # * {Types::GetCostAndUsageResponse#dimension_value_attributes #dimension_value_attributes} => Array<Types::DimensionValuesWithAttributes>
968
969
  #
969
970
  # @example Request syntax with placeholder values
970
971
  #
@@ -989,19 +990,19 @@ module Aws::CostExplorer
989
990
  # # recursive Expression
990
991
  # },
991
992
  # dimensions: {
992
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
993
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
993
994
  # values: ["Value"],
994
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
995
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
995
996
  # },
996
997
  # tags: {
997
998
  # key: "TagKey",
998
999
  # values: ["Value"],
999
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1000
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1000
1001
  # },
1001
1002
  # cost_categories: {
1002
1003
  # key: "CostCategoryName",
1003
1004
  # values: ["Value"],
1004
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1005
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1005
1006
  # },
1006
1007
  # },
1007
1008
  # metrics: ["MetricName"], # required
@@ -1033,6 +1034,10 @@ module Aws::CostExplorer
1033
1034
  # resp.results_by_time[0].groups[0].metrics["MetricName"].amount #=> String
1034
1035
  # resp.results_by_time[0].groups[0].metrics["MetricName"].unit #=> String
1035
1036
  # resp.results_by_time[0].estimated #=> Boolean
1037
+ # resp.dimension_value_attributes #=> Array
1038
+ # resp.dimension_value_attributes[0].value #=> String
1039
+ # resp.dimension_value_attributes[0].attributes #=> Hash
1040
+ # resp.dimension_value_attributes[0].attributes["AttributeType"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1036
1041
  #
1037
1042
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostAndUsage AWS API Documentation
1038
1043
  #
@@ -1133,6 +1138,7 @@ module Aws::CostExplorer
1133
1138
  # * {Types::GetCostAndUsageWithResourcesResponse#next_page_token #next_page_token} => String
1134
1139
  # * {Types::GetCostAndUsageWithResourcesResponse#group_definitions #group_definitions} => Array&lt;Types::GroupDefinition&gt;
1135
1140
  # * {Types::GetCostAndUsageWithResourcesResponse#results_by_time #results_by_time} => Array&lt;Types::ResultByTime&gt;
1141
+ # * {Types::GetCostAndUsageWithResourcesResponse#dimension_value_attributes #dimension_value_attributes} => Array&lt;Types::DimensionValuesWithAttributes&gt;
1136
1142
  #
1137
1143
  # @example Request syntax with placeholder values
1138
1144
  #
@@ -1157,19 +1163,19 @@ module Aws::CostExplorer
1157
1163
  # # recursive Expression
1158
1164
  # },
1159
1165
  # dimensions: {
1160
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1166
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
1161
1167
  # values: ["Value"],
1162
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1168
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1163
1169
  # },
1164
1170
  # tags: {
1165
1171
  # key: "TagKey",
1166
1172
  # values: ["Value"],
1167
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1173
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1168
1174
  # },
1169
1175
  # cost_categories: {
1170
1176
  # key: "CostCategoryName",
1171
1177
  # values: ["Value"],
1172
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1178
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1173
1179
  # },
1174
1180
  # },
1175
1181
  # metrics: ["MetricName"],
@@ -1201,6 +1207,10 @@ module Aws::CostExplorer
1201
1207
  # resp.results_by_time[0].groups[0].metrics["MetricName"].amount #=> String
1202
1208
  # resp.results_by_time[0].groups[0].metrics["MetricName"].unit #=> String
1203
1209
  # resp.results_by_time[0].estimated #=> Boolean
1210
+ # resp.dimension_value_attributes #=> Array
1211
+ # resp.dimension_value_attributes[0].value #=> String
1212
+ # resp.dimension_value_attributes[0].attributes #=> Hash
1213
+ # resp.dimension_value_attributes[0].attributes["AttributeType"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1204
1214
  #
1205
1215
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostAndUsageWithResources AWS API Documentation
1206
1216
  #
@@ -1211,6 +1221,195 @@ module Aws::CostExplorer
1211
1221
  req.send_request(options)
1212
1222
  end
1213
1223
 
1224
+ # Retrieves an array of Cost Category names and values incurred cost.
1225
+ #
1226
+ # <note markdown="1"> If some Cost Category names and values are not associated with any
1227
+ # cost, they will not be returned by this API.
1228
+ #
1229
+ # </note>
1230
+ #
1231
+ # @option params [String] :search_string
1232
+ # The value that you want to search the filter values for.
1233
+ #
1234
+ # If you do not specify a `CostCategoryName`, `SearchString` will be
1235
+ # used to filter Cost Category names that match the `SearchString`
1236
+ # pattern. If you do specifiy a `CostCategoryName`, `SearchString` will
1237
+ # be used to filter Cost Category values that match the `SearchString`
1238
+ # pattern.
1239
+ #
1240
+ # @option params [required, Types::DateInterval] :time_period
1241
+ # The time period of the request.
1242
+ #
1243
+ # @option params [String] :cost_category_name
1244
+ # The unique name of the Cost Category.
1245
+ #
1246
+ # @option params [Types::Expression] :filter
1247
+ # Use `Expression` to filter by cost or by usage. There are two
1248
+ # patterns:
1249
+ #
1250
+ # * Simple dimension values - You can set the dimension name and values
1251
+ # for the filters that you plan to use. For example, you can filter
1252
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
1253
+ # `GetRightsizingRecommendation`, the Region is a full name (for
1254
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
1255
+ # looks like:
1256
+ #
1257
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
1258
+ # “us-west-1” ] \} \}`
1259
+ #
1260
+ # The list of dimension values are OR'd together to retrieve cost or
1261
+ # usage data. You can create `Expression` and `DimensionValues`
1262
+ # objects using either `with*` methods or `set*` methods in multiple
1263
+ # lines.
1264
+ #
1265
+ # * Compound dimension values with logical operations - You can use
1266
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
1267
+ # to create a list of one or more `Expression` objects. This allows
1268
+ # you to filter on more advanced options. For example, you can filter
1269
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
1270
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
1271
+ # looks like this:
1272
+ #
1273
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
1274
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
1275
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
1276
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
1277
+ #
1278
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
1279
+ # returns an error if more than one is specified. The following
1280
+ # example shows an `Expression` object that creates an error.
1281
+ #
1282
+ # </note>
1283
+ #
1284
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
1285
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
1286
+ #
1287
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
1288
+ # NOT is not supported. OR is not supported between different
1289
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
1290
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
1291
+ # `RIGHTSIZING_TYPE`.
1292
+ #
1293
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
1294
+ # supported. AND and OR are not supported. Dimensions are limited to
1295
+ # `LINKED_ACCOUNT`.
1296
+ #
1297
+ # </note>
1298
+ #
1299
+ # @option params [Array<Types::SortDefinition>] :sort_by
1300
+ # The value by which you want to sort the data.
1301
+ #
1302
+ # The key represents cost and usage metrics. The following values are
1303
+ # supported:
1304
+ #
1305
+ # * `BlendedCost`
1306
+ #
1307
+ # * `UnblendedCost`
1308
+ #
1309
+ # * `AmortizedCost`
1310
+ #
1311
+ # * `NetAmortizedCost`
1312
+ #
1313
+ # * `NetUnblendedCost`
1314
+ #
1315
+ # * `UsageQuantity`
1316
+ #
1317
+ # * `NormalizedUsageAmount`
1318
+ #
1319
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
1320
+ #
1321
+ # When using `SortBy`, `NextPageToken` and `SearchString` are not
1322
+ # supported.
1323
+ #
1324
+ # @option params [Integer] :max_results
1325
+ # This field is only used when `SortBy` is provided in the request.
1326
+ #
1327
+ # The maximum number of objects that to be returned for this request. If
1328
+ # `MaxResults` is not specified with `SortBy`, the request will return
1329
+ # 1000 results as the default value for this parameter.
1330
+ #
1331
+ # @option params [String] :next_page_token
1332
+ # If the number of objects that are still available for retrieval
1333
+ # exceeds the limit, AWS returns a NextPageToken value in the response.
1334
+ # To retrieve the next batch of objects, provide the NextPageToken from
1335
+ # the prior call in your next request.
1336
+ #
1337
+ # @return [Types::GetCostCategoriesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1338
+ #
1339
+ # * {Types::GetCostCategoriesResponse#next_page_token #next_page_token} => String
1340
+ # * {Types::GetCostCategoriesResponse#cost_category_names #cost_category_names} => Array&lt;String&gt;
1341
+ # * {Types::GetCostCategoriesResponse#cost_category_values #cost_category_values} => Array&lt;String&gt;
1342
+ # * {Types::GetCostCategoriesResponse#return_size #return_size} => Integer
1343
+ # * {Types::GetCostCategoriesResponse#total_size #total_size} => Integer
1344
+ #
1345
+ # @example Request syntax with placeholder values
1346
+ #
1347
+ # resp = client.get_cost_categories({
1348
+ # search_string: "SearchString",
1349
+ # time_period: { # required
1350
+ # start: "YearMonthDay", # required
1351
+ # end: "YearMonthDay", # required
1352
+ # },
1353
+ # cost_category_name: "CostCategoryName",
1354
+ # filter: {
1355
+ # or: [
1356
+ # {
1357
+ # # recursive Expression
1358
+ # },
1359
+ # ],
1360
+ # and: [
1361
+ # {
1362
+ # # recursive Expression
1363
+ # },
1364
+ # ],
1365
+ # not: {
1366
+ # # recursive Expression
1367
+ # },
1368
+ # dimensions: {
1369
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
1370
+ # values: ["Value"],
1371
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1372
+ # },
1373
+ # tags: {
1374
+ # key: "TagKey",
1375
+ # values: ["Value"],
1376
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1377
+ # },
1378
+ # cost_categories: {
1379
+ # key: "CostCategoryName",
1380
+ # values: ["Value"],
1381
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1382
+ # },
1383
+ # },
1384
+ # sort_by: [
1385
+ # {
1386
+ # key: "SortDefinitionKey", # required
1387
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
1388
+ # },
1389
+ # ],
1390
+ # max_results: 1,
1391
+ # next_page_token: "NextPageToken",
1392
+ # })
1393
+ #
1394
+ # @example Response structure
1395
+ #
1396
+ # resp.next_page_token #=> String
1397
+ # resp.cost_category_names #=> Array
1398
+ # resp.cost_category_names[0] #=> String
1399
+ # resp.cost_category_values #=> Array
1400
+ # resp.cost_category_values[0] #=> String
1401
+ # resp.return_size #=> Integer
1402
+ # resp.total_size #=> Integer
1403
+ #
1404
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostCategories AWS API Documentation
1405
+ #
1406
+ # @overload get_cost_categories(params = {})
1407
+ # @param [Hash] params ({})
1408
+ def get_cost_categories(params = {}, options = {})
1409
+ req = build_request(:get_cost_categories, params)
1410
+ req.send_request(options)
1411
+ end
1412
+
1214
1413
  # Retrieves a forecast for how much Amazon Web Services predicts that
1215
1414
  # you will spend over the forecast time period that you select, based on
1216
1415
  # your past costs.
@@ -1289,19 +1488,19 @@ module Aws::CostExplorer
1289
1488
  # # recursive Expression
1290
1489
  # },
1291
1490
  # dimensions: {
1292
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1491
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
1293
1492
  # values: ["Value"],
1294
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1493
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1295
1494
  # },
1296
1495
  # tags: {
1297
1496
  # key: "TagKey",
1298
1497
  # values: ["Value"],
1299
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1498
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1300
1499
  # },
1301
1500
  # cost_categories: {
1302
1501
  # key: "CostCategoryName",
1303
1502
  # values: ["Value"],
1304
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1503
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1305
1504
  # },
1306
1505
  # },
1307
1506
  # prediction_interval_level: 1,
@@ -1455,6 +1654,91 @@ module Aws::CostExplorer
1455
1654
  #
1456
1655
  # * SAVINGS\_PLAN\_ARN - The unique identifier for your Savings Plan
1457
1656
  #
1657
+ # @option params [Types::Expression] :filter
1658
+ # Use `Expression` to filter by cost or by usage. There are two
1659
+ # patterns:
1660
+ #
1661
+ # * Simple dimension values - You can set the dimension name and values
1662
+ # for the filters that you plan to use. For example, you can filter
1663
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
1664
+ # `GetRightsizingRecommendation`, the Region is a full name (for
1665
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
1666
+ # looks like:
1667
+ #
1668
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
1669
+ # “us-west-1” ] \} \}`
1670
+ #
1671
+ # The list of dimension values are OR'd together to retrieve cost or
1672
+ # usage data. You can create `Expression` and `DimensionValues`
1673
+ # objects using either `with*` methods or `set*` methods in multiple
1674
+ # lines.
1675
+ #
1676
+ # * Compound dimension values with logical operations - You can use
1677
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
1678
+ # to create a list of one or more `Expression` objects. This allows
1679
+ # you to filter on more advanced options. For example, you can filter
1680
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
1681
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
1682
+ # looks like this:
1683
+ #
1684
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
1685
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
1686
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
1687
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
1688
+ #
1689
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
1690
+ # returns an error if more than one is specified. The following
1691
+ # example shows an `Expression` object that creates an error.
1692
+ #
1693
+ # </note>
1694
+ #
1695
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
1696
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
1697
+ #
1698
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
1699
+ # NOT is not supported. OR is not supported between different
1700
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
1701
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
1702
+ # `RIGHTSIZING_TYPE`.
1703
+ #
1704
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
1705
+ # supported. AND and OR are not supported. Dimensions are limited to
1706
+ # `LINKED_ACCOUNT`.
1707
+ #
1708
+ # </note>
1709
+ #
1710
+ # @option params [Array<Types::SortDefinition>] :sort_by
1711
+ # The value by which you want to sort the data.
1712
+ #
1713
+ # The key represents cost and usage metrics. The following values are
1714
+ # supported:
1715
+ #
1716
+ # * `BlendedCost`
1717
+ #
1718
+ # * `UnblendedCost`
1719
+ #
1720
+ # * `AmortizedCost`
1721
+ #
1722
+ # * `NetAmortizedCost`
1723
+ #
1724
+ # * `NetUnblendedCost`
1725
+ #
1726
+ # * `UsageQuantity`
1727
+ #
1728
+ # * `NormalizedUsageAmount`
1729
+ #
1730
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
1731
+ #
1732
+ # When you specify a `SortBy` paramater, the context must be
1733
+ # `COST_AND_USAGE`. Further, when using `SortBy`, `NextPageToken` and
1734
+ # `SearchString` are not supported.
1735
+ #
1736
+ # @option params [Integer] :max_results
1737
+ # This field is only used when SortBy is provided in the request. The
1738
+ # maximum number of objects that to be returned for this request. If
1739
+ # MaxResults is not specified with SortBy, the request will return 1000
1740
+ # results as the default value for this parameter.
1741
+ #
1458
1742
  # @option params [String] :next_page_token
1459
1743
  # The token to retrieve the next set of results. AWS provides the token
1460
1744
  # when the response from a previous call has more results than the
@@ -1475,8 +1759,45 @@ module Aws::CostExplorer
1475
1759
  # start: "YearMonthDay", # required
1476
1760
  # end: "YearMonthDay", # required
1477
1761
  # },
1478
- # dimension: "AZ", # required, accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1762
+ # dimension: "AZ", # required, accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
1479
1763
  # context: "COST_AND_USAGE", # accepts COST_AND_USAGE, RESERVATIONS, SAVINGS_PLANS
1764
+ # filter: {
1765
+ # or: [
1766
+ # {
1767
+ # # recursive Expression
1768
+ # },
1769
+ # ],
1770
+ # and: [
1771
+ # {
1772
+ # # recursive Expression
1773
+ # },
1774
+ # ],
1775
+ # not: {
1776
+ # # recursive Expression
1777
+ # },
1778
+ # dimensions: {
1779
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
1780
+ # values: ["Value"],
1781
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1782
+ # },
1783
+ # tags: {
1784
+ # key: "TagKey",
1785
+ # values: ["Value"],
1786
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1787
+ # },
1788
+ # cost_categories: {
1789
+ # key: "CostCategoryName",
1790
+ # values: ["Value"],
1791
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1792
+ # },
1793
+ # },
1794
+ # sort_by: [
1795
+ # {
1796
+ # key: "SortDefinitionKey", # required
1797
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
1798
+ # },
1799
+ # ],
1800
+ # max_results: 1,
1480
1801
  # next_page_token: "NextPageToken",
1481
1802
  # })
1482
1803
  #
@@ -1631,6 +1952,39 @@ module Aws::CostExplorer
1631
1952
  # when the response from a previous call has more results than the
1632
1953
  # maximum page size.
1633
1954
  #
1955
+ # @option params [Types::SortDefinition] :sort_by
1956
+ # The value by which you want to sort the data.
1957
+ #
1958
+ # The following values are supported for `Key`\:
1959
+ #
1960
+ # * `OnDemandCost`
1961
+ #
1962
+ # * `CoverageHoursPercentage`
1963
+ #
1964
+ # * `OnDemandHours`
1965
+ #
1966
+ # * `ReservedHours`
1967
+ #
1968
+ # * `TotalRunningHours`
1969
+ #
1970
+ # * `CoverageNormalizedUnitsPercentage`
1971
+ #
1972
+ # * `OnDemandNormalizedUnits`
1973
+ #
1974
+ # * `ReservedNormalizedUnits`
1975
+ #
1976
+ # * `TotalRunningNormalizedUnits`
1977
+ #
1978
+ # * `Time`
1979
+ #
1980
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
1981
+ #
1982
+ # @option params [Integer] :max_results
1983
+ # The maximum number of objects that you returned for this request. If
1984
+ # more objects are available, in the response, AWS provides a
1985
+ # NextPageToken value that you can use in a subsequent call to get the
1986
+ # next batch of objects.
1987
+ #
1634
1988
  # @return [Types::GetReservationCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1635
1989
  #
1636
1990
  # * {Types::GetReservationCoverageResponse#coverages_by_time #coverages_by_time} => Array&lt;Types::CoverageByTime&gt;
@@ -1666,23 +2020,28 @@ module Aws::CostExplorer
1666
2020
  # # recursive Expression
1667
2021
  # },
1668
2022
  # dimensions: {
1669
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
2023
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
1670
2024
  # values: ["Value"],
1671
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2025
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1672
2026
  # },
1673
2027
  # tags: {
1674
2028
  # key: "TagKey",
1675
2029
  # values: ["Value"],
1676
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2030
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1677
2031
  # },
1678
2032
  # cost_categories: {
1679
2033
  # key: "CostCategoryName",
1680
2034
  # values: ["Value"],
1681
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2035
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1682
2036
  # },
1683
2037
  # },
1684
2038
  # metrics: ["MetricName"],
1685
2039
  # next_page_token: "NextPageToken",
2040
+ # sort_by: {
2041
+ # key: "SortDefinitionKey", # required
2042
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2043
+ # },
2044
+ # max_results: 1,
1686
2045
  # })
1687
2046
  #
1688
2047
  # @example Response structure
@@ -1758,6 +2117,59 @@ module Aws::CostExplorer
1758
2117
  # @option params [required, String] :service
1759
2118
  # The specific service that you want recommendations for.
1760
2119
  #
2120
+ # @option params [Types::Expression] :filter
2121
+ # Use `Expression` to filter by cost or by usage. There are two
2122
+ # patterns:
2123
+ #
2124
+ # * Simple dimension values - You can set the dimension name and values
2125
+ # for the filters that you plan to use. For example, you can filter
2126
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
2127
+ # `GetRightsizingRecommendation`, the Region is a full name (for
2128
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
2129
+ # looks like:
2130
+ #
2131
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
2132
+ # “us-west-1” ] \} \}`
2133
+ #
2134
+ # The list of dimension values are OR'd together to retrieve cost or
2135
+ # usage data. You can create `Expression` and `DimensionValues`
2136
+ # objects using either `with*` methods or `set*` methods in multiple
2137
+ # lines.
2138
+ #
2139
+ # * Compound dimension values with logical operations - You can use
2140
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
2141
+ # to create a list of one or more `Expression` objects. This allows
2142
+ # you to filter on more advanced options. For example, you can filter
2143
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
2144
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
2145
+ # looks like this:
2146
+ #
2147
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
2148
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
2149
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
2150
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
2151
+ #
2152
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
2153
+ # returns an error if more than one is specified. The following
2154
+ # example shows an `Expression` object that creates an error.
2155
+ #
2156
+ # </note>
2157
+ #
2158
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
2159
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
2160
+ #
2161
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
2162
+ # NOT is not supported. OR is not supported between different
2163
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
2164
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
2165
+ # `RIGHTSIZING_TYPE`.
2166
+ #
2167
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
2168
+ # supported. AND and OR are not supported. Dimensions are limited to
2169
+ # `LINKED_ACCOUNT`.
2170
+ #
2171
+ # </note>
2172
+ #
1761
2173
  # @option params [String] :account_scope
1762
2174
  # The account scope that you want your recommendations for. Amazon Web
1763
2175
  # Services calculates recommendations including the management account
@@ -1799,6 +2211,36 @@ module Aws::CostExplorer
1799
2211
  # resp = client.get_reservation_purchase_recommendation({
1800
2212
  # account_id: "GenericString",
1801
2213
  # service: "GenericString", # required
2214
+ # filter: {
2215
+ # or: [
2216
+ # {
2217
+ # # recursive Expression
2218
+ # },
2219
+ # ],
2220
+ # and: [
2221
+ # {
2222
+ # # recursive Expression
2223
+ # },
2224
+ # ],
2225
+ # not: {
2226
+ # # recursive Expression
2227
+ # },
2228
+ # dimensions: {
2229
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
2230
+ # values: ["Value"],
2231
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2232
+ # },
2233
+ # tags: {
2234
+ # key: "TagKey",
2235
+ # values: ["Value"],
2236
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2237
+ # },
2238
+ # cost_categories: {
2239
+ # key: "CostCategoryName",
2240
+ # values: ["Value"],
2241
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2242
+ # },
2243
+ # },
1802
2244
  # account_scope: "PAYER", # accepts PAYER, LINKED
1803
2245
  # lookback_period_in_days: "SEVEN_DAYS", # accepts SEVEN_DAYS, THIRTY_DAYS, SIXTY_DAYS
1804
2246
  # term_in_years: "ONE_YEAR", # accepts ONE_YEAR, THREE_YEARS
@@ -1948,11 +2390,58 @@ module Aws::CostExplorer
1948
2390
  #
1949
2391
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
1950
2392
  #
2393
+ # @option params [Types::SortDefinition] :sort_by
2394
+ # The value by which you want to sort the data.
2395
+ #
2396
+ # The following values are supported for `Key`\:
2397
+ #
2398
+ # * `UtilizationPercentage`
2399
+ #
2400
+ # * `UtilizationPercentageInUnits`
2401
+ #
2402
+ # * `PurchasedHours`
2403
+ #
2404
+ # * `PurchasedUnits`
2405
+ #
2406
+ # * `TotalActualHours`
2407
+ #
2408
+ # * `TotalActualUnits`
2409
+ #
2410
+ # * `UnusedHours`
2411
+ #
2412
+ # * `UnusedUnits`
2413
+ #
2414
+ # * `OnDemandCostOfRIHoursUsed`
2415
+ #
2416
+ # * `NetRISavings`
2417
+ #
2418
+ # * `TotalPotentialRISavings`
2419
+ #
2420
+ # * `AmortizedUpfrontFee`
2421
+ #
2422
+ # * `AmortizedRecurringFee`
2423
+ #
2424
+ # * `TotalAmortizedFee`
2425
+ #
2426
+ # * `RICostForUnusedHours`
2427
+ #
2428
+ # * `RealizedSavings`
2429
+ #
2430
+ # * `UnrealizedSavings`
2431
+ #
2432
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
2433
+ #
1951
2434
  # @option params [String] :next_page_token
1952
2435
  # The token to retrieve the next set of results. AWS provides the token
1953
2436
  # when the response from a previous call has more results than the
1954
2437
  # maximum page size.
1955
2438
  #
2439
+ # @option params [Integer] :max_results
2440
+ # The maximum number of objects that you returned for this request. If
2441
+ # more objects are available, in the response, AWS provides a
2442
+ # NextPageToken value that you can use in a subsequent call to get the
2443
+ # next batch of objects.
2444
+ #
1956
2445
  # @return [Types::GetReservationUtilizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1957
2446
  #
1958
2447
  # * {Types::GetReservationUtilizationResponse#utilizations_by_time #utilizations_by_time} => Array&lt;Types::UtilizationByTime&gt;
@@ -1988,22 +2477,27 @@ module Aws::CostExplorer
1988
2477
  # # recursive Expression
1989
2478
  # },
1990
2479
  # dimensions: {
1991
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
2480
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
1992
2481
  # values: ["Value"],
1993
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2482
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1994
2483
  # },
1995
2484
  # tags: {
1996
2485
  # key: "TagKey",
1997
2486
  # values: ["Value"],
1998
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2487
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1999
2488
  # },
2000
2489
  # cost_categories: {
2001
2490
  # key: "CostCategoryName",
2002
2491
  # values: ["Value"],
2003
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2492
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2004
2493
  # },
2005
2494
  # },
2495
+ # sort_by: {
2496
+ # key: "SortDefinitionKey", # required
2497
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2498
+ # },
2006
2499
  # next_page_token: "NextPageToken",
2500
+ # max_results: 1,
2007
2501
  # })
2008
2502
  #
2009
2503
  # @example Response structure
@@ -2030,6 +2524,9 @@ module Aws::CostExplorer
2030
2524
  # resp.utilizations_by_time[0].groups[0].utilization.amortized_upfront_fee #=> String
2031
2525
  # resp.utilizations_by_time[0].groups[0].utilization.amortized_recurring_fee #=> String
2032
2526
  # resp.utilizations_by_time[0].groups[0].utilization.total_amortized_fee #=> String
2527
+ # resp.utilizations_by_time[0].groups[0].utilization.ri_cost_for_unused_hours #=> String
2528
+ # resp.utilizations_by_time[0].groups[0].utilization.realized_savings #=> String
2529
+ # resp.utilizations_by_time[0].groups[0].utilization.unrealized_savings #=> String
2033
2530
  # resp.utilizations_by_time[0].total.utilization_percentage #=> String
2034
2531
  # resp.utilizations_by_time[0].total.utilization_percentage_in_units #=> String
2035
2532
  # resp.utilizations_by_time[0].total.purchased_hours #=> String
@@ -2044,6 +2541,9 @@ module Aws::CostExplorer
2044
2541
  # resp.utilizations_by_time[0].total.amortized_upfront_fee #=> String
2045
2542
  # resp.utilizations_by_time[0].total.amortized_recurring_fee #=> String
2046
2543
  # resp.utilizations_by_time[0].total.total_amortized_fee #=> String
2544
+ # resp.utilizations_by_time[0].total.ri_cost_for_unused_hours #=> String
2545
+ # resp.utilizations_by_time[0].total.realized_savings #=> String
2546
+ # resp.utilizations_by_time[0].total.unrealized_savings #=> String
2047
2547
  # resp.total.utilization_percentage #=> String
2048
2548
  # resp.total.utilization_percentage_in_units #=> String
2049
2549
  # resp.total.purchased_hours #=> String
@@ -2058,6 +2558,9 @@ module Aws::CostExplorer
2058
2558
  # resp.total.amortized_upfront_fee #=> String
2059
2559
  # resp.total.amortized_recurring_fee #=> String
2060
2560
  # resp.total.total_amortized_fee #=> String
2561
+ # resp.total.ri_cost_for_unused_hours #=> String
2562
+ # resp.total.realized_savings #=> String
2563
+ # resp.total.unrealized_savings #=> String
2061
2564
  # resp.next_page_token #=> String
2062
2565
  #
2063
2566
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetReservationUtilization AWS API Documentation
@@ -2123,10 +2626,15 @@ module Aws::CostExplorer
2123
2626
  # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
2124
2627
  # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
2125
2628
  #
2126
- # <note markdown="1"> For `GetRightsizingRecommendation` action, a combination of OR and NOT
2127
- # is not supported. OR is not supported between different dimensions, or
2128
- # dimensions and tags. NOT operators aren't supported. Dimensions are
2129
- # also limited to `LINKED_ACCOUNT`, `REGION`, or `RIGHTSIZING_TYPE`.
2629
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
2630
+ # NOT is not supported. OR is not supported between different
2631
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
2632
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
2633
+ # `RIGHTSIZING_TYPE`.
2634
+ #
2635
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
2636
+ # supported. AND and OR are not supported. Dimensions are limited to
2637
+ # `LINKED_ACCOUNT`.
2130
2638
  #
2131
2639
  # </note>
2132
2640
  #
@@ -2176,19 +2684,19 @@ module Aws::CostExplorer
2176
2684
  # # recursive Expression
2177
2685
  # },
2178
2686
  # dimensions: {
2179
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
2687
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
2180
2688
  # values: ["Value"],
2181
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2689
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2182
2690
  # },
2183
2691
  # tags: {
2184
2692
  # key: "TagKey",
2185
2693
  # values: ["Value"],
2186
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2694
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2187
2695
  # },
2188
2696
  # cost_categories: {
2189
2697
  # key: "CostCategoryName",
2190
2698
  # values: ["Value"],
2191
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2699
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2192
2700
  # },
2193
2701
  # },
2194
2702
  # configuration: {
@@ -2219,7 +2727,7 @@ module Aws::CostExplorer
2219
2727
  # resp.rightsizing_recommendations[0].current_instance.tags[0].values #=> Array
2220
2728
  # resp.rightsizing_recommendations[0].current_instance.tags[0].values[0] #=> String
2221
2729
  # resp.rightsizing_recommendations[0].current_instance.tags[0].match_options #=> Array
2222
- # resp.rightsizing_recommendations[0].current_instance.tags[0].match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
2730
+ # resp.rightsizing_recommendations[0].current_instance.tags[0].match_options[0] #=> String, one of "EQUALS", "ABSENT", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
2223
2731
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.hourly_on_demand_rate #=> String
2224
2732
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.instance_type #=> String
2225
2733
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.platform #=> String
@@ -2349,6 +2857,27 @@ module Aws::CostExplorer
2349
2857
  # The number of items to be returned in a response. The default is `20`,
2350
2858
  # with a minimum value of `1`.
2351
2859
  #
2860
+ # @option params [Types::SortDefinition] :sort_by
2861
+ # The value by which you want to sort the data.
2862
+ #
2863
+ # The following values are supported for `Key`\:
2864
+ #
2865
+ # * `SpendCoveredBySavingsPlan`
2866
+ #
2867
+ # * `OnDemandCost`
2868
+ #
2869
+ # * `CoveragePercentage`
2870
+ #
2871
+ # * `TotalCost`
2872
+ #
2873
+ # * `InstanceFamily`
2874
+ #
2875
+ # * `Region`
2876
+ #
2877
+ # * `Service`
2878
+ #
2879
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
2880
+ #
2352
2881
  # @return [Types::GetSavingsPlansCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2353
2882
  #
2354
2883
  # * {Types::GetSavingsPlansCoverageResponse#savings_plans_coverages #savings_plans_coverages} => Array&lt;Types::SavingsPlansCoverage&gt;
@@ -2385,24 +2914,28 @@ module Aws::CostExplorer
2385
2914
  # # recursive Expression
2386
2915
  # },
2387
2916
  # dimensions: {
2388
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
2917
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
2389
2918
  # values: ["Value"],
2390
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2919
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2391
2920
  # },
2392
2921
  # tags: {
2393
2922
  # key: "TagKey",
2394
2923
  # values: ["Value"],
2395
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2924
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2396
2925
  # },
2397
2926
  # cost_categories: {
2398
2927
  # key: "CostCategoryName",
2399
2928
  # values: ["Value"],
2400
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2929
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2401
2930
  # },
2402
2931
  # },
2403
2932
  # metrics: ["MetricName"],
2404
2933
  # next_token: "NextPageToken",
2405
2934
  # max_results: 1,
2935
+ # sort_by: {
2936
+ # key: "SortDefinitionKey", # required
2937
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2938
+ # },
2406
2939
  # })
2407
2940
  #
2408
2941
  # @example Response structure
@@ -2504,19 +3037,19 @@ module Aws::CostExplorer
2504
3037
  # # recursive Expression
2505
3038
  # },
2506
3039
  # dimensions: {
2507
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
3040
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
2508
3041
  # values: ["Value"],
2509
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3042
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2510
3043
  # },
2511
3044
  # tags: {
2512
3045
  # key: "TagKey",
2513
3046
  # values: ["Value"],
2514
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3047
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2515
3048
  # },
2516
3049
  # cost_categories: {
2517
3050
  # key: "CostCategoryName",
2518
3051
  # values: ["Value"],
2519
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3052
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2520
3053
  # },
2521
3054
  # },
2522
3055
  # })
@@ -2620,6 +3153,23 @@ module Aws::CostExplorer
2620
3153
  #
2621
3154
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
2622
3155
  #
3156
+ # @option params [Types::SortDefinition] :sort_by
3157
+ # The value by which you want to sort the data.
3158
+ #
3159
+ # The following values are supported for `Key`\:
3160
+ #
3161
+ # * `UtilizationPercentage`
3162
+ #
3163
+ # * `TotalCommitment`
3164
+ #
3165
+ # * `UsedCommitment`
3166
+ #
3167
+ # * `UnusedCommitment`
3168
+ #
3169
+ # * `NetSavings`
3170
+ #
3171
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
3172
+ #
2623
3173
  # @return [Types::GetSavingsPlansUtilizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2624
3174
  #
2625
3175
  # * {Types::GetSavingsPlansUtilizationResponse#savings_plans_utilizations_by_time #savings_plans_utilizations_by_time} => Array&lt;Types::SavingsPlansUtilizationByTime&gt;
@@ -2648,21 +3198,25 @@ module Aws::CostExplorer
2648
3198
  # # recursive Expression
2649
3199
  # },
2650
3200
  # dimensions: {
2651
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
3201
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
2652
3202
  # values: ["Value"],
2653
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3203
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2654
3204
  # },
2655
3205
  # tags: {
2656
3206
  # key: "TagKey",
2657
3207
  # values: ["Value"],
2658
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3208
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2659
3209
  # },
2660
3210
  # cost_categories: {
2661
3211
  # key: "CostCategoryName",
2662
3212
  # values: ["Value"],
2663
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3213
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2664
3214
  # },
2665
3215
  # },
3216
+ # sort_by: {
3217
+ # key: "SortDefinitionKey", # required
3218
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3219
+ # },
2666
3220
  # })
2667
3221
  #
2668
3222
  # @example Response structure
@@ -2740,6 +3294,9 @@ module Aws::CostExplorer
2740
3294
  #
2741
3295
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
2742
3296
  #
3297
+ # @option params [Array<String>] :data_type
3298
+ # The data type.
3299
+ #
2743
3300
  # @option params [String] :next_token
2744
3301
  # The token to retrieve the next set of results. Amazon Web Services
2745
3302
  # provides the token when the response from a previous call has more
@@ -2749,6 +3306,27 @@ module Aws::CostExplorer
2749
3306
  # The number of items to be returned in a response. The default is `20`,
2750
3307
  # with a minimum value of `1`.
2751
3308
  #
3309
+ # @option params [Types::SortDefinition] :sort_by
3310
+ # The value by which you want to sort the data.
3311
+ #
3312
+ # The following values are supported for `Key`\:
3313
+ #
3314
+ # * `UtilizationPercentage`
3315
+ #
3316
+ # * `TotalCommitment`
3317
+ #
3318
+ # * `UsedCommitment`
3319
+ #
3320
+ # * `UnusedCommitment`
3321
+ #
3322
+ # * `NetSavings`
3323
+ #
3324
+ # * `AmortizedRecurringCommitment`
3325
+ #
3326
+ # * `AmortizedUpfrontCommitment`
3327
+ #
3328
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
3329
+ #
2752
3330
  # @return [Types::GetSavingsPlansUtilizationDetailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2753
3331
  #
2754
3332
  # * {Types::GetSavingsPlansUtilizationDetailsResponse#savings_plans_utilization_details #savings_plans_utilization_details} => Array&lt;Types::SavingsPlansUtilizationDetail&gt;
@@ -2780,23 +3358,28 @@ module Aws::CostExplorer
2780
3358
  # # recursive Expression
2781
3359
  # },
2782
3360
  # dimensions: {
2783
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
3361
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
2784
3362
  # values: ["Value"],
2785
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3363
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2786
3364
  # },
2787
3365
  # tags: {
2788
3366
  # key: "TagKey",
2789
3367
  # values: ["Value"],
2790
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3368
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2791
3369
  # },
2792
3370
  # cost_categories: {
2793
3371
  # key: "CostCategoryName",
2794
3372
  # values: ["Value"],
2795
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3373
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2796
3374
  # },
2797
3375
  # },
3376
+ # data_type: ["ATTRIBUTES"], # accepts ATTRIBUTES, UTILIZATION, AMORTIZED_COMMITMENT, SAVINGS
2798
3377
  # next_token: "NextPageToken",
2799
3378
  # max_results: 1,
3379
+ # sort_by: {
3380
+ # key: "SortDefinitionKey", # required
3381
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3382
+ # },
2800
3383
  # })
2801
3384
  #
2802
3385
  # @example Response structure
@@ -2852,6 +3435,90 @@ module Aws::CostExplorer
2852
3435
  # @option params [String] :tag_key
2853
3436
  # The key of the tag that you want to return values for.
2854
3437
  #
3438
+ # @option params [Types::Expression] :filter
3439
+ # Use `Expression` to filter by cost or by usage. There are two
3440
+ # patterns:
3441
+ #
3442
+ # * Simple dimension values - You can set the dimension name and values
3443
+ # for the filters that you plan to use. For example, you can filter
3444
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
3445
+ # `GetRightsizingRecommendation`, the Region is a full name (for
3446
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
3447
+ # looks like:
3448
+ #
3449
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
3450
+ # “us-west-1” ] \} \}`
3451
+ #
3452
+ # The list of dimension values are OR'd together to retrieve cost or
3453
+ # usage data. You can create `Expression` and `DimensionValues`
3454
+ # objects using either `with*` methods or `set*` methods in multiple
3455
+ # lines.
3456
+ #
3457
+ # * Compound dimension values with logical operations - You can use
3458
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
3459
+ # to create a list of one or more `Expression` objects. This allows
3460
+ # you to filter on more advanced options. For example, you can filter
3461
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
3462
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
3463
+ # looks like this:
3464
+ #
3465
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
3466
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
3467
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
3468
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
3469
+ #
3470
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
3471
+ # returns an error if more than one is specified. The following
3472
+ # example shows an `Expression` object that creates an error.
3473
+ #
3474
+ # </note>
3475
+ #
3476
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
3477
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
3478
+ #
3479
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
3480
+ # NOT is not supported. OR is not supported between different
3481
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
3482
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
3483
+ # `RIGHTSIZING_TYPE`.
3484
+ #
3485
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
3486
+ # supported. AND and OR are not supported. Dimensions are limited to
3487
+ # `LINKED_ACCOUNT`.
3488
+ #
3489
+ # </note>
3490
+ #
3491
+ # @option params [Array<Types::SortDefinition>] :sort_by
3492
+ # The value by which you want to sort the data.
3493
+ #
3494
+ # The key represents cost and usage metrics. The following values are
3495
+ # supported:
3496
+ #
3497
+ # * `BlendedCost`
3498
+ #
3499
+ # * `UnblendedCost`
3500
+ #
3501
+ # * `AmortizedCost`
3502
+ #
3503
+ # * `NetAmortizedCost`
3504
+ #
3505
+ # * `NetUnblendedCost`
3506
+ #
3507
+ # * `UsageQuantity`
3508
+ #
3509
+ # * `NormalizedUsageAmount`
3510
+ #
3511
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
3512
+ #
3513
+ # When using `SortBy`, `NextPageToken` and `SearchString` are not
3514
+ # supported.
3515
+ #
3516
+ # @option params [Integer] :max_results
3517
+ # This field is only used when SortBy is provided in the request. The
3518
+ # maximum number of objects that to be returned for this request. If
3519
+ # MaxResults is not specified with SortBy, the request will return 1000
3520
+ # results as the default value for this parameter.
3521
+ #
2855
3522
  # @option params [String] :next_page_token
2856
3523
  # The token to retrieve the next set of results. AWS provides the token
2857
3524
  # when the response from a previous call has more results than the
@@ -2873,6 +3540,43 @@ module Aws::CostExplorer
2873
3540
  # end: "YearMonthDay", # required
2874
3541
  # },
2875
3542
  # tag_key: "TagKey",
3543
+ # filter: {
3544
+ # or: [
3545
+ # {
3546
+ # # recursive Expression
3547
+ # },
3548
+ # ],
3549
+ # and: [
3550
+ # {
3551
+ # # recursive Expression
3552
+ # },
3553
+ # ],
3554
+ # not: {
3555
+ # # recursive Expression
3556
+ # },
3557
+ # dimensions: {
3558
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
3559
+ # values: ["Value"],
3560
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3561
+ # },
3562
+ # tags: {
3563
+ # key: "TagKey",
3564
+ # values: ["Value"],
3565
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3566
+ # },
3567
+ # cost_categories: {
3568
+ # key: "CostCategoryName",
3569
+ # values: ["Value"],
3570
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3571
+ # },
3572
+ # },
3573
+ # sort_by: [
3574
+ # {
3575
+ # key: "SortDefinitionKey", # required
3576
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3577
+ # },
3578
+ # ],
3579
+ # max_results: 1,
2876
3580
  # next_page_token: "NextPageToken",
2877
3581
  # })
2878
3582
  #
@@ -2963,19 +3667,19 @@ module Aws::CostExplorer
2963
3667
  # # recursive Expression
2964
3668
  # },
2965
3669
  # dimensions: {
2966
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
3670
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
2967
3671
  # values: ["Value"],
2968
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3672
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2969
3673
  # },
2970
3674
  # tags: {
2971
3675
  # key: "TagKey",
2972
3676
  # values: ["Value"],
2973
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3677
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2974
3678
  # },
2975
3679
  # cost_categories: {
2976
3680
  # key: "CostCategoryName",
2977
3681
  # values: ["Value"],
2978
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3682
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2979
3683
  # },
2980
3684
  # },
2981
3685
  # prediction_interval_level: 1,
@@ -3228,19 +3932,19 @@ module Aws::CostExplorer
3228
3932
  # # recursive Expression
3229
3933
  # },
3230
3934
  # dimensions: {
3231
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
3935
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
3232
3936
  # values: ["Value"],
3233
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3937
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3234
3938
  # },
3235
3939
  # tags: {
3236
3940
  # key: "TagKey",
3237
3941
  # values: ["Value"],
3238
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3942
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3239
3943
  # },
3240
3944
  # cost_categories: {
3241
3945
  # key: "CostCategoryName",
3242
3946
  # values: ["Value"],
3243
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3947
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3244
3948
  # },
3245
3949
  # },
3246
3950
  # },
@@ -3274,7 +3978,7 @@ module Aws::CostExplorer
3274
3978
  params: params,
3275
3979
  config: config)
3276
3980
  context[:gem_name] = 'aws-sdk-costexplorer'
3277
- context[:gem_version] = '1.55.0'
3981
+ context[:gem_version] = '1.56.0'
3278
3982
  Seahorse::Client::Request.new(handlers, context)
3279
3983
  end
3280
3984