aws-sdk-costexplorer 1.55.0 → 1.60.0

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.60.0
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -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.60.0'
52
52
 
53
53
  end
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -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,
@@ -466,6 +466,9 @@ module Aws::CostExplorer
466
466
  #
467
467
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_CostCategoryRule.html
468
468
  #
469
+ # @option params [String] :default_value
470
+ # The default value for the cost category.
471
+ #
469
472
  # @return [Types::CreateCostCategoryDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
470
473
  #
471
474
  # * {Types::CreateCostCategoryDefinitionResponse#cost_category_arn #cost_category_arn} => String
@@ -478,8 +481,8 @@ module Aws::CostExplorer
478
481
  # rule_version: "CostCategoryExpression.v1", # required, accepts CostCategoryExpression.v1
479
482
  # rules: [ # required
480
483
  # {
481
- # value: "CostCategoryValue", # required
482
- # rule: { # required
484
+ # value: "CostCategoryValue",
485
+ # rule: {
483
486
  # or: [
484
487
  # {
485
488
  # # recursive Expression
@@ -494,23 +497,29 @@ module Aws::CostExplorer
494
497
  # # recursive Expression
495
498
  # },
496
499
  # 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
500
+ # 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
501
  # values: ["Value"],
499
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
502
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
500
503
  # },
501
504
  # tags: {
502
505
  # key: "TagKey",
503
506
  # values: ["Value"],
504
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
507
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
505
508
  # },
506
509
  # cost_categories: {
507
510
  # key: "CostCategoryName",
508
511
  # values: ["Value"],
509
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
512
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
510
513
  # },
511
514
  # },
515
+ # inherited_value: {
516
+ # dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
517
+ # dimension_key: "GenericString",
518
+ # },
519
+ # type: "REGULAR", # accepts REGULAR, INHERITED_VALUE
512
520
  # },
513
521
  # ],
522
+ # default_value: "CostCategoryValue",
514
523
  # })
515
524
  #
516
525
  # @example Response structure
@@ -644,24 +653,28 @@ module Aws::CostExplorer
644
653
  # resp.cost_category.rules[0].rule.and #=> Array
645
654
  # resp.cost_category.rules[0].rule.and[0] #=> Types::Expression
646
655
  # 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"
656
+ # 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
657
  # resp.cost_category.rules[0].rule.dimensions.values #=> Array
649
658
  # resp.cost_category.rules[0].rule.dimensions.values[0] #=> String
650
659
  # 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"
660
+ # 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
661
  # resp.cost_category.rules[0].rule.tags.key #=> String
653
662
  # resp.cost_category.rules[0].rule.tags.values #=> Array
654
663
  # resp.cost_category.rules[0].rule.tags.values[0] #=> String
655
664
  # 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"
665
+ # 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
666
  # resp.cost_category.rules[0].rule.cost_categories.key #=> String
658
667
  # resp.cost_category.rules[0].rule.cost_categories.values #=> Array
659
668
  # resp.cost_category.rules[0].rule.cost_categories.values[0] #=> String
660
669
  # 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"
670
+ # 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"
671
+ # resp.cost_category.rules[0].inherited_value.dimension_name #=> String, one of "LINKED_ACCOUNT_NAME", "TAG"
672
+ # resp.cost_category.rules[0].inherited_value.dimension_key #=> String
673
+ # resp.cost_category.rules[0].type #=> String, one of "REGULAR", "INHERITED_VALUE"
662
674
  # resp.cost_category.processing_status #=> Array
663
675
  # resp.cost_category.processing_status[0].component #=> String, one of "COST_EXPLORER"
664
676
  # resp.cost_category.processing_status[0].status #=> String, one of "PROCESSING", "APPLIED"
677
+ # resp.cost_category.default_value #=> String
665
678
  #
666
679
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DescribeCostCategoryDefinition AWS API Documentation
667
680
  #
@@ -795,21 +808,21 @@ module Aws::CostExplorer
795
808
  # resp.anomaly_monitors[0].monitor_specification.and #=> Array
796
809
  # resp.anomaly_monitors[0].monitor_specification.and[0] #=> Types::Expression
797
810
  # 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"
811
+ # 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
812
  # resp.anomaly_monitors[0].monitor_specification.dimensions.values #=> Array
800
813
  # resp.anomaly_monitors[0].monitor_specification.dimensions.values[0] #=> String
801
814
  # 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"
815
+ # 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
816
  # resp.anomaly_monitors[0].monitor_specification.tags.key #=> String
804
817
  # resp.anomaly_monitors[0].monitor_specification.tags.values #=> Array
805
818
  # resp.anomaly_monitors[0].monitor_specification.tags.values[0] #=> String
806
819
  # 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"
820
+ # 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
821
  # resp.anomaly_monitors[0].monitor_specification.cost_categories.key #=> String
809
822
  # resp.anomaly_monitors[0].monitor_specification.cost_categories.values #=> Array
810
823
  # resp.anomaly_monitors[0].monitor_specification.cost_categories.values[0] #=> String
811
824
  # 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"
825
+ # 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
826
  # resp.anomaly_monitors[0].dimensional_value_count #=> Integer
814
827
  # resp.next_page_token #=> String
815
828
  #
@@ -965,6 +978,7 @@ module Aws::CostExplorer
965
978
  # * {Types::GetCostAndUsageResponse#next_page_token #next_page_token} => String
966
979
  # * {Types::GetCostAndUsageResponse#group_definitions #group_definitions} => Array<Types::GroupDefinition>
967
980
  # * {Types::GetCostAndUsageResponse#results_by_time #results_by_time} => Array<Types::ResultByTime>
981
+ # * {Types::GetCostAndUsageResponse#dimension_value_attributes #dimension_value_attributes} => Array<Types::DimensionValuesWithAttributes>
968
982
  #
969
983
  # @example Request syntax with placeholder values
970
984
  #
@@ -989,19 +1003,19 @@ module Aws::CostExplorer
989
1003
  # # recursive Expression
990
1004
  # },
991
1005
  # 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
1006
+ # 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
1007
  # values: ["Value"],
994
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1008
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
995
1009
  # },
996
1010
  # tags: {
997
1011
  # key: "TagKey",
998
1012
  # values: ["Value"],
999
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1013
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1000
1014
  # },
1001
1015
  # cost_categories: {
1002
1016
  # key: "CostCategoryName",
1003
1017
  # values: ["Value"],
1004
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1018
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1005
1019
  # },
1006
1020
  # },
1007
1021
  # metrics: ["MetricName"], # required
@@ -1033,6 +1047,10 @@ module Aws::CostExplorer
1033
1047
  # resp.results_by_time[0].groups[0].metrics["MetricName"].amount #=> String
1034
1048
  # resp.results_by_time[0].groups[0].metrics["MetricName"].unit #=> String
1035
1049
  # resp.results_by_time[0].estimated #=> Boolean
1050
+ # resp.dimension_value_attributes #=> Array
1051
+ # resp.dimension_value_attributes[0].value #=> String
1052
+ # resp.dimension_value_attributes[0].attributes #=> Hash
1053
+ # resp.dimension_value_attributes[0].attributes["AttributeType"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1036
1054
  #
1037
1055
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostAndUsage AWS API Documentation
1038
1056
  #
@@ -1133,6 +1151,7 @@ module Aws::CostExplorer
1133
1151
  # * {Types::GetCostAndUsageWithResourcesResponse#next_page_token #next_page_token} => String
1134
1152
  # * {Types::GetCostAndUsageWithResourcesResponse#group_definitions #group_definitions} => Array&lt;Types::GroupDefinition&gt;
1135
1153
  # * {Types::GetCostAndUsageWithResourcesResponse#results_by_time #results_by_time} => Array&lt;Types::ResultByTime&gt;
1154
+ # * {Types::GetCostAndUsageWithResourcesResponse#dimension_value_attributes #dimension_value_attributes} => Array&lt;Types::DimensionValuesWithAttributes&gt;
1136
1155
  #
1137
1156
  # @example Request syntax with placeholder values
1138
1157
  #
@@ -1157,19 +1176,19 @@ module Aws::CostExplorer
1157
1176
  # # recursive Expression
1158
1177
  # },
1159
1178
  # 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
1179
+ # 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
1180
  # values: ["Value"],
1162
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1181
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1163
1182
  # },
1164
1183
  # tags: {
1165
1184
  # key: "TagKey",
1166
1185
  # values: ["Value"],
1167
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1186
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1168
1187
  # },
1169
1188
  # cost_categories: {
1170
1189
  # key: "CostCategoryName",
1171
1190
  # values: ["Value"],
1172
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1191
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1173
1192
  # },
1174
1193
  # },
1175
1194
  # metrics: ["MetricName"],
@@ -1201,6 +1220,10 @@ module Aws::CostExplorer
1201
1220
  # resp.results_by_time[0].groups[0].metrics["MetricName"].amount #=> String
1202
1221
  # resp.results_by_time[0].groups[0].metrics["MetricName"].unit #=> String
1203
1222
  # resp.results_by_time[0].estimated #=> Boolean
1223
+ # resp.dimension_value_attributes #=> Array
1224
+ # resp.dimension_value_attributes[0].value #=> String
1225
+ # resp.dimension_value_attributes[0].attributes #=> Hash
1226
+ # resp.dimension_value_attributes[0].attributes["AttributeType"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1204
1227
  #
1205
1228
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostAndUsageWithResources AWS API Documentation
1206
1229
  #
@@ -1211,6 +1234,197 @@ module Aws::CostExplorer
1211
1234
  req.send_request(options)
1212
1235
  end
1213
1236
 
1237
+ # Retrieves an array of Cost Category names and values incurred cost.
1238
+ #
1239
+ # <note markdown="1"> If some Cost Category names and values are not associated with any
1240
+ # cost, they will not be returned by this API.
1241
+ #
1242
+ # </note>
1243
+ #
1244
+ # @option params [String] :search_string
1245
+ # The value that you want to search the filter values for.
1246
+ #
1247
+ # If you do not specify a `CostCategoryName`, `SearchString` will be
1248
+ # used to filter Cost Category names that match the `SearchString`
1249
+ # pattern. If you do specifiy a `CostCategoryName`, `SearchString` will
1250
+ # be used to filter Cost Category values that match the `SearchString`
1251
+ # pattern.
1252
+ #
1253
+ # @option params [required, Types::DateInterval] :time_period
1254
+ # The time period of the request.
1255
+ #
1256
+ # @option params [String] :cost_category_name
1257
+ # The unique name of the Cost Category.
1258
+ #
1259
+ # @option params [Types::Expression] :filter
1260
+ # Use `Expression` to filter by cost or by usage. There are two
1261
+ # patterns:
1262
+ #
1263
+ # * Simple dimension values - You can set the dimension name and values
1264
+ # for the filters that you plan to use. For example, you can filter
1265
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
1266
+ # `GetRightsizingRecommendation`, the Region is a full name (for
1267
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
1268
+ # looks like:
1269
+ #
1270
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
1271
+ # “us-west-1” ] \} \}`
1272
+ #
1273
+ # The list of dimension values are OR'd together to retrieve cost or
1274
+ # usage data. You can create `Expression` and `DimensionValues`
1275
+ # objects using either `with*` methods or `set*` methods in multiple
1276
+ # lines.
1277
+ #
1278
+ # * Compound dimension values with logical operations - You can use
1279
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
1280
+ # to create a list of one or more `Expression` objects. This allows
1281
+ # you to filter on more advanced options. For example, you can filter
1282
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
1283
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
1284
+ # looks like this:
1285
+ #
1286
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
1287
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
1288
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
1289
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
1290
+ #
1291
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
1292
+ # returns an error if more than one is specified. The following
1293
+ # example shows an `Expression` object that creates an error.
1294
+ #
1295
+ # </note>
1296
+ #
1297
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
1298
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
1299
+ #
1300
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
1301
+ # NOT is not supported. OR is not supported between different
1302
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
1303
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
1304
+ # `RIGHTSIZING_TYPE`.
1305
+ #
1306
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
1307
+ # supported. AND and OR are not supported. Dimensions are limited to
1308
+ # `LINKED_ACCOUNT`.
1309
+ #
1310
+ # </note>
1311
+ #
1312
+ # @option params [Array<Types::SortDefinition>] :sort_by
1313
+ # The value by which you want to sort the data.
1314
+ #
1315
+ # The key represents cost and usage metrics. The following values are
1316
+ # supported:
1317
+ #
1318
+ # * `BlendedCost`
1319
+ #
1320
+ # * `UnblendedCost`
1321
+ #
1322
+ # * `AmortizedCost`
1323
+ #
1324
+ # * `NetAmortizedCost`
1325
+ #
1326
+ # * `NetUnblendedCost`
1327
+ #
1328
+ # * `UsageQuantity`
1329
+ #
1330
+ # * `NormalizedUsageAmount`
1331
+ #
1332
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
1333
+ #
1334
+ # When using `SortBy`, `NextPageToken` and `SearchString` are not
1335
+ # supported.
1336
+ #
1337
+ # @option params [Integer] :max_results
1338
+ # This field is only used when `SortBy` is provided in the request.
1339
+ #
1340
+ # The maximum number of objects that to be returned for this request. If
1341
+ # `MaxResults` is not specified with `SortBy`, the request will return
1342
+ # 1000 results as the default value for this parameter.
1343
+ #
1344
+ # For `GetCostCategories`, MaxResults has an upper limit of 1000.
1345
+ #
1346
+ # @option params [String] :next_page_token
1347
+ # If the number of objects that are still available for retrieval
1348
+ # exceeds the limit, AWS returns a NextPageToken value in the response.
1349
+ # To retrieve the next batch of objects, provide the NextPageToken from
1350
+ # the prior call in your next request.
1351
+ #
1352
+ # @return [Types::GetCostCategoriesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1353
+ #
1354
+ # * {Types::GetCostCategoriesResponse#next_page_token #next_page_token} => String
1355
+ # * {Types::GetCostCategoriesResponse#cost_category_names #cost_category_names} => Array&lt;String&gt;
1356
+ # * {Types::GetCostCategoriesResponse#cost_category_values #cost_category_values} => Array&lt;String&gt;
1357
+ # * {Types::GetCostCategoriesResponse#return_size #return_size} => Integer
1358
+ # * {Types::GetCostCategoriesResponse#total_size #total_size} => Integer
1359
+ #
1360
+ # @example Request syntax with placeholder values
1361
+ #
1362
+ # resp = client.get_cost_categories({
1363
+ # search_string: "SearchString",
1364
+ # time_period: { # required
1365
+ # start: "YearMonthDay", # required
1366
+ # end: "YearMonthDay", # required
1367
+ # },
1368
+ # cost_category_name: "CostCategoryName",
1369
+ # filter: {
1370
+ # or: [
1371
+ # {
1372
+ # # recursive Expression
1373
+ # },
1374
+ # ],
1375
+ # and: [
1376
+ # {
1377
+ # # recursive Expression
1378
+ # },
1379
+ # ],
1380
+ # not: {
1381
+ # # recursive Expression
1382
+ # },
1383
+ # dimensions: {
1384
+ # 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
1385
+ # values: ["Value"],
1386
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1387
+ # },
1388
+ # tags: {
1389
+ # key: "TagKey",
1390
+ # values: ["Value"],
1391
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1392
+ # },
1393
+ # cost_categories: {
1394
+ # key: "CostCategoryName",
1395
+ # values: ["Value"],
1396
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1397
+ # },
1398
+ # },
1399
+ # sort_by: [
1400
+ # {
1401
+ # key: "SortDefinitionKey", # required
1402
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
1403
+ # },
1404
+ # ],
1405
+ # max_results: 1,
1406
+ # next_page_token: "NextPageToken",
1407
+ # })
1408
+ #
1409
+ # @example Response structure
1410
+ #
1411
+ # resp.next_page_token #=> String
1412
+ # resp.cost_category_names #=> Array
1413
+ # resp.cost_category_names[0] #=> String
1414
+ # resp.cost_category_values #=> Array
1415
+ # resp.cost_category_values[0] #=> String
1416
+ # resp.return_size #=> Integer
1417
+ # resp.total_size #=> Integer
1418
+ #
1419
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostCategories AWS API Documentation
1420
+ #
1421
+ # @overload get_cost_categories(params = {})
1422
+ # @param [Hash] params ({})
1423
+ def get_cost_categories(params = {}, options = {})
1424
+ req = build_request(:get_cost_categories, params)
1425
+ req.send_request(options)
1426
+ end
1427
+
1214
1428
  # Retrieves a forecast for how much Amazon Web Services predicts that
1215
1429
  # you will spend over the forecast time period that you select, based on
1216
1430
  # your past costs.
@@ -1249,8 +1463,54 @@ module Aws::CostExplorer
1249
1463
  # granularities.
1250
1464
  #
1251
1465
  # @option params [Types::Expression] :filter
1252
- # The filters that you want to use to filter your forecast. Cost
1253
- # Explorer API supports all of the Cost Explorer filters.
1466
+ # The filters that you want to use to filter your forecast. The
1467
+ # `GetCostForecast` API supports filtering by the following dimensions:
1468
+ #
1469
+ # * `AZ`
1470
+ #
1471
+ # * `INSTANCE_TYPE`
1472
+ #
1473
+ # * `LINKED_ACCOUNT`
1474
+ #
1475
+ # * `LINKED_ACCOUNT_NAME`
1476
+ #
1477
+ # * `OPERATION`
1478
+ #
1479
+ # * `PURCHASE_TYPE`
1480
+ #
1481
+ # * `REGION`
1482
+ #
1483
+ # * `SERVICE`
1484
+ #
1485
+ # * `USAGE_TYPE`
1486
+ #
1487
+ # * `USAGE_TYPE_GROUP`
1488
+ #
1489
+ # * `RECORD_TYPE`
1490
+ #
1491
+ # * `OPERATING_SYSTEM`
1492
+ #
1493
+ # * `TENANCY`
1494
+ #
1495
+ # * `SCOPE`
1496
+ #
1497
+ # * `PLATFORM`
1498
+ #
1499
+ # * `SUBSCRIPTION_ID`
1500
+ #
1501
+ # * `LEGAL_ENTITY_NAME`
1502
+ #
1503
+ # * `DEPLOYMENT_OPTION`
1504
+ #
1505
+ # * `DATABASE_ENGINE`
1506
+ #
1507
+ # * `INSTANCE_TYPE_FAMILY`
1508
+ #
1509
+ # * `BILLING_ENTITY`
1510
+ #
1511
+ # * `RESERVATION_ID`
1512
+ #
1513
+ # * `SAVINGS_PLAN_ARN`
1254
1514
  #
1255
1515
  # @option params [Integer] :prediction_interval_level
1256
1516
  # Cost Explorer always returns the mean forecast as a single point. You
@@ -1289,19 +1549,19 @@ module Aws::CostExplorer
1289
1549
  # # recursive Expression
1290
1550
  # },
1291
1551
  # 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
1552
+ # 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
1553
  # values: ["Value"],
1294
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1554
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1295
1555
  # },
1296
1556
  # tags: {
1297
1557
  # key: "TagKey",
1298
1558
  # values: ["Value"],
1299
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1559
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1300
1560
  # },
1301
1561
  # cost_categories: {
1302
1562
  # key: "CostCategoryName",
1303
1563
  # values: ["Value"],
1304
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1564
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1305
1565
  # },
1306
1566
  # },
1307
1567
  # prediction_interval_level: 1,
@@ -1455,6 +1715,93 @@ module Aws::CostExplorer
1455
1715
  #
1456
1716
  # * SAVINGS\_PLAN\_ARN - The unique identifier for your Savings Plan
1457
1717
  #
1718
+ # @option params [Types::Expression] :filter
1719
+ # Use `Expression` to filter by cost or by usage. There are two
1720
+ # patterns:
1721
+ #
1722
+ # * Simple dimension values - You can set the dimension name and values
1723
+ # for the filters that you plan to use. For example, you can filter
1724
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
1725
+ # `GetRightsizingRecommendation`, the Region is a full name (for
1726
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
1727
+ # looks like:
1728
+ #
1729
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
1730
+ # “us-west-1” ] \} \}`
1731
+ #
1732
+ # The list of dimension values are OR'd together to retrieve cost or
1733
+ # usage data. You can create `Expression` and `DimensionValues`
1734
+ # objects using either `with*` methods or `set*` methods in multiple
1735
+ # lines.
1736
+ #
1737
+ # * Compound dimension values with logical operations - You can use
1738
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
1739
+ # to create a list of one or more `Expression` objects. This allows
1740
+ # you to filter on more advanced options. For example, you can filter
1741
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
1742
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
1743
+ # looks like this:
1744
+ #
1745
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
1746
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
1747
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
1748
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
1749
+ #
1750
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
1751
+ # returns an error if more than one is specified. The following
1752
+ # example shows an `Expression` object that creates an error.
1753
+ #
1754
+ # </note>
1755
+ #
1756
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
1757
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
1758
+ #
1759
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
1760
+ # NOT is not supported. OR is not supported between different
1761
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
1762
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
1763
+ # `RIGHTSIZING_TYPE`.
1764
+ #
1765
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
1766
+ # supported. AND and OR are not supported. Dimensions are limited to
1767
+ # `LINKED_ACCOUNT`.
1768
+ #
1769
+ # </note>
1770
+ #
1771
+ # @option params [Array<Types::SortDefinition>] :sort_by
1772
+ # The value by which you want to sort the data.
1773
+ #
1774
+ # The key represents cost and usage metrics. The following values are
1775
+ # supported:
1776
+ #
1777
+ # * `BlendedCost`
1778
+ #
1779
+ # * `UnblendedCost`
1780
+ #
1781
+ # * `AmortizedCost`
1782
+ #
1783
+ # * `NetAmortizedCost`
1784
+ #
1785
+ # * `NetUnblendedCost`
1786
+ #
1787
+ # * `UsageQuantity`
1788
+ #
1789
+ # * `NormalizedUsageAmount`
1790
+ #
1791
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
1792
+ #
1793
+ # When you specify a `SortBy` paramater, the context must be
1794
+ # `COST_AND_USAGE`. Further, when using `SortBy`, `NextPageToken` and
1795
+ # `SearchString` are not supported.
1796
+ #
1797
+ # @option params [Integer] :max_results
1798
+ # This field is only used when SortBy is provided in the request. The
1799
+ # maximum number of objects that to be returned for this request. If
1800
+ # MaxResults is not specified with SortBy, the request will return 1000
1801
+ # results as the default value for this parameter.
1802
+ #
1803
+ # For `GetDimensionValues`, MaxResults has an upper limit of 1000.
1804
+ #
1458
1805
  # @option params [String] :next_page_token
1459
1806
  # The token to retrieve the next set of results. AWS provides the token
1460
1807
  # when the response from a previous call has more results than the
@@ -1475,8 +1822,45 @@ module Aws::CostExplorer
1475
1822
  # start: "YearMonthDay", # required
1476
1823
  # end: "YearMonthDay", # required
1477
1824
  # },
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
1825
+ # 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
1826
  # context: "COST_AND_USAGE", # accepts COST_AND_USAGE, RESERVATIONS, SAVINGS_PLANS
1827
+ # filter: {
1828
+ # or: [
1829
+ # {
1830
+ # # recursive Expression
1831
+ # },
1832
+ # ],
1833
+ # and: [
1834
+ # {
1835
+ # # recursive Expression
1836
+ # },
1837
+ # ],
1838
+ # not: {
1839
+ # # recursive Expression
1840
+ # },
1841
+ # dimensions: {
1842
+ # 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
1843
+ # values: ["Value"],
1844
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1845
+ # },
1846
+ # tags: {
1847
+ # key: "TagKey",
1848
+ # values: ["Value"],
1849
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1850
+ # },
1851
+ # cost_categories: {
1852
+ # key: "CostCategoryName",
1853
+ # values: ["Value"],
1854
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1855
+ # },
1856
+ # },
1857
+ # sort_by: [
1858
+ # {
1859
+ # key: "SortDefinitionKey", # required
1860
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
1861
+ # },
1862
+ # ],
1863
+ # max_results: 1,
1480
1864
  # next_page_token: "NextPageToken",
1481
1865
  # })
1482
1866
  #
@@ -1631,6 +2015,39 @@ module Aws::CostExplorer
1631
2015
  # when the response from a previous call has more results than the
1632
2016
  # maximum page size.
1633
2017
  #
2018
+ # @option params [Types::SortDefinition] :sort_by
2019
+ # The value by which you want to sort the data.
2020
+ #
2021
+ # The following values are supported for `Key`\:
2022
+ #
2023
+ # * `OnDemandCost`
2024
+ #
2025
+ # * `CoverageHoursPercentage`
2026
+ #
2027
+ # * `OnDemandHours`
2028
+ #
2029
+ # * `ReservedHours`
2030
+ #
2031
+ # * `TotalRunningHours`
2032
+ #
2033
+ # * `CoverageNormalizedUnitsPercentage`
2034
+ #
2035
+ # * `OnDemandNormalizedUnits`
2036
+ #
2037
+ # * `ReservedNormalizedUnits`
2038
+ #
2039
+ # * `TotalRunningNormalizedUnits`
2040
+ #
2041
+ # * `Time`
2042
+ #
2043
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
2044
+ #
2045
+ # @option params [Integer] :max_results
2046
+ # The maximum number of objects that you returned for this request. If
2047
+ # more objects are available, in the response, AWS provides a
2048
+ # NextPageToken value that you can use in a subsequent call to get the
2049
+ # next batch of objects.
2050
+ #
1634
2051
  # @return [Types::GetReservationCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1635
2052
  #
1636
2053
  # * {Types::GetReservationCoverageResponse#coverages_by_time #coverages_by_time} => Array&lt;Types::CoverageByTime&gt;
@@ -1666,23 +2083,28 @@ module Aws::CostExplorer
1666
2083
  # # recursive Expression
1667
2084
  # },
1668
2085
  # 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
2086
+ # 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
2087
  # values: ["Value"],
1671
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2088
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1672
2089
  # },
1673
2090
  # tags: {
1674
2091
  # key: "TagKey",
1675
2092
  # values: ["Value"],
1676
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2093
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1677
2094
  # },
1678
2095
  # cost_categories: {
1679
2096
  # key: "CostCategoryName",
1680
2097
  # values: ["Value"],
1681
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2098
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1682
2099
  # },
1683
2100
  # },
1684
2101
  # metrics: ["MetricName"],
1685
2102
  # next_page_token: "NextPageToken",
2103
+ # sort_by: {
2104
+ # key: "SortDefinitionKey", # required
2105
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2106
+ # },
2107
+ # max_results: 1,
1686
2108
  # })
1687
2109
  #
1688
2110
  # @example Response structure
@@ -1758,6 +2180,59 @@ module Aws::CostExplorer
1758
2180
  # @option params [required, String] :service
1759
2181
  # The specific service that you want recommendations for.
1760
2182
  #
2183
+ # @option params [Types::Expression] :filter
2184
+ # Use `Expression` to filter by cost or by usage. There are two
2185
+ # patterns:
2186
+ #
2187
+ # * Simple dimension values - You can set the dimension name and values
2188
+ # for the filters that you plan to use. For example, you can filter
2189
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
2190
+ # `GetRightsizingRecommendation`, the Region is a full name (for
2191
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
2192
+ # looks like:
2193
+ #
2194
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
2195
+ # “us-west-1” ] \} \}`
2196
+ #
2197
+ # The list of dimension values are OR'd together to retrieve cost or
2198
+ # usage data. You can create `Expression` and `DimensionValues`
2199
+ # objects using either `with*` methods or `set*` methods in multiple
2200
+ # lines.
2201
+ #
2202
+ # * Compound dimension values with logical operations - You can use
2203
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
2204
+ # to create a list of one or more `Expression` objects. This allows
2205
+ # you to filter on more advanced options. For example, you can filter
2206
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
2207
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
2208
+ # looks like this:
2209
+ #
2210
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
2211
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
2212
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
2213
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
2214
+ #
2215
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
2216
+ # returns an error if more than one is specified. The following
2217
+ # example shows an `Expression` object that creates an error.
2218
+ #
2219
+ # </note>
2220
+ #
2221
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
2222
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
2223
+ #
2224
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
2225
+ # NOT is not supported. OR is not supported between different
2226
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
2227
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
2228
+ # `RIGHTSIZING_TYPE`.
2229
+ #
2230
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
2231
+ # supported. AND and OR are not supported. Dimensions are limited to
2232
+ # `LINKED_ACCOUNT`.
2233
+ #
2234
+ # </note>
2235
+ #
1761
2236
  # @option params [String] :account_scope
1762
2237
  # The account scope that you want your recommendations for. Amazon Web
1763
2238
  # Services calculates recommendations including the management account
@@ -1799,6 +2274,36 @@ module Aws::CostExplorer
1799
2274
  # resp = client.get_reservation_purchase_recommendation({
1800
2275
  # account_id: "GenericString",
1801
2276
  # service: "GenericString", # required
2277
+ # filter: {
2278
+ # or: [
2279
+ # {
2280
+ # # recursive Expression
2281
+ # },
2282
+ # ],
2283
+ # and: [
2284
+ # {
2285
+ # # recursive Expression
2286
+ # },
2287
+ # ],
2288
+ # not: {
2289
+ # # recursive Expression
2290
+ # },
2291
+ # dimensions: {
2292
+ # 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
2293
+ # values: ["Value"],
2294
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2295
+ # },
2296
+ # tags: {
2297
+ # key: "TagKey",
2298
+ # values: ["Value"],
2299
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2300
+ # },
2301
+ # cost_categories: {
2302
+ # key: "CostCategoryName",
2303
+ # values: ["Value"],
2304
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2305
+ # },
2306
+ # },
1802
2307
  # account_scope: "PAYER", # accepts PAYER, LINKED
1803
2308
  # lookback_period_in_days: "SEVEN_DAYS", # accepts SEVEN_DAYS, THIRTY_DAYS, SIXTY_DAYS
1804
2309
  # term_in_years: "ONE_YEAR", # accepts ONE_YEAR, THREE_YEARS
@@ -1948,11 +2453,58 @@ module Aws::CostExplorer
1948
2453
  #
1949
2454
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
1950
2455
  #
2456
+ # @option params [Types::SortDefinition] :sort_by
2457
+ # The value by which you want to sort the data.
2458
+ #
2459
+ # The following values are supported for `Key`\:
2460
+ #
2461
+ # * `UtilizationPercentage`
2462
+ #
2463
+ # * `UtilizationPercentageInUnits`
2464
+ #
2465
+ # * `PurchasedHours`
2466
+ #
2467
+ # * `PurchasedUnits`
2468
+ #
2469
+ # * `TotalActualHours`
2470
+ #
2471
+ # * `TotalActualUnits`
2472
+ #
2473
+ # * `UnusedHours`
2474
+ #
2475
+ # * `UnusedUnits`
2476
+ #
2477
+ # * `OnDemandCostOfRIHoursUsed`
2478
+ #
2479
+ # * `NetRISavings`
2480
+ #
2481
+ # * `TotalPotentialRISavings`
2482
+ #
2483
+ # * `AmortizedUpfrontFee`
2484
+ #
2485
+ # * `AmortizedRecurringFee`
2486
+ #
2487
+ # * `TotalAmortizedFee`
2488
+ #
2489
+ # * `RICostForUnusedHours`
2490
+ #
2491
+ # * `RealizedSavings`
2492
+ #
2493
+ # * `UnrealizedSavings`
2494
+ #
2495
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
2496
+ #
1951
2497
  # @option params [String] :next_page_token
1952
2498
  # The token to retrieve the next set of results. AWS provides the token
1953
2499
  # when the response from a previous call has more results than the
1954
2500
  # maximum page size.
1955
2501
  #
2502
+ # @option params [Integer] :max_results
2503
+ # The maximum number of objects that you returned for this request. If
2504
+ # more objects are available, in the response, AWS provides a
2505
+ # NextPageToken value that you can use in a subsequent call to get the
2506
+ # next batch of objects.
2507
+ #
1956
2508
  # @return [Types::GetReservationUtilizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1957
2509
  #
1958
2510
  # * {Types::GetReservationUtilizationResponse#utilizations_by_time #utilizations_by_time} => Array&lt;Types::UtilizationByTime&gt;
@@ -1988,22 +2540,27 @@ module Aws::CostExplorer
1988
2540
  # # recursive Expression
1989
2541
  # },
1990
2542
  # 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
2543
+ # 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
2544
  # values: ["Value"],
1993
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2545
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1994
2546
  # },
1995
2547
  # tags: {
1996
2548
  # key: "TagKey",
1997
2549
  # values: ["Value"],
1998
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2550
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1999
2551
  # },
2000
2552
  # cost_categories: {
2001
2553
  # key: "CostCategoryName",
2002
2554
  # values: ["Value"],
2003
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2555
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2004
2556
  # },
2005
2557
  # },
2558
+ # sort_by: {
2559
+ # key: "SortDefinitionKey", # required
2560
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2561
+ # },
2006
2562
  # next_page_token: "NextPageToken",
2563
+ # max_results: 1,
2007
2564
  # })
2008
2565
  #
2009
2566
  # @example Response structure
@@ -2030,6 +2587,9 @@ module Aws::CostExplorer
2030
2587
  # resp.utilizations_by_time[0].groups[0].utilization.amortized_upfront_fee #=> String
2031
2588
  # resp.utilizations_by_time[0].groups[0].utilization.amortized_recurring_fee #=> String
2032
2589
  # resp.utilizations_by_time[0].groups[0].utilization.total_amortized_fee #=> String
2590
+ # resp.utilizations_by_time[0].groups[0].utilization.ri_cost_for_unused_hours #=> String
2591
+ # resp.utilizations_by_time[0].groups[0].utilization.realized_savings #=> String
2592
+ # resp.utilizations_by_time[0].groups[0].utilization.unrealized_savings #=> String
2033
2593
  # resp.utilizations_by_time[0].total.utilization_percentage #=> String
2034
2594
  # resp.utilizations_by_time[0].total.utilization_percentage_in_units #=> String
2035
2595
  # resp.utilizations_by_time[0].total.purchased_hours #=> String
@@ -2044,6 +2604,9 @@ module Aws::CostExplorer
2044
2604
  # resp.utilizations_by_time[0].total.amortized_upfront_fee #=> String
2045
2605
  # resp.utilizations_by_time[0].total.amortized_recurring_fee #=> String
2046
2606
  # resp.utilizations_by_time[0].total.total_amortized_fee #=> String
2607
+ # resp.utilizations_by_time[0].total.ri_cost_for_unused_hours #=> String
2608
+ # resp.utilizations_by_time[0].total.realized_savings #=> String
2609
+ # resp.utilizations_by_time[0].total.unrealized_savings #=> String
2047
2610
  # resp.total.utilization_percentage #=> String
2048
2611
  # resp.total.utilization_percentage_in_units #=> String
2049
2612
  # resp.total.purchased_hours #=> String
@@ -2058,6 +2621,9 @@ module Aws::CostExplorer
2058
2621
  # resp.total.amortized_upfront_fee #=> String
2059
2622
  # resp.total.amortized_recurring_fee #=> String
2060
2623
  # resp.total.total_amortized_fee #=> String
2624
+ # resp.total.ri_cost_for_unused_hours #=> String
2625
+ # resp.total.realized_savings #=> String
2626
+ # resp.total.unrealized_savings #=> String
2061
2627
  # resp.next_page_token #=> String
2062
2628
  #
2063
2629
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetReservationUtilization AWS API Documentation
@@ -2123,10 +2689,15 @@ module Aws::CostExplorer
2123
2689
  # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
2124
2690
  # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
2125
2691
  #
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`.
2692
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
2693
+ # NOT is not supported. OR is not supported between different
2694
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
2695
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
2696
+ # `RIGHTSIZING_TYPE`.
2697
+ #
2698
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
2699
+ # supported. AND and OR are not supported. Dimensions are limited to
2700
+ # `LINKED_ACCOUNT`.
2130
2701
  #
2131
2702
  # </note>
2132
2703
  #
@@ -2176,19 +2747,19 @@ module Aws::CostExplorer
2176
2747
  # # recursive Expression
2177
2748
  # },
2178
2749
  # 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
2750
+ # 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
2751
  # values: ["Value"],
2181
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2752
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2182
2753
  # },
2183
2754
  # tags: {
2184
2755
  # key: "TagKey",
2185
2756
  # values: ["Value"],
2186
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2757
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2187
2758
  # },
2188
2759
  # cost_categories: {
2189
2760
  # key: "CostCategoryName",
2190
2761
  # values: ["Value"],
2191
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2762
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2192
2763
  # },
2193
2764
  # },
2194
2765
  # configuration: {
@@ -2219,7 +2790,7 @@ module Aws::CostExplorer
2219
2790
  # resp.rightsizing_recommendations[0].current_instance.tags[0].values #=> Array
2220
2791
  # resp.rightsizing_recommendations[0].current_instance.tags[0].values[0] #=> String
2221
2792
  # 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"
2793
+ # 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
2794
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.hourly_on_demand_rate #=> String
2224
2795
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.instance_type #=> String
2225
2796
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.platform #=> String
@@ -2349,6 +2920,27 @@ module Aws::CostExplorer
2349
2920
  # The number of items to be returned in a response. The default is `20`,
2350
2921
  # with a minimum value of `1`.
2351
2922
  #
2923
+ # @option params [Types::SortDefinition] :sort_by
2924
+ # The value by which you want to sort the data.
2925
+ #
2926
+ # The following values are supported for `Key`\:
2927
+ #
2928
+ # * `SpendCoveredBySavingsPlan`
2929
+ #
2930
+ # * `OnDemandCost`
2931
+ #
2932
+ # * `CoveragePercentage`
2933
+ #
2934
+ # * `TotalCost`
2935
+ #
2936
+ # * `InstanceFamily`
2937
+ #
2938
+ # * `Region`
2939
+ #
2940
+ # * `Service`
2941
+ #
2942
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
2943
+ #
2352
2944
  # @return [Types::GetSavingsPlansCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2353
2945
  #
2354
2946
  # * {Types::GetSavingsPlansCoverageResponse#savings_plans_coverages #savings_plans_coverages} => Array&lt;Types::SavingsPlansCoverage&gt;
@@ -2385,24 +2977,28 @@ module Aws::CostExplorer
2385
2977
  # # recursive Expression
2386
2978
  # },
2387
2979
  # 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
2980
+ # 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
2981
  # values: ["Value"],
2390
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2982
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2391
2983
  # },
2392
2984
  # tags: {
2393
2985
  # key: "TagKey",
2394
2986
  # values: ["Value"],
2395
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2987
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2396
2988
  # },
2397
2989
  # cost_categories: {
2398
2990
  # key: "CostCategoryName",
2399
2991
  # values: ["Value"],
2400
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2992
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2401
2993
  # },
2402
2994
  # },
2403
2995
  # metrics: ["MetricName"],
2404
2996
  # next_token: "NextPageToken",
2405
2997
  # max_results: 1,
2998
+ # sort_by: {
2999
+ # key: "SortDefinitionKey", # required
3000
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3001
+ # },
2406
3002
  # })
2407
3003
  #
2408
3004
  # @example Response structure
@@ -2504,19 +3100,19 @@ module Aws::CostExplorer
2504
3100
  # # recursive Expression
2505
3101
  # },
2506
3102
  # 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
3103
+ # 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
3104
  # values: ["Value"],
2509
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3105
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2510
3106
  # },
2511
3107
  # tags: {
2512
3108
  # key: "TagKey",
2513
3109
  # values: ["Value"],
2514
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3110
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2515
3111
  # },
2516
3112
  # cost_categories: {
2517
3113
  # key: "CostCategoryName",
2518
3114
  # values: ["Value"],
2519
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3115
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2520
3116
  # },
2521
3117
  # },
2522
3118
  # })
@@ -2620,6 +3216,23 @@ module Aws::CostExplorer
2620
3216
  #
2621
3217
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
2622
3218
  #
3219
+ # @option params [Types::SortDefinition] :sort_by
3220
+ # The value by which you want to sort the data.
3221
+ #
3222
+ # The following values are supported for `Key`\:
3223
+ #
3224
+ # * `UtilizationPercentage`
3225
+ #
3226
+ # * `TotalCommitment`
3227
+ #
3228
+ # * `UsedCommitment`
3229
+ #
3230
+ # * `UnusedCommitment`
3231
+ #
3232
+ # * `NetSavings`
3233
+ #
3234
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
3235
+ #
2623
3236
  # @return [Types::GetSavingsPlansUtilizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2624
3237
  #
2625
3238
  # * {Types::GetSavingsPlansUtilizationResponse#savings_plans_utilizations_by_time #savings_plans_utilizations_by_time} => Array&lt;Types::SavingsPlansUtilizationByTime&gt;
@@ -2648,21 +3261,25 @@ module Aws::CostExplorer
2648
3261
  # # recursive Expression
2649
3262
  # },
2650
3263
  # 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
3264
+ # 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
3265
  # values: ["Value"],
2653
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3266
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2654
3267
  # },
2655
3268
  # tags: {
2656
3269
  # key: "TagKey",
2657
3270
  # values: ["Value"],
2658
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3271
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2659
3272
  # },
2660
3273
  # cost_categories: {
2661
3274
  # key: "CostCategoryName",
2662
3275
  # values: ["Value"],
2663
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3276
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2664
3277
  # },
2665
3278
  # },
3279
+ # sort_by: {
3280
+ # key: "SortDefinitionKey", # required
3281
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3282
+ # },
2666
3283
  # })
2667
3284
  #
2668
3285
  # @example Response structure
@@ -2740,6 +3357,9 @@ module Aws::CostExplorer
2740
3357
  #
2741
3358
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
2742
3359
  #
3360
+ # @option params [Array<String>] :data_type
3361
+ # The data type.
3362
+ #
2743
3363
  # @option params [String] :next_token
2744
3364
  # The token to retrieve the next set of results. Amazon Web Services
2745
3365
  # provides the token when the response from a previous call has more
@@ -2749,6 +3369,27 @@ module Aws::CostExplorer
2749
3369
  # The number of items to be returned in a response. The default is `20`,
2750
3370
  # with a minimum value of `1`.
2751
3371
  #
3372
+ # @option params [Types::SortDefinition] :sort_by
3373
+ # The value by which you want to sort the data.
3374
+ #
3375
+ # The following values are supported for `Key`\:
3376
+ #
3377
+ # * `UtilizationPercentage`
3378
+ #
3379
+ # * `TotalCommitment`
3380
+ #
3381
+ # * `UsedCommitment`
3382
+ #
3383
+ # * `UnusedCommitment`
3384
+ #
3385
+ # * `NetSavings`
3386
+ #
3387
+ # * `AmortizedRecurringCommitment`
3388
+ #
3389
+ # * `AmortizedUpfrontCommitment`
3390
+ #
3391
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
3392
+ #
2752
3393
  # @return [Types::GetSavingsPlansUtilizationDetailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2753
3394
  #
2754
3395
  # * {Types::GetSavingsPlansUtilizationDetailsResponse#savings_plans_utilization_details #savings_plans_utilization_details} => Array&lt;Types::SavingsPlansUtilizationDetail&gt;
@@ -2780,23 +3421,28 @@ module Aws::CostExplorer
2780
3421
  # # recursive Expression
2781
3422
  # },
2782
3423
  # 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
3424
+ # 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
3425
  # values: ["Value"],
2785
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3426
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2786
3427
  # },
2787
3428
  # tags: {
2788
3429
  # key: "TagKey",
2789
3430
  # values: ["Value"],
2790
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3431
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2791
3432
  # },
2792
3433
  # cost_categories: {
2793
3434
  # key: "CostCategoryName",
2794
3435
  # values: ["Value"],
2795
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3436
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2796
3437
  # },
2797
3438
  # },
3439
+ # data_type: ["ATTRIBUTES"], # accepts ATTRIBUTES, UTILIZATION, AMORTIZED_COMMITMENT, SAVINGS
2798
3440
  # next_token: "NextPageToken",
2799
3441
  # max_results: 1,
3442
+ # sort_by: {
3443
+ # key: "SortDefinitionKey", # required
3444
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3445
+ # },
2800
3446
  # })
2801
3447
  #
2802
3448
  # @example Response structure
@@ -2852,6 +3498,92 @@ module Aws::CostExplorer
2852
3498
  # @option params [String] :tag_key
2853
3499
  # The key of the tag that you want to return values for.
2854
3500
  #
3501
+ # @option params [Types::Expression] :filter
3502
+ # Use `Expression` to filter by cost or by usage. There are two
3503
+ # patterns:
3504
+ #
3505
+ # * Simple dimension values - You can set the dimension name and values
3506
+ # for the filters that you plan to use. For example, you can filter
3507
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
3508
+ # `GetRightsizingRecommendation`, the Region is a full name (for
3509
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
3510
+ # looks like:
3511
+ #
3512
+ # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
3513
+ # “us-west-1” ] \} \}`
3514
+ #
3515
+ # The list of dimension values are OR'd together to retrieve cost or
3516
+ # usage data. You can create `Expression` and `DimensionValues`
3517
+ # objects using either `with*` methods or `set*` methods in multiple
3518
+ # lines.
3519
+ #
3520
+ # * Compound dimension values with logical operations - You can use
3521
+ # multiple `Expression` types and the logical operators `AND/OR/NOT`
3522
+ # to create a list of one or more `Expression` objects. This allows
3523
+ # you to filter on more advanced options. For example, you can filter
3524
+ # on `((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type ==
3525
+ # Type1)) AND (USAGE_TYPE != DataTransfer)`. The `Expression` for that
3526
+ # looks like this:
3527
+ #
3528
+ # `\{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values":
3529
+ # [ "us-east-1", "us-west-1" ] \}\}, \{"Tags": \{ "Key": "TagName",
3530
+ # "Values": ["Value1"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key":
3531
+ # "USAGE_TYPE", "Values": ["DataTransfer"] \}\}\} ] \} `
3532
+ #
3533
+ # <note markdown="1"> Because each `Expression` can have only one operator, the service
3534
+ # returns an error if more than one is specified. The following
3535
+ # example shows an `Expression` object that creates an error.
3536
+ #
3537
+ # </note>
3538
+ #
3539
+ # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
3540
+ # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
3541
+ #
3542
+ # <note markdown="1"> For the `GetRightsizingRecommendation` action, a combination of OR and
3543
+ # NOT is not supported. OR is not supported between different
3544
+ # dimensions, or dimensions and tags. NOT operators aren't supported.
3545
+ # Dimensions are also limited to `LINKED_ACCOUNT`, `REGION`, or
3546
+ # `RIGHTSIZING_TYPE`.
3547
+ #
3548
+ # For the `GetReservationPurchaseRecommendation` action, only NOT is
3549
+ # supported. AND and OR are not supported. Dimensions are limited to
3550
+ # `LINKED_ACCOUNT`.
3551
+ #
3552
+ # </note>
3553
+ #
3554
+ # @option params [Array<Types::SortDefinition>] :sort_by
3555
+ # The value by which you want to sort the data.
3556
+ #
3557
+ # The key represents cost and usage metrics. The following values are
3558
+ # supported:
3559
+ #
3560
+ # * `BlendedCost`
3561
+ #
3562
+ # * `UnblendedCost`
3563
+ #
3564
+ # * `AmortizedCost`
3565
+ #
3566
+ # * `NetAmortizedCost`
3567
+ #
3568
+ # * `NetUnblendedCost`
3569
+ #
3570
+ # * `UsageQuantity`
3571
+ #
3572
+ # * `NormalizedUsageAmount`
3573
+ #
3574
+ # Supported values for `SortOrder` are `ASCENDING` or `DESCENDING`.
3575
+ #
3576
+ # When using `SortBy`, `NextPageToken` and `SearchString` are not
3577
+ # supported.
3578
+ #
3579
+ # @option params [Integer] :max_results
3580
+ # This field is only used when SortBy is provided in the request. The
3581
+ # maximum number of objects that to be returned for this request. If
3582
+ # MaxResults is not specified with SortBy, the request will return 1000
3583
+ # results as the default value for this parameter.
3584
+ #
3585
+ # For `GetTags`, MaxResults has an upper limit of 1000.
3586
+ #
2855
3587
  # @option params [String] :next_page_token
2856
3588
  # The token to retrieve the next set of results. AWS provides the token
2857
3589
  # when the response from a previous call has more results than the
@@ -2873,6 +3605,43 @@ module Aws::CostExplorer
2873
3605
  # end: "YearMonthDay", # required
2874
3606
  # },
2875
3607
  # tag_key: "TagKey",
3608
+ # filter: {
3609
+ # or: [
3610
+ # {
3611
+ # # recursive Expression
3612
+ # },
3613
+ # ],
3614
+ # and: [
3615
+ # {
3616
+ # # recursive Expression
3617
+ # },
3618
+ # ],
3619
+ # not: {
3620
+ # # recursive Expression
3621
+ # },
3622
+ # dimensions: {
3623
+ # 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
3624
+ # values: ["Value"],
3625
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3626
+ # },
3627
+ # tags: {
3628
+ # key: "TagKey",
3629
+ # values: ["Value"],
3630
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3631
+ # },
3632
+ # cost_categories: {
3633
+ # key: "CostCategoryName",
3634
+ # values: ["Value"],
3635
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3636
+ # },
3637
+ # },
3638
+ # sort_by: [
3639
+ # {
3640
+ # key: "SortDefinitionKey", # required
3641
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3642
+ # },
3643
+ # ],
3644
+ # max_results: 1,
2876
3645
  # next_page_token: "NextPageToken",
2877
3646
  # })
2878
3647
  #
@@ -2923,8 +3692,54 @@ module Aws::CostExplorer
2923
3692
  # granularities.
2924
3693
  #
2925
3694
  # @option params [Types::Expression] :filter
2926
- # The filters that you want to use to filter your forecast. Cost
2927
- # Explorer API supports all of the Cost Explorer filters.
3695
+ # The filters that you want to use to filter your forecast. The
3696
+ # `GetUsageForecast` API supports filtering by the following dimensions:
3697
+ #
3698
+ # * `AZ`
3699
+ #
3700
+ # * `INSTANCE_TYPE`
3701
+ #
3702
+ # * `LINKED_ACCOUNT`
3703
+ #
3704
+ # * `LINKED_ACCOUNT_NAME`
3705
+ #
3706
+ # * `OPERATION`
3707
+ #
3708
+ # * `PURCHASE_TYPE`
3709
+ #
3710
+ # * `REGION`
3711
+ #
3712
+ # * `SERVICE`
3713
+ #
3714
+ # * `USAGE_TYPE`
3715
+ #
3716
+ # * `USAGE_TYPE_GROUP`
3717
+ #
3718
+ # * `RECORD_TYPE`
3719
+ #
3720
+ # * `OPERATING_SYSTEM`
3721
+ #
3722
+ # * `TENANCY`
3723
+ #
3724
+ # * `SCOPE`
3725
+ #
3726
+ # * `PLATFORM`
3727
+ #
3728
+ # * `SUBSCRIPTION_ID`
3729
+ #
3730
+ # * `LEGAL_ENTITY_NAME`
3731
+ #
3732
+ # * `DEPLOYMENT_OPTION`
3733
+ #
3734
+ # * `DATABASE_ENGINE`
3735
+ #
3736
+ # * `INSTANCE_TYPE_FAMILY`
3737
+ #
3738
+ # * `BILLING_ENTITY`
3739
+ #
3740
+ # * `RESERVATION_ID`
3741
+ #
3742
+ # * `SAVINGS_PLAN_ARN`
2928
3743
  #
2929
3744
  # @option params [Integer] :prediction_interval_level
2930
3745
  # Cost Explorer always returns the mean forecast as a single point. You
@@ -2963,19 +3778,19 @@ module Aws::CostExplorer
2963
3778
  # # recursive Expression
2964
3779
  # },
2965
3780
  # 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
3781
+ # 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
3782
  # values: ["Value"],
2968
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3783
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2969
3784
  # },
2970
3785
  # tags: {
2971
3786
  # key: "TagKey",
2972
3787
  # values: ["Value"],
2973
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3788
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2974
3789
  # },
2975
3790
  # cost_categories: {
2976
3791
  # key: "CostCategoryName",
2977
3792
  # values: ["Value"],
2978
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3793
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2979
3794
  # },
2980
3795
  # },
2981
3796
  # prediction_interval_level: 1,
@@ -3049,6 +3864,7 @@ module Aws::CostExplorer
3049
3864
  # resp.cost_category_references[0].processing_status[0].status #=> String, one of "PROCESSING", "APPLIED"
3050
3865
  # resp.cost_category_references[0].values #=> Array
3051
3866
  # resp.cost_category_references[0].values[0] #=> String
3867
+ # resp.cost_category_references[0].default_value #=> String
3052
3868
  # resp.next_token #=> String
3053
3869
  #
3054
3870
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ListCostCategoryDefinitions AWS API Documentation
@@ -3200,6 +4016,9 @@ module Aws::CostExplorer
3200
4016
  #
3201
4017
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_CostCategoryRule.html
3202
4018
  #
4019
+ # @option params [String] :default_value
4020
+ # The default value for the cost category.
4021
+ #
3203
4022
  # @return [Types::UpdateCostCategoryDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3204
4023
  #
3205
4024
  # * {Types::UpdateCostCategoryDefinitionResponse#cost_category_arn #cost_category_arn} => String
@@ -3212,8 +4031,8 @@ module Aws::CostExplorer
3212
4031
  # rule_version: "CostCategoryExpression.v1", # required, accepts CostCategoryExpression.v1
3213
4032
  # rules: [ # required
3214
4033
  # {
3215
- # value: "CostCategoryValue", # required
3216
- # rule: { # required
4034
+ # value: "CostCategoryValue",
4035
+ # rule: {
3217
4036
  # or: [
3218
4037
  # {
3219
4038
  # # recursive Expression
@@ -3228,23 +4047,29 @@ module Aws::CostExplorer
3228
4047
  # # recursive Expression
3229
4048
  # },
3230
4049
  # 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
4050
+ # 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
4051
  # values: ["Value"],
3233
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
4052
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3234
4053
  # },
3235
4054
  # tags: {
3236
4055
  # key: "TagKey",
3237
4056
  # values: ["Value"],
3238
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
4057
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3239
4058
  # },
3240
4059
  # cost_categories: {
3241
4060
  # key: "CostCategoryName",
3242
4061
  # values: ["Value"],
3243
- # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
4062
+ # match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
3244
4063
  # },
3245
4064
  # },
4065
+ # inherited_value: {
4066
+ # dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
4067
+ # dimension_key: "GenericString",
4068
+ # },
4069
+ # type: "REGULAR", # accepts REGULAR, INHERITED_VALUE
3246
4070
  # },
3247
4071
  # ],
4072
+ # default_value: "CostCategoryValue",
3248
4073
  # })
3249
4074
  #
3250
4075
  # @example Response structure
@@ -3274,7 +4099,7 @@ module Aws::CostExplorer
3274
4099
  params: params,
3275
4100
  config: config)
3276
4101
  context[:gem_name] = 'aws-sdk-costexplorer'
3277
- context[:gem_version] = '1.55.0'
4102
+ context[:gem_version] = '1.60.0'
3278
4103
  Seahorse::Client::Request.new(handlers, context)
3279
4104
  end
3280
4105