aws-sdk-costexplorer 1.52.0 → 1.57.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: '04803150baa34e220ad9f1d8aba16ec9e785ce813789155ccebe8e339dafe006'
4
- data.tar.gz: a33f0130626afe470c9fe78b4f20c4a82b9bddadfd622d6ca51ab0b98fb7d102
3
+ metadata.gz: d85cf5f3240cf155d437293d6c7df1b3d8563ffca0600bbf9b949635393d8d29
4
+ data.tar.gz: 0fb516d77176c9e09aeca13312f06064ffd39ea8ce17bb8b8df4bf8999e5ee92
5
5
  SHA512:
6
- metadata.gz: 0b04966b37fc6cfd8cf503ecce1d9dcc87343c5b5cfd9114fc21c704c8737960cd81f2e1d58787426b14d73cb2e762e473a79e074c437be889ebf1ce5e367521
7
- data.tar.gz: 426c346572001de07b9f97ec7518c0bdd5439da4c70a0cd791d800abae2dd6f1603ec23d82642585d68a3326ad97536b665286de9bc225d654e971b896697f50
6
+ metadata.gz: 19ebb2ee1c9ae12308c5a0bd7d2b767dc2ac2c738220013858749a9c7fcb03a2c0ff25577fe029bd2d8bd1ae131476e7f4b0cc4964f71fb38076e514160f50e9
7
+ data.tar.gz: ace84c9b4bdb084a79fb1432214727883397535583691e0ded5599ced7f854867c770103187f10d82adf2a1c4d7721c5e202c94b1d90479ef4cc854d9a445459
@@ -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.52.0'
51
+ GEM_VERSION = '1.57.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,
@@ -423,7 +423,7 @@ module Aws::CostExplorer
423
423
  # anomaly_subscription: { # required
424
424
  # subscription_arn: "GenericString",
425
425
  # account_id: "GenericString",
426
- # monitor_arn_list: ["Value"], # required
426
+ # monitor_arn_list: ["Arn"], # required
427
427
  # subscribers: [ # required
428
428
  # {
429
429
  # address: "SubscriberAddress",
@@ -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
  #
@@ -884,13 +884,17 @@ module Aws::CostExplorer
884
884
  # `UsageQuantity`, that you want the request to return. You can also
885
885
  # filter and group your data by various dimensions, such as `SERVICE` or
886
886
  # `AZ`, in a specific time range. For a complete list of valid
887
- # dimensions, see the [GetDimensionValues][1] operation. Master account
888
- # in an organization in AWS Organizations have access to all member
889
- # accounts.
887
+ # dimensions, see the [GetDimensionValues][1] operation. Management
888
+ # account in an organization in AWS Organizations have access to all
889
+ # member accounts.
890
+ #
891
+ # For information about filter limitations, see [Quotas and
892
+ # restrictions][2] in the *Billing and Cost Management User Guide*.
890
893
  #
891
894
  #
892
895
  #
893
896
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetDimensionValues.html
897
+ # [2]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-limits.html
894
898
  #
895
899
  # @option params [required, Types::DateInterval] :time_period
896
900
  # Sets the start and end dates for retrieving AWS costs. The start date
@@ -961,6 +965,7 @@ module Aws::CostExplorer
961
965
  # * {Types::GetCostAndUsageResponse#next_page_token #next_page_token} => String
962
966
  # * {Types::GetCostAndUsageResponse#group_definitions #group_definitions} => Array<Types::GroupDefinition>
963
967
  # * {Types::GetCostAndUsageResponse#results_by_time #results_by_time} => Array<Types::ResultByTime>
968
+ # * {Types::GetCostAndUsageResponse#dimension_value_attributes #dimension_value_attributes} => Array<Types::DimensionValuesWithAttributes>
964
969
  #
965
970
  # @example Request syntax with placeholder values
966
971
  #
@@ -985,19 +990,19 @@ module Aws::CostExplorer
985
990
  # # recursive Expression
986
991
  # },
987
992
  # dimensions: {
988
- # 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
989
994
  # values: ["Value"],
990
- # 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
991
996
  # },
992
997
  # tags: {
993
998
  # key: "TagKey",
994
999
  # values: ["Value"],
995
- # 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
996
1001
  # },
997
1002
  # cost_categories: {
998
1003
  # key: "CostCategoryName",
999
1004
  # values: ["Value"],
1000
- # 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
1001
1006
  # },
1002
1007
  # },
1003
1008
  # metrics: ["MetricName"], # required
@@ -1029,6 +1034,10 @@ module Aws::CostExplorer
1029
1034
  # resp.results_by_time[0].groups[0].metrics["MetricName"].amount #=> String
1030
1035
  # resp.results_by_time[0].groups[0].metrics["MetricName"].unit #=> String
1031
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>
1032
1041
  #
1033
1042
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostAndUsage AWS API Documentation
1034
1043
  #
@@ -1045,8 +1054,8 @@ module Aws::CostExplorer
1045
1054
  # return. You can also filter and group your data by various dimensions,
1046
1055
  # such as `SERVICE` or `AZ`, in a specific time range. For a complete
1047
1056
  # list of valid dimensions, see the [GetDimensionValues][1] operation.
1048
- # Master account in an organization in AWS Organizations have access to
1049
- # all member accounts. This API is currently available for the Amazon
1057
+ # Management account in an organization in AWS Organizations have access
1058
+ # to all member accounts. This API is currently available for the Amazon
1050
1059
  # Elastic Compute Cloud – Compute service only.
1051
1060
  #
1052
1061
  # <note markdown="1"> This is an opt-in only feature. You can enable this feature from the
@@ -1129,6 +1138,7 @@ module Aws::CostExplorer
1129
1138
  # * {Types::GetCostAndUsageWithResourcesResponse#next_page_token #next_page_token} => String
1130
1139
  # * {Types::GetCostAndUsageWithResourcesResponse#group_definitions #group_definitions} => Array&lt;Types::GroupDefinition&gt;
1131
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;
1132
1142
  #
1133
1143
  # @example Request syntax with placeholder values
1134
1144
  #
@@ -1153,19 +1163,19 @@ module Aws::CostExplorer
1153
1163
  # # recursive Expression
1154
1164
  # },
1155
1165
  # dimensions: {
1156
- # 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
1157
1167
  # values: ["Value"],
1158
- # 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
1159
1169
  # },
1160
1170
  # tags: {
1161
1171
  # key: "TagKey",
1162
1172
  # values: ["Value"],
1163
- # 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
1164
1174
  # },
1165
1175
  # cost_categories: {
1166
1176
  # key: "CostCategoryName",
1167
1177
  # values: ["Value"],
1168
- # 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
1169
1179
  # },
1170
1180
  # },
1171
1181
  # metrics: ["MetricName"],
@@ -1197,6 +1207,10 @@ module Aws::CostExplorer
1197
1207
  # resp.results_by_time[0].groups[0].metrics["MetricName"].amount #=> String
1198
1208
  # resp.results_by_time[0].groups[0].metrics["MetricName"].unit #=> String
1199
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>
1200
1214
  #
1201
1215
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetCostAndUsageWithResources AWS API Documentation
1202
1216
  #
@@ -1207,6 +1221,195 @@ module Aws::CostExplorer
1207
1221
  req.send_request(options)
1208
1222
  end
1209
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
+
1210
1413
  # Retrieves a forecast for how much Amazon Web Services predicts that
1211
1414
  # you will spend over the forecast time period that you select, based on
1212
1415
  # your past costs.
@@ -1285,19 +1488,19 @@ module Aws::CostExplorer
1285
1488
  # # recursive Expression
1286
1489
  # },
1287
1490
  # dimensions: {
1288
- # 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
1289
1492
  # values: ["Value"],
1290
- # 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
1291
1494
  # },
1292
1495
  # tags: {
1293
1496
  # key: "TagKey",
1294
1497
  # values: ["Value"],
1295
- # 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
1296
1499
  # },
1297
1500
  # cost_categories: {
1298
1501
  # key: "CostCategoryName",
1299
1502
  # values: ["Value"],
1300
- # 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
1301
1504
  # },
1302
1505
  # },
1303
1506
  # prediction_interval_level: 1,
@@ -1451,6 +1654,91 @@ module Aws::CostExplorer
1451
1654
  #
1452
1655
  # * SAVINGS\_PLAN\_ARN - The unique identifier for your Savings Plan
1453
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
+ #
1454
1742
  # @option params [String] :next_page_token
1455
1743
  # The token to retrieve the next set of results. AWS provides the token
1456
1744
  # when the response from a previous call has more results than the
@@ -1471,8 +1759,45 @@ module Aws::CostExplorer
1471
1759
  # start: "YearMonthDay", # required
1472
1760
  # end: "YearMonthDay", # required
1473
1761
  # },
1474
- # 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
1475
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,
1476
1801
  # next_page_token: "NextPageToken",
1477
1802
  # })
1478
1803
  #
@@ -1498,11 +1823,11 @@ module Aws::CostExplorer
1498
1823
  # Retrieves the reservation coverage for your account. This enables you
1499
1824
  # to see how much of your Amazon Elastic Compute Cloud, Amazon
1500
1825
  # ElastiCache, Amazon Relational Database Service, or Amazon Redshift
1501
- # usage is covered by a reservation. An organization's master account
1502
- # can see the coverage of the associated member accounts. This supports
1503
- # dimensions, Cost Categories, and nested expressions. For any time
1504
- # period, you can filter data about reservation usage by the following
1505
- # dimensions:
1826
+ # usage is covered by a reservation. An organization's management
1827
+ # account can see the coverage of the associated member accounts. This
1828
+ # supports dimensions, Cost Categories, and nested expressions. For any
1829
+ # time period, you can filter data about reservation usage by the
1830
+ # following dimensions:
1506
1831
  #
1507
1832
  # * AZ
1508
1833
  #
@@ -1627,6 +1952,39 @@ module Aws::CostExplorer
1627
1952
  # when the response from a previous call has more results than the
1628
1953
  # maximum page size.
1629
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
+ #
1630
1988
  # @return [Types::GetReservationCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1631
1989
  #
1632
1990
  # * {Types::GetReservationCoverageResponse#coverages_by_time #coverages_by_time} => Array&lt;Types::CoverageByTime&gt;
@@ -1662,23 +2020,28 @@ module Aws::CostExplorer
1662
2020
  # # recursive Expression
1663
2021
  # },
1664
2022
  # dimensions: {
1665
- # 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
1666
2024
  # values: ["Value"],
1667
- # 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
1668
2026
  # },
1669
2027
  # tags: {
1670
2028
  # key: "TagKey",
1671
2029
  # values: ["Value"],
1672
- # 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
1673
2031
  # },
1674
2032
  # cost_categories: {
1675
2033
  # key: "CostCategoryName",
1676
2034
  # values: ["Value"],
1677
- # 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
1678
2036
  # },
1679
2037
  # },
1680
2038
  # metrics: ["MetricName"],
1681
2039
  # next_page_token: "NextPageToken",
2040
+ # sort_by: {
2041
+ # key: "SortDefinitionKey", # required
2042
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2043
+ # },
2044
+ # max_results: 1,
1682
2045
  # })
1683
2046
  #
1684
2047
  # @example Response structure
@@ -1754,10 +2117,63 @@ module Aws::CostExplorer
1754
2117
  # @option params [required, String] :service
1755
2118
  # The specific service that you want recommendations for.
1756
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
+ #
1757
2173
  # @option params [String] :account_scope
1758
2174
  # The account scope that you want your recommendations for. Amazon Web
1759
- # Services calculates recommendations including the master account and
1760
- # member accounts if the value is set to `PAYER`. If the value is
2175
+ # Services calculates recommendations including the management account
2176
+ # and member accounts if the value is set to `PAYER`. If the value is
1761
2177
  # `LINKED`, recommendations are calculated for individual member
1762
2178
  # accounts only.
1763
2179
  #
@@ -1795,6 +2211,36 @@ module Aws::CostExplorer
1795
2211
  # resp = client.get_reservation_purchase_recommendation({
1796
2212
  # account_id: "GenericString",
1797
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
+ # },
1798
2244
  # account_scope: "PAYER", # accepts PAYER, LINKED
1799
2245
  # lookback_period_in_days: "SEVEN_DAYS", # accepts SEVEN_DAYS, THIRTY_DAYS, SIXTY_DAYS
1800
2246
  # term_in_years: "ONE_YEAR", # accepts ONE_YEAR, THREE_YEARS
@@ -1884,11 +2330,11 @@ module Aws::CostExplorer
1884
2330
  req.send_request(options)
1885
2331
  end
1886
2332
 
1887
- # Retrieves the reservation utilization for your account. Master account
1888
- # in an organization have access to member accounts. You can filter data
1889
- # by dimensions in a time period. You can use `GetDimensionValues` to
1890
- # determine the possible dimension values. Currently, you can group only
1891
- # by `SUBSCRIPTION_ID`.
2333
+ # Retrieves the reservation utilization for your account. Management
2334
+ # account in an organization have access to member accounts. You can
2335
+ # filter data by dimensions in a time period. You can use
2336
+ # `GetDimensionValues` to determine the possible dimension values.
2337
+ # Currently, you can group only by `SUBSCRIPTION_ID`.
1892
2338
  #
1893
2339
  # @option params [required, Types::DateInterval] :time_period
1894
2340
  # Sets the start and end dates for retrieving RI utilization. The start
@@ -1944,11 +2390,58 @@ module Aws::CostExplorer
1944
2390
  #
1945
2391
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
1946
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
+ #
1947
2434
  # @option params [String] :next_page_token
1948
2435
  # The token to retrieve the next set of results. AWS provides the token
1949
2436
  # when the response from a previous call has more results than the
1950
2437
  # maximum page size.
1951
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
+ #
1952
2445
  # @return [Types::GetReservationUtilizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1953
2446
  #
1954
2447
  # * {Types::GetReservationUtilizationResponse#utilizations_by_time #utilizations_by_time} => Array&lt;Types::UtilizationByTime&gt;
@@ -1984,22 +2477,27 @@ module Aws::CostExplorer
1984
2477
  # # recursive Expression
1985
2478
  # },
1986
2479
  # dimensions: {
1987
- # 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
1988
2481
  # values: ["Value"],
1989
- # 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
1990
2483
  # },
1991
2484
  # tags: {
1992
2485
  # key: "TagKey",
1993
2486
  # values: ["Value"],
1994
- # 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
1995
2488
  # },
1996
2489
  # cost_categories: {
1997
2490
  # key: "CostCategoryName",
1998
2491
  # values: ["Value"],
1999
- # 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
2000
2493
  # },
2001
2494
  # },
2495
+ # sort_by: {
2496
+ # key: "SortDefinitionKey", # required
2497
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2498
+ # },
2002
2499
  # next_page_token: "NextPageToken",
2500
+ # max_results: 1,
2003
2501
  # })
2004
2502
  #
2005
2503
  # @example Response structure
@@ -2026,6 +2524,9 @@ module Aws::CostExplorer
2026
2524
  # resp.utilizations_by_time[0].groups[0].utilization.amortized_upfront_fee #=> String
2027
2525
  # resp.utilizations_by_time[0].groups[0].utilization.amortized_recurring_fee #=> String
2028
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
2029
2530
  # resp.utilizations_by_time[0].total.utilization_percentage #=> String
2030
2531
  # resp.utilizations_by_time[0].total.utilization_percentage_in_units #=> String
2031
2532
  # resp.utilizations_by_time[0].total.purchased_hours #=> String
@@ -2040,6 +2541,9 @@ module Aws::CostExplorer
2040
2541
  # resp.utilizations_by_time[0].total.amortized_upfront_fee #=> String
2041
2542
  # resp.utilizations_by_time[0].total.amortized_recurring_fee #=> String
2042
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
2043
2547
  # resp.total.utilization_percentage #=> String
2044
2548
  # resp.total.utilization_percentage_in_units #=> String
2045
2549
  # resp.total.purchased_hours #=> String
@@ -2054,6 +2558,9 @@ module Aws::CostExplorer
2054
2558
  # resp.total.amortized_upfront_fee #=> String
2055
2559
  # resp.total.amortized_recurring_fee #=> String
2056
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
2057
2564
  # resp.next_page_token #=> String
2058
2565
  #
2059
2566
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetReservationUtilization AWS API Documentation
@@ -2119,10 +2626,15 @@ module Aws::CostExplorer
2119
2626
  # ` \{ "And": [ ... ], "DimensionValues": \{ "Dimension":
2120
2627
  # "USAGE_TYPE", "Values": [ "DataTransfer" ] \} \} `
2121
2628
  #
2122
- # <note markdown="1"> For `GetRightsizingRecommendation` action, a combination of OR and NOT
2123
- # is not supported. OR is not supported between different dimensions, or
2124
- # dimensions and tags. NOT operators aren't supported. Dimensions are
2125
- # 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`.
2126
2638
  #
2127
2639
  # </note>
2128
2640
  #
@@ -2172,19 +2684,19 @@ module Aws::CostExplorer
2172
2684
  # # recursive Expression
2173
2685
  # },
2174
2686
  # dimensions: {
2175
- # 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
2176
2688
  # values: ["Value"],
2177
- # 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
2178
2690
  # },
2179
2691
  # tags: {
2180
2692
  # key: "TagKey",
2181
2693
  # values: ["Value"],
2182
- # 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
2183
2695
  # },
2184
2696
  # cost_categories: {
2185
2697
  # key: "CostCategoryName",
2186
2698
  # values: ["Value"],
2187
- # 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
2188
2700
  # },
2189
2701
  # },
2190
2702
  # configuration: {
@@ -2201,6 +2713,7 @@ module Aws::CostExplorer
2201
2713
  # resp.metadata.recommendation_id #=> String
2202
2714
  # resp.metadata.generation_timestamp #=> String
2203
2715
  # resp.metadata.lookback_period_in_days #=> String, one of "SEVEN_DAYS", "THIRTY_DAYS", "SIXTY_DAYS"
2716
+ # resp.metadata.additional_metadata #=> String
2204
2717
  # resp.summary.total_recommendation_count #=> String
2205
2718
  # resp.summary.estimated_total_monthly_savings_amount #=> String
2206
2719
  # resp.summary.savings_currency_code #=> String
@@ -2214,7 +2727,7 @@ module Aws::CostExplorer
2214
2727
  # resp.rightsizing_recommendations[0].current_instance.tags[0].values #=> Array
2215
2728
  # resp.rightsizing_recommendations[0].current_instance.tags[0].values[0] #=> String
2216
2729
  # resp.rightsizing_recommendations[0].current_instance.tags[0].match_options #=> Array
2217
- # 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"
2218
2731
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.hourly_on_demand_rate #=> String
2219
2732
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.instance_type #=> String
2220
2733
  # resp.rightsizing_recommendations[0].current_instance.resource_details.ec2_resource_details.platform #=> String
@@ -2276,10 +2789,10 @@ module Aws::CostExplorer
2276
2789
 
2277
2790
  # Retrieves the Savings Plans covered for your account. This enables you
2278
2791
  # to see how much of your cost is covered by a Savings Plan. An
2279
- # organization’s master account can see the coverage of the associated
2280
- # member accounts. This supports dimensions, Cost Categories, and nested
2281
- # expressions. For any time period, you can filter data for Savings
2282
- # Plans usage with the following dimensions:
2792
+ # organization’s management account can see the coverage of the
2793
+ # associated member accounts. This supports dimensions, Cost Categories,
2794
+ # and nested expressions. For any time period, you can filter data for
2795
+ # Savings Plans usage with the following dimensions:
2283
2796
  #
2284
2797
  # * `LINKED_ACCOUNT`
2285
2798
  #
@@ -2344,6 +2857,27 @@ module Aws::CostExplorer
2344
2857
  # The number of items to be returned in a response. The default is `20`,
2345
2858
  # with a minimum value of `1`.
2346
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
+ #
2347
2881
  # @return [Types::GetSavingsPlansCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2348
2882
  #
2349
2883
  # * {Types::GetSavingsPlansCoverageResponse#savings_plans_coverages #savings_plans_coverages} => Array&lt;Types::SavingsPlansCoverage&gt;
@@ -2380,24 +2914,28 @@ module Aws::CostExplorer
2380
2914
  # # recursive Expression
2381
2915
  # },
2382
2916
  # dimensions: {
2383
- # 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
2384
2918
  # values: ["Value"],
2385
- # 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
2386
2920
  # },
2387
2921
  # tags: {
2388
2922
  # key: "TagKey",
2389
2923
  # values: ["Value"],
2390
- # 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
2391
2925
  # },
2392
2926
  # cost_categories: {
2393
2927
  # key: "CostCategoryName",
2394
2928
  # values: ["Value"],
2395
- # 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
2396
2930
  # },
2397
2931
  # },
2398
2932
  # metrics: ["MetricName"],
2399
2933
  # next_token: "NextPageToken",
2400
2934
  # max_results: 1,
2935
+ # sort_by: {
2936
+ # key: "SortDefinitionKey", # required
2937
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2938
+ # },
2401
2939
  # })
2402
2940
  #
2403
2941
  # @example Response structure
@@ -2437,8 +2975,8 @@ module Aws::CostExplorer
2437
2975
  #
2438
2976
  # @option params [String] :account_scope
2439
2977
  # The account scope that you want your recommendations for. Amazon Web
2440
- # Services calculates recommendations including the master account and
2441
- # member accounts if the value is set to `PAYER`. If the value is
2978
+ # Services calculates recommendations including the management account
2979
+ # and member accounts if the value is set to `PAYER`. If the value is
2442
2980
  # `LINKED`, recommendations are calculated for individual member
2443
2981
  # accounts only.
2444
2982
  #
@@ -2499,19 +3037,19 @@ module Aws::CostExplorer
2499
3037
  # # recursive Expression
2500
3038
  # },
2501
3039
  # dimensions: {
2502
- # 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
2503
3041
  # values: ["Value"],
2504
- # 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
2505
3043
  # },
2506
3044
  # tags: {
2507
3045
  # key: "TagKey",
2508
3046
  # values: ["Value"],
2509
- # 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
2510
3048
  # },
2511
3049
  # cost_categories: {
2512
3050
  # key: "CostCategoryName",
2513
3051
  # values: ["Value"],
2514
- # 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
2515
3053
  # },
2516
3054
  # },
2517
3055
  # })
@@ -2520,6 +3058,7 @@ module Aws::CostExplorer
2520
3058
  #
2521
3059
  # resp.metadata.recommendation_id #=> String
2522
3060
  # resp.metadata.generation_timestamp #=> String
3061
+ # resp.metadata.additional_metadata #=> String
2523
3062
  # resp.savings_plans_purchase_recommendation.account_scope #=> String, one of "PAYER", "LINKED"
2524
3063
  # resp.savings_plans_purchase_recommendation.savings_plans_type #=> String, one of "COMPUTE_SP", "EC2_INSTANCE_SP"
2525
3064
  # resp.savings_plans_purchase_recommendation.term_in_years #=> String, one of "ONE_YEAR", "THREE_YEARS"
@@ -2567,7 +3106,7 @@ module Aws::CostExplorer
2567
3106
  end
2568
3107
 
2569
3108
  # Retrieves the Savings Plans utilization for your account across date
2570
- # ranges with daily or monthly granularity. Master account in an
3109
+ # ranges with daily or monthly granularity. Management account in an
2571
3110
  # organization have access to member accounts. You can use
2572
3111
  # `GetDimensionValues` in `SAVINGS_PLANS` to determine the possible
2573
3112
  # dimension values.
@@ -2614,6 +3153,23 @@ module Aws::CostExplorer
2614
3153
  #
2615
3154
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
2616
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
+ #
2617
3173
  # @return [Types::GetSavingsPlansUtilizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2618
3174
  #
2619
3175
  # * {Types::GetSavingsPlansUtilizationResponse#savings_plans_utilizations_by_time #savings_plans_utilizations_by_time} => Array&lt;Types::SavingsPlansUtilizationByTime&gt;
@@ -2642,21 +3198,25 @@ module Aws::CostExplorer
2642
3198
  # # recursive Expression
2643
3199
  # },
2644
3200
  # dimensions: {
2645
- # 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
2646
3202
  # values: ["Value"],
2647
- # 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
2648
3204
  # },
2649
3205
  # tags: {
2650
3206
  # key: "TagKey",
2651
3207
  # values: ["Value"],
2652
- # 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
2653
3209
  # },
2654
3210
  # cost_categories: {
2655
3211
  # key: "CostCategoryName",
2656
3212
  # values: ["Value"],
2657
- # 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
2658
3214
  # },
2659
3215
  # },
3216
+ # sort_by: {
3217
+ # key: "SortDefinitionKey", # required
3218
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3219
+ # },
2660
3220
  # })
2661
3221
  #
2662
3222
  # @example Response structure
@@ -2734,6 +3294,9 @@ module Aws::CostExplorer
2734
3294
  #
2735
3295
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
2736
3296
  #
3297
+ # @option params [Array<String>] :data_type
3298
+ # The data type.
3299
+ #
2737
3300
  # @option params [String] :next_token
2738
3301
  # The token to retrieve the next set of results. Amazon Web Services
2739
3302
  # provides the token when the response from a previous call has more
@@ -2743,6 +3306,27 @@ module Aws::CostExplorer
2743
3306
  # The number of items to be returned in a response. The default is `20`,
2744
3307
  # with a minimum value of `1`.
2745
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
+ #
2746
3330
  # @return [Types::GetSavingsPlansUtilizationDetailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2747
3331
  #
2748
3332
  # * {Types::GetSavingsPlansUtilizationDetailsResponse#savings_plans_utilization_details #savings_plans_utilization_details} => Array&lt;Types::SavingsPlansUtilizationDetail&gt;
@@ -2774,23 +3358,28 @@ module Aws::CostExplorer
2774
3358
  # # recursive Expression
2775
3359
  # },
2776
3360
  # dimensions: {
2777
- # 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
2778
3362
  # values: ["Value"],
2779
- # 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
2780
3364
  # },
2781
3365
  # tags: {
2782
3366
  # key: "TagKey",
2783
3367
  # values: ["Value"],
2784
- # 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
2785
3369
  # },
2786
3370
  # cost_categories: {
2787
3371
  # key: "CostCategoryName",
2788
3372
  # values: ["Value"],
2789
- # 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
2790
3374
  # },
2791
3375
  # },
3376
+ # data_type: ["ATTRIBUTES"], # accepts ATTRIBUTES, UTILIZATION, AMORTIZED_COMMITMENT, SAVINGS
2792
3377
  # next_token: "NextPageToken",
2793
3378
  # max_results: 1,
3379
+ # sort_by: {
3380
+ # key: "SortDefinitionKey", # required
3381
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
3382
+ # },
2794
3383
  # })
2795
3384
  #
2796
3385
  # @example Response structure
@@ -2846,6 +3435,90 @@ module Aws::CostExplorer
2846
3435
  # @option params [String] :tag_key
2847
3436
  # The key of the tag that you want to return values for.
2848
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
+ #
2849
3522
  # @option params [String] :next_page_token
2850
3523
  # The token to retrieve the next set of results. AWS provides the token
2851
3524
  # when the response from a previous call has more results than the
@@ -2867,6 +3540,43 @@ module Aws::CostExplorer
2867
3540
  # end: "YearMonthDay", # required
2868
3541
  # },
2869
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,
2870
3580
  # next_page_token: "NextPageToken",
2871
3581
  # })
2872
3582
  #
@@ -2957,19 +3667,19 @@ module Aws::CostExplorer
2957
3667
  # # recursive Expression
2958
3668
  # },
2959
3669
  # dimensions: {
2960
- # 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
2961
3671
  # values: ["Value"],
2962
- # 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
2963
3673
  # },
2964
3674
  # tags: {
2965
3675
  # key: "TagKey",
2966
3676
  # values: ["Value"],
2967
- # 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
2968
3678
  # },
2969
3679
  # cost_categories: {
2970
3680
  # key: "CostCategoryName",
2971
3681
  # values: ["Value"],
2972
- # 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
2973
3683
  # },
2974
3684
  # },
2975
3685
  # prediction_interval_level: 1,
@@ -3133,7 +3843,7 @@ module Aws::CostExplorer
3133
3843
  # notifications.
3134
3844
  #
3135
3845
  # @option params [Array<String>] :monitor_arn_list
3136
- # A list of cost anomaly subscription ARNs.
3846
+ # A list of cost anomaly monitor ARNs.
3137
3847
  #
3138
3848
  # @option params [Array<Types::Subscriber>] :subscribers
3139
3849
  # The update to the subscriber list.
@@ -3151,7 +3861,7 @@ module Aws::CostExplorer
3151
3861
  # subscription_arn: "GenericString", # required
3152
3862
  # threshold: 1.0,
3153
3863
  # frequency: "DAILY", # accepts DAILY, IMMEDIATE, WEEKLY
3154
- # monitor_arn_list: ["Value"],
3864
+ # monitor_arn_list: ["Arn"],
3155
3865
  # subscribers: [
3156
3866
  # {
3157
3867
  # address: "SubscriberAddress",
@@ -3222,19 +3932,19 @@ module Aws::CostExplorer
3222
3932
  # # recursive Expression
3223
3933
  # },
3224
3934
  # dimensions: {
3225
- # 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
3226
3936
  # values: ["Value"],
3227
- # 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
3228
3938
  # },
3229
3939
  # tags: {
3230
3940
  # key: "TagKey",
3231
3941
  # values: ["Value"],
3232
- # 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
3233
3943
  # },
3234
3944
  # cost_categories: {
3235
3945
  # key: "CostCategoryName",
3236
3946
  # values: ["Value"],
3237
- # 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
3238
3948
  # },
3239
3949
  # },
3240
3950
  # },
@@ -3268,7 +3978,7 @@ module Aws::CostExplorer
3268
3978
  params: params,
3269
3979
  config: config)
3270
3980
  context[:gem_name] = 'aws-sdk-costexplorer'
3271
- context[:gem_version] = '1.52.0'
3981
+ context[:gem_version] = '1.57.0'
3272
3982
  Seahorse::Client::Request.new(handlers, context)
3273
3983
  end
3274
3984