aws-sdk-costexplorer 1.30.0 → 1.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c36d41262d587afdde65925edaed1ad7b22ac5e0
4
- data.tar.gz: 144ada1041ba8ecadd4e6e140e7abf41b6d03e9a
3
+ metadata.gz: '0429c3b21284c78bb9e4e3e24cd251a7cebcfcd2'
4
+ data.tar.gz: 60b6d320e584c57f380cbe13d363bc8ab689a2ed
5
5
  SHA512:
6
- metadata.gz: 97b3368c2a8e0ac783bde39d9aec96c33b5e9500a84494e722c25fb8e145d68dbfe640cf4b250cad08dbaae5d509b1acaf4836746bc9f1e0da4dd0a6d0c38ff2
7
- data.tar.gz: 65b46a8a05616653e3ba8c4dfd69e5765099ddabe8f1741b5f16f91ed744e645377b03aca38074c2a7ed4c2b873fa5beca1e26cad9ea4447a7c279b9a4a6f3ea
6
+ metadata.gz: ac41f94ec99ffd9b4eab6613fb20bdbf49d666a9765921d58872dff64052f8588cb37c0181a489aad8fe3db8d6a52f52be08c72d2a7a69765887c597613a7d97
7
+ data.tar.gz: '0861b0b300ce2b9b248d1eac95a9d418e1ab658ce7d44d45bd6b522b340273fdc9b4ddd3e72b56c3c32053584fbb89b89024ef051df40b231adaba774ca5ba5e'
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-costexplorer/customizations'
42
42
  # @service
43
43
  module Aws::CostExplorer
44
44
 
45
- GEM_VERSION = '1.30.0'
45
+ GEM_VERSION = '1.31.0'
46
46
 
47
47
  end
@@ -373,7 +373,7 @@ module Aws::CostExplorer
373
373
  # # recursive Expression
374
374
  # },
375
375
  # dimensions: {
376
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE
376
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
377
377
  # values: ["Value"],
378
378
  # },
379
379
  # tags: {
@@ -496,7 +496,7 @@ module Aws::CostExplorer
496
496
  # # recursive Expression
497
497
  # },
498
498
  # dimensions: {
499
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE
499
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
500
500
  # values: ["Value"],
501
501
  # },
502
502
  # tags: {
@@ -630,6 +630,25 @@ module Aws::CostExplorer
630
630
  # * TENANCY - The tenancy of a resource. Examples are shared or
631
631
  # dedicated.
632
632
  #
633
+ # If you set the context to `SAVINGS_PLANS`, you can use the following
634
+ # dimensions for searching:
635
+ #
636
+ # * SAVINGS\_PLANS\_TYPE - Type of Savings Plans (EC2 Instance or
637
+ # Compute)
638
+ #
639
+ # * PAYMENT\_OPTION - Payment option for the given Savings Plans (for
640
+ # example, All Upfront)
641
+ #
642
+ # * REGION - The AWS Region.
643
+ #
644
+ # * INSTANCE\_TYPE\_FAMILY - The family of instances (For example, `m5`)
645
+ #
646
+ # * LINKED\_ACCOUNT - The description in the attribute map that includes
647
+ # the full name of the member account. The value field contains the
648
+ # AWS ID of the member account.
649
+ #
650
+ # * SAVINGS\_PLAN\_ARN - The unique identifier for your Savings Plan
651
+ #
633
652
  # @option params [String] :next_page_token
634
653
  # The token to retrieve the next set of results. AWS provides the token
635
654
  # when the response from a previous call has more results than the
@@ -650,8 +669,8 @@ module Aws::CostExplorer
650
669
  # start: "YearMonthDay", # required
651
670
  # end: "YearMonthDay", # required
652
671
  # },
653
- # dimension: "AZ", # required, accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE
654
- # context: "COST_AND_USAGE", # accepts COST_AND_USAGE, RESERVATIONS
672
+ # dimension: "AZ", # required, accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
673
+ # context: "COST_AND_USAGE", # accepts COST_AND_USAGE, RESERVATIONS, SAVINGS_PLANS
655
674
  # next_page_token: "NextPageToken",
656
675
  # })
657
676
  #
@@ -838,7 +857,7 @@ module Aws::CostExplorer
838
857
  # # recursive Expression
839
858
  # },
840
859
  # dimensions: {
841
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE
860
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
842
861
  # values: ["Value"],
843
862
  # },
844
863
  # tags: {
@@ -1156,7 +1175,7 @@ module Aws::CostExplorer
1156
1175
  # # recursive Expression
1157
1176
  # },
1158
1177
  # dimensions: {
1159
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE
1178
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1160
1179
  # values: ["Value"],
1161
1180
  # },
1162
1181
  # tags: {
@@ -1283,13 +1302,14 @@ module Aws::CostExplorer
1283
1302
  #
1284
1303
  # <note markdown="1"> For `GetRightsizingRecommendation` action, a combination of OR and NOT
1285
1304
  # is not supported. OR is not supported between different dimensions, or
1286
- # dimensions and tags. NOT operators aren't supported. Dimentions are
1305
+ # dimensions and tags. NOT operators aren't supported. Dimensions are
1287
1306
  # also limited to `LINKED_ACCOUNT`, `REGION`, or `RIGHTSIZING_TYPE`.
1288
1307
  #
1289
1308
  # </note>
1290
1309
  #
1291
1310
  # @option params [required, String] :service
1292
- # The specific service that you want recommendations for.
1311
+ # The specific service that you want recommendations for. The only valid
1312
+ # value for `GetRightsizingRecommendation` is "`AmazonEC2`".
1293
1313
  #
1294
1314
  # @option params [Integer] :page_size
1295
1315
  # The number of recommendations that you want returned in a single
@@ -1324,7 +1344,7 @@ module Aws::CostExplorer
1324
1344
  # # recursive Expression
1325
1345
  # },
1326
1346
  # dimensions: {
1327
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE
1347
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1328
1348
  # values: ["Value"],
1329
1349
  # },
1330
1350
  # tags: {
@@ -1366,6 +1386,7 @@ module Aws::CostExplorer
1366
1386
  # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.max_memory_utilization_percentage #=> String
1367
1387
  # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.max_storage_utilization_percentage #=> String
1368
1388
  # resp.rightsizing_recommendations[0].current_instance.reservation_covered_hours_in_lookback_period #=> String
1389
+ # resp.rightsizing_recommendations[0].current_instance.savings_plans_covered_hours_in_lookback_period #=> String
1369
1390
  # resp.rightsizing_recommendations[0].current_instance.on_demand_hours_in_lookback_period #=> String
1370
1391
  # resp.rightsizing_recommendations[0].current_instance.total_running_hours_in_lookback_period #=> String
1371
1392
  # resp.rightsizing_recommendations[0].current_instance.monthly_cost #=> String
@@ -1401,6 +1422,470 @@ module Aws::CostExplorer
1401
1422
  req.send_request(options)
1402
1423
  end
1403
1424
 
1425
+ # Retrieves the Savings Plans covered for your account. This enables you
1426
+ # to see how much of your cost is covered by a Savings Plan. An
1427
+ # organization’s master account can see the coverage of the associated
1428
+ # member accounts. For any time period, you can filter data for Savings
1429
+ # Plans usage with the following dimensions:
1430
+ #
1431
+ # * `LINKED_ACCOUNT`
1432
+ #
1433
+ # * `REGION`
1434
+ #
1435
+ # * `SERVICE`
1436
+ #
1437
+ # * `INSTANCE_FAMILY`
1438
+ #
1439
+ # To determine valid values for a dimension, use the
1440
+ # `GetDimensionValues` operation.
1441
+ #
1442
+ # @option params [required, Types::DateInterval] :time_period
1443
+ # The time period that you want the usage and costs for. The `Start`
1444
+ # date must be within 13 months. The `End` date must be after the
1445
+ # `Start` date, and before the current date. Future dates can't be used
1446
+ # as an `End` date.
1447
+ #
1448
+ # @option params [Array<Types::GroupDefinition>] :group_by
1449
+ # You can group the data using the attributes `INSTANCE_FAMILY`,
1450
+ # `REGION`, or `SERVICE`.
1451
+ #
1452
+ # @option params [String] :granularity
1453
+ # The granularity of the Amazon Web Services cost data for your Savings
1454
+ # Plans. `Granularity` can't be set if `GroupBy` is set.
1455
+ #
1456
+ # @option params [Types::Expression] :filter
1457
+ # Filters Savings Plans coverage data by dimensions. You can filter data
1458
+ # for Savings Plans usage with the following dimensions:
1459
+ #
1460
+ # * `LINKED_ACCOUNT`
1461
+ #
1462
+ # * `REGION`
1463
+ #
1464
+ # * `SERVICE`
1465
+ #
1466
+ # * `INSTANCE_FAMILY`
1467
+ #
1468
+ # `GetSavingsPlansCoverage` uses the same [Expression][1] object as the
1469
+ # other operations, but only `AND` is supported among each dimension. If
1470
+ # there are multiple values for a dimension, they are OR'd together.
1471
+ #
1472
+ #
1473
+ #
1474
+ # [1]: http://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
1475
+ #
1476
+ # @option params [Array<String>] :metrics
1477
+ # The measurement that you want your Savings Plans coverage reported in.
1478
+ # The only valid value is `spendCoveredBySavingsPlans`.
1479
+ #
1480
+ # @option params [String] :next_token
1481
+ # The token to retrieve the next set of results. Amazon Web Services
1482
+ # provides the token when the response from a previous call has more
1483
+ # results than the maximum page size.
1484
+ #
1485
+ # @option params [Integer] :max_results
1486
+ # The number of items to be returned in a response. The default is `20`,
1487
+ # with a minimum value of `1`.
1488
+ #
1489
+ # @return [Types::GetSavingsPlansCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1490
+ #
1491
+ # * {Types::GetSavingsPlansCoverageResponse#savings_plans_coverages #savings_plans_coverages} => Array&lt;Types::SavingsPlansCoverage&gt;
1492
+ # * {Types::GetSavingsPlansCoverageResponse#next_token #next_token} => String
1493
+ #
1494
+ # @example Request syntax with placeholder values
1495
+ #
1496
+ # resp = client.get_savings_plans_coverage({
1497
+ # time_period: { # required
1498
+ # start: "YearMonthDay", # required
1499
+ # end: "YearMonthDay", # required
1500
+ # },
1501
+ # group_by: [
1502
+ # {
1503
+ # type: "DIMENSION", # accepts DIMENSION, TAG
1504
+ # key: "GroupDefinitionKey",
1505
+ # },
1506
+ # ],
1507
+ # granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
1508
+ # filter: {
1509
+ # or: [
1510
+ # {
1511
+ # # recursive Expression
1512
+ # },
1513
+ # ],
1514
+ # and: [
1515
+ # {
1516
+ # # recursive Expression
1517
+ # },
1518
+ # ],
1519
+ # not: {
1520
+ # # recursive Expression
1521
+ # },
1522
+ # dimensions: {
1523
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1524
+ # values: ["Value"],
1525
+ # },
1526
+ # tags: {
1527
+ # key: "TagKey",
1528
+ # values: ["Value"],
1529
+ # },
1530
+ # },
1531
+ # metrics: ["MetricName"],
1532
+ # next_token: "NextPageToken",
1533
+ # max_results: 1,
1534
+ # })
1535
+ #
1536
+ # @example Response structure
1537
+ #
1538
+ # resp.savings_plans_coverages #=> Array
1539
+ # resp.savings_plans_coverages[0].attributes #=> Hash
1540
+ # resp.savings_plans_coverages[0].attributes["AttributeType"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1541
+ # resp.savings_plans_coverages[0].coverage.spend_covered_by_savings_plans #=> String
1542
+ # resp.savings_plans_coverages[0].coverage.on_demand_cost #=> String
1543
+ # resp.savings_plans_coverages[0].coverage.total_cost #=> String
1544
+ # resp.savings_plans_coverages[0].coverage.coverage_percentage #=> String
1545
+ # resp.savings_plans_coverages[0].time_period.start #=> String
1546
+ # resp.savings_plans_coverages[0].time_period.end #=> String
1547
+ # resp.next_token #=> String
1548
+ #
1549
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetSavingsPlansCoverage AWS API Documentation
1550
+ #
1551
+ # @overload get_savings_plans_coverage(params = {})
1552
+ # @param [Hash] params ({})
1553
+ def get_savings_plans_coverage(params = {}, options = {})
1554
+ req = build_request(:get_savings_plans_coverage, params)
1555
+ req.send_request(options)
1556
+ end
1557
+
1558
+ # Retrieves your request parameters, Savings Plan Recommendations
1559
+ # Summary and Details.
1560
+ #
1561
+ # @option params [required, String] :savings_plans_type
1562
+ # The Savings Plans recommendation type requested.
1563
+ #
1564
+ # @option params [required, String] :term_in_years
1565
+ # The savings plan recommendation term used to generated these
1566
+ # recommendations.
1567
+ #
1568
+ # @option params [required, String] :payment_option
1569
+ # The payment option used to generate these recommendations.
1570
+ #
1571
+ # @option params [String] :next_page_token
1572
+ # The token to retrieve the next set of results. Amazon Web Services
1573
+ # provides the token when the response from a previous call has more
1574
+ # results than the maximum page size.
1575
+ #
1576
+ # @option params [Integer] :page_size
1577
+ # The number of recommendations that you want returned in a single
1578
+ # response object.
1579
+ #
1580
+ # @option params [required, String] :lookback_period_in_days
1581
+ # The lookback period used to generate the recommendation.
1582
+ #
1583
+ # @return [Types::GetSavingsPlansPurchaseRecommendationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1584
+ #
1585
+ # * {Types::GetSavingsPlansPurchaseRecommendationResponse#metadata #metadata} => Types::SavingsPlansPurchaseRecommendationMetadata
1586
+ # * {Types::GetSavingsPlansPurchaseRecommendationResponse#savings_plans_purchase_recommendation #savings_plans_purchase_recommendation} => Types::SavingsPlansPurchaseRecommendation
1587
+ # * {Types::GetSavingsPlansPurchaseRecommendationResponse#next_page_token #next_page_token} => String
1588
+ #
1589
+ # @example Request syntax with placeholder values
1590
+ #
1591
+ # resp = client.get_savings_plans_purchase_recommendation({
1592
+ # savings_plans_type: "COMPUTE_SP", # required, accepts COMPUTE_SP, EC2_INSTANCE_SP
1593
+ # term_in_years: "ONE_YEAR", # required, accepts ONE_YEAR, THREE_YEARS
1594
+ # payment_option: "NO_UPFRONT", # required, accepts NO_UPFRONT, PARTIAL_UPFRONT, ALL_UPFRONT, LIGHT_UTILIZATION, MEDIUM_UTILIZATION, HEAVY_UTILIZATION
1595
+ # next_page_token: "NextPageToken",
1596
+ # page_size: 1,
1597
+ # lookback_period_in_days: "SEVEN_DAYS", # required, accepts SEVEN_DAYS, THIRTY_DAYS, SIXTY_DAYS
1598
+ # })
1599
+ #
1600
+ # @example Response structure
1601
+ #
1602
+ # resp.metadata.recommendation_id #=> String
1603
+ # resp.metadata.generation_timestamp #=> String
1604
+ # resp.savings_plans_purchase_recommendation.savings_plans_type #=> String, one of "COMPUTE_SP", "EC2_INSTANCE_SP"
1605
+ # resp.savings_plans_purchase_recommendation.term_in_years #=> String, one of "ONE_YEAR", "THREE_YEARS"
1606
+ # resp.savings_plans_purchase_recommendation.payment_option #=> String, one of "NO_UPFRONT", "PARTIAL_UPFRONT", "ALL_UPFRONT", "LIGHT_UTILIZATION", "MEDIUM_UTILIZATION", "HEAVY_UTILIZATION"
1607
+ # resp.savings_plans_purchase_recommendation.lookback_period_in_days #=> String, one of "SEVEN_DAYS", "THIRTY_DAYS", "SIXTY_DAYS"
1608
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details #=> Array
1609
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].savings_plans_details.region #=> String
1610
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].savings_plans_details.instance_family #=> String
1611
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].savings_plans_details.offering_id #=> String
1612
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].account_id #=> String
1613
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].upfront_cost #=> String
1614
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].estimated_roi #=> String
1615
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].currency_code #=> String
1616
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].estimated_sp_cost #=> String
1617
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].estimated_on_demand_cost #=> String
1618
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].estimated_savings_amount #=> String
1619
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].estimated_savings_percentage #=> String
1620
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].hourly_commitment_to_purchase #=> String
1621
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].estimated_average_utilization #=> String
1622
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].estimated_monthly_savings_amount #=> String
1623
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].current_minimum_hourly_on_demand_spend #=> String
1624
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].current_maximum_hourly_on_demand_spend #=> String
1625
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_details[0].current_average_hourly_on_demand_spend #=> String
1626
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.estimated_roi #=> String
1627
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.currency_code #=> String
1628
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.estimated_total_cost #=> String
1629
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.current_on_demand_spend #=> String
1630
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.estimated_savings_amount #=> String
1631
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.total_recommendation_count #=> String
1632
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.daily_commitment_to_purchase #=> String
1633
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.hourly_commitment_to_purchase #=> String
1634
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.estimated_savings_percentage #=> String
1635
+ # resp.savings_plans_purchase_recommendation.savings_plans_purchase_recommendation_summary.estimated_monthly_savings_amount #=> String
1636
+ # resp.next_page_token #=> String
1637
+ #
1638
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetSavingsPlansPurchaseRecommendation AWS API Documentation
1639
+ #
1640
+ # @overload get_savings_plans_purchase_recommendation(params = {})
1641
+ # @param [Hash] params ({})
1642
+ def get_savings_plans_purchase_recommendation(params = {}, options = {})
1643
+ req = build_request(:get_savings_plans_purchase_recommendation, params)
1644
+ req.send_request(options)
1645
+ end
1646
+
1647
+ # Retrieves the Savings Plans utilization for your account across date
1648
+ # ranges with daily or monthly granularity. Master accounts in an
1649
+ # organization have access to member accounts. You can use
1650
+ # `GetDimensionValues` to determine the possible dimension values.
1651
+ #
1652
+ # <note markdown="1"> You cannot group by any dimension values for
1653
+ # `GetSavingsPlansUtilization`.
1654
+ #
1655
+ # </note>
1656
+ #
1657
+ # @option params [required, Types::DateInterval] :time_period
1658
+ # The time period that you want the usage and costs for. The `Start`
1659
+ # date must be within 13 months. The `End` date must be after the
1660
+ # `Start` date, and before the current date. Future dates can't be used
1661
+ # as an `End` date.
1662
+ #
1663
+ # @option params [String] :granularity
1664
+ # The granularity of the Amazon Web Services utillization data for your
1665
+ # Savings Plans.
1666
+ #
1667
+ # @option params [Types::Expression] :filter
1668
+ # Filters Savings Plans utilization coverage data for active Savings
1669
+ # Plans dimensions. You can filter data with the following dimensions:
1670
+ #
1671
+ # * `LINKED_ACCOUNT`
1672
+ #
1673
+ # * `SAVINGS_PLAN_ARN`
1674
+ #
1675
+ # * `SAVINGS_PLANS_TYPE`
1676
+ #
1677
+ # * `REGION`
1678
+ #
1679
+ # * `PAYMENT_OPTIONS`
1680
+ #
1681
+ # * `INSTANCE_TYPE_FAMILY`
1682
+ #
1683
+ # `GetSavingsPlansUtilization` uses the same [Expression][1] object as
1684
+ # the other operations, but only `AND` is supported among each
1685
+ # dimension. If there are multiple values for a dimension, they are
1686
+ # OR'd together.
1687
+ #
1688
+ #
1689
+ #
1690
+ # [1]: http://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
1691
+ #
1692
+ # @return [Types::GetSavingsPlansUtilizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1693
+ #
1694
+ # * {Types::GetSavingsPlansUtilizationResponse#savings_plans_utilizations_by_time #savings_plans_utilizations_by_time} => Array&lt;Types::SavingsPlansUtilizationByTime&gt;
1695
+ # * {Types::GetSavingsPlansUtilizationResponse#total #total} => Types::SavingsPlansUtilizationAggregates
1696
+ #
1697
+ # @example Request syntax with placeholder values
1698
+ #
1699
+ # resp = client.get_savings_plans_utilization({
1700
+ # time_period: { # required
1701
+ # start: "YearMonthDay", # required
1702
+ # end: "YearMonthDay", # required
1703
+ # },
1704
+ # granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
1705
+ # filter: {
1706
+ # or: [
1707
+ # {
1708
+ # # recursive Expression
1709
+ # },
1710
+ # ],
1711
+ # and: [
1712
+ # {
1713
+ # # recursive Expression
1714
+ # },
1715
+ # ],
1716
+ # not: {
1717
+ # # recursive Expression
1718
+ # },
1719
+ # dimensions: {
1720
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1721
+ # values: ["Value"],
1722
+ # },
1723
+ # tags: {
1724
+ # key: "TagKey",
1725
+ # values: ["Value"],
1726
+ # },
1727
+ # },
1728
+ # })
1729
+ #
1730
+ # @example Response structure
1731
+ #
1732
+ # resp.savings_plans_utilizations_by_time #=> Array
1733
+ # resp.savings_plans_utilizations_by_time[0].time_period.start #=> String
1734
+ # resp.savings_plans_utilizations_by_time[0].time_period.end #=> String
1735
+ # resp.savings_plans_utilizations_by_time[0].utilization.total_commitment #=> String
1736
+ # resp.savings_plans_utilizations_by_time[0].utilization.used_commitment #=> String
1737
+ # resp.savings_plans_utilizations_by_time[0].utilization.unused_commitment #=> String
1738
+ # resp.savings_plans_utilizations_by_time[0].utilization.utilization_percentage #=> String
1739
+ # resp.savings_plans_utilizations_by_time[0].savings.net_savings #=> String
1740
+ # resp.savings_plans_utilizations_by_time[0].savings.on_demand_cost_equivalent #=> String
1741
+ # resp.savings_plans_utilizations_by_time[0].amortized_commitment.amortized_recurring_commitment #=> String
1742
+ # resp.savings_plans_utilizations_by_time[0].amortized_commitment.amortized_upfront_commitment #=> String
1743
+ # resp.savings_plans_utilizations_by_time[0].amortized_commitment.total_amortized_commitment #=> String
1744
+ # resp.total.utilization.total_commitment #=> String
1745
+ # resp.total.utilization.used_commitment #=> String
1746
+ # resp.total.utilization.unused_commitment #=> String
1747
+ # resp.total.utilization.utilization_percentage #=> String
1748
+ # resp.total.savings.net_savings #=> String
1749
+ # resp.total.savings.on_demand_cost_equivalent #=> String
1750
+ # resp.total.amortized_commitment.amortized_recurring_commitment #=> String
1751
+ # resp.total.amortized_commitment.amortized_upfront_commitment #=> String
1752
+ # resp.total.amortized_commitment.total_amortized_commitment #=> String
1753
+ #
1754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetSavingsPlansUtilization AWS API Documentation
1755
+ #
1756
+ # @overload get_savings_plans_utilization(params = {})
1757
+ # @param [Hash] params ({})
1758
+ def get_savings_plans_utilization(params = {}, options = {})
1759
+ req = build_request(:get_savings_plans_utilization, params)
1760
+ req.send_request(options)
1761
+ end
1762
+
1763
+ # Retrieves a single daily or monthly Savings Plans utilization rate and
1764
+ # details for your account. Master accounts in an organization have
1765
+ # access to member accounts. You can use `GetDimensionValues` to
1766
+ # determine the possible dimension values.
1767
+ #
1768
+ # <note markdown="1"> You can't group by any dimension values for
1769
+ # `GetSavingsPlansUtilizationDetails`.
1770
+ #
1771
+ # </note>
1772
+ #
1773
+ # @option params [required, Types::DateInterval] :time_period
1774
+ # The time period that you want the usage and costs for. The `Start`
1775
+ # date must be within 13 months. The `End` date must be after the
1776
+ # `Start` date, and before the current date. Future dates can't be used
1777
+ # as an `End` date.
1778
+ #
1779
+ # @option params [Types::Expression] :filter
1780
+ # Filters Savings Plans utilization coverage data for active Savings
1781
+ # Plans dimensions. You can filter data with the following dimensions:
1782
+ #
1783
+ # * `LINKED_ACCOUNT`
1784
+ #
1785
+ # * `SAVINGS_PLAN_ARN`
1786
+ #
1787
+ # * `REGION`
1788
+ #
1789
+ # * `PAYMENT_OPTIONS`
1790
+ #
1791
+ # * `INSTANCE_TYPE_FAMILY`
1792
+ #
1793
+ # `GetSavingsPlansUtilizationDetails` uses the same [Expression][1]
1794
+ # object as the other operations, but only `AND` is supported among each
1795
+ # dimension. If there are multiple values for a dimension, they are
1796
+ # OR'd together.
1797
+ #
1798
+ #
1799
+ #
1800
+ # [1]: http://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
1801
+ #
1802
+ # @option params [String] :next_token
1803
+ # The token to retrieve the next set of results. Amazon Web Services
1804
+ # provides the token when the response from a previous call has more
1805
+ # results than the maximum page size.
1806
+ #
1807
+ # @option params [Integer] :max_results
1808
+ # The number of items to be returned in a response. The default is `20`,
1809
+ # with a minimum value of `1`.
1810
+ #
1811
+ # @return [Types::GetSavingsPlansUtilizationDetailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1812
+ #
1813
+ # * {Types::GetSavingsPlansUtilizationDetailsResponse#savings_plans_utilization_details #savings_plans_utilization_details} => Array&lt;Types::SavingsPlansUtilizationDetail&gt;
1814
+ # * {Types::GetSavingsPlansUtilizationDetailsResponse#total #total} => Types::SavingsPlansUtilizationAggregates
1815
+ # * {Types::GetSavingsPlansUtilizationDetailsResponse#time_period #time_period} => Types::DateInterval
1816
+ # * {Types::GetSavingsPlansUtilizationDetailsResponse#next_token #next_token} => String
1817
+ #
1818
+ # @example Request syntax with placeholder values
1819
+ #
1820
+ # resp = client.get_savings_plans_utilization_details({
1821
+ # time_period: { # required
1822
+ # start: "YearMonthDay", # required
1823
+ # end: "YearMonthDay", # required
1824
+ # },
1825
+ # filter: {
1826
+ # or: [
1827
+ # {
1828
+ # # recursive Expression
1829
+ # },
1830
+ # ],
1831
+ # and: [
1832
+ # {
1833
+ # # recursive Expression
1834
+ # },
1835
+ # ],
1836
+ # not: {
1837
+ # # recursive Expression
1838
+ # },
1839
+ # dimensions: {
1840
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1841
+ # values: ["Value"],
1842
+ # },
1843
+ # tags: {
1844
+ # key: "TagKey",
1845
+ # values: ["Value"],
1846
+ # },
1847
+ # },
1848
+ # next_token: "NextPageToken",
1849
+ # max_results: 1,
1850
+ # })
1851
+ #
1852
+ # @example Response structure
1853
+ #
1854
+ # resp.savings_plans_utilization_details #=> Array
1855
+ # resp.savings_plans_utilization_details[0].savings_plan_arn #=> String
1856
+ # resp.savings_plans_utilization_details[0].attributes #=> Hash
1857
+ # resp.savings_plans_utilization_details[0].attributes["AttributeType"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1858
+ # resp.savings_plans_utilization_details[0].utilization.total_commitment #=> String
1859
+ # resp.savings_plans_utilization_details[0].utilization.used_commitment #=> String
1860
+ # resp.savings_plans_utilization_details[0].utilization.unused_commitment #=> String
1861
+ # resp.savings_plans_utilization_details[0].utilization.utilization_percentage #=> String
1862
+ # resp.savings_plans_utilization_details[0].savings.net_savings #=> String
1863
+ # resp.savings_plans_utilization_details[0].savings.on_demand_cost_equivalent #=> String
1864
+ # resp.savings_plans_utilization_details[0].amortized_commitment.amortized_recurring_commitment #=> String
1865
+ # resp.savings_plans_utilization_details[0].amortized_commitment.amortized_upfront_commitment #=> String
1866
+ # resp.savings_plans_utilization_details[0].amortized_commitment.total_amortized_commitment #=> String
1867
+ # resp.total.utilization.total_commitment #=> String
1868
+ # resp.total.utilization.used_commitment #=> String
1869
+ # resp.total.utilization.unused_commitment #=> String
1870
+ # resp.total.utilization.utilization_percentage #=> String
1871
+ # resp.total.savings.net_savings #=> String
1872
+ # resp.total.savings.on_demand_cost_equivalent #=> String
1873
+ # resp.total.amortized_commitment.amortized_recurring_commitment #=> String
1874
+ # resp.total.amortized_commitment.amortized_upfront_commitment #=> String
1875
+ # resp.total.amortized_commitment.total_amortized_commitment #=> String
1876
+ # resp.time_period.start #=> String
1877
+ # resp.time_period.end #=> String
1878
+ # resp.next_token #=> String
1879
+ #
1880
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetSavingsPlansUtilizationDetails AWS API Documentation
1881
+ #
1882
+ # @overload get_savings_plans_utilization_details(params = {})
1883
+ # @param [Hash] params ({})
1884
+ def get_savings_plans_utilization_details(params = {}, options = {})
1885
+ req = build_request(:get_savings_plans_utilization_details, params)
1886
+ req.send_request(options)
1887
+ end
1888
+
1404
1889
  # Queries for available tag keys and tag values for a specified period.
1405
1890
  # You can search the tag values for an arbitrary string.
1406
1891
  #
@@ -1527,7 +2012,7 @@ module Aws::CostExplorer
1527
2012
  # # recursive Expression
1528
2013
  # },
1529
2014
  # dimensions: {
1530
- # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE
2015
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, 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, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
1531
2016
  # values: ["Value"],
1532
2017
  # },
1533
2018
  # tags: {
@@ -1571,7 +2056,7 @@ module Aws::CostExplorer
1571
2056
  params: params,
1572
2057
  config: config)
1573
2058
  context[:gem_name] = 'aws-sdk-costexplorer'
1574
- context[:gem_version] = '1.30.0'
2059
+ context[:gem_version] = '1.31.0'
1575
2060
  Seahorse::Client::Request.new(handlers, context)
1576
2061
  end
1577
2062