aws-sdk-costexplorer 1.78.0 → 1.80.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 +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-costexplorer/client.rb +106 -5
- data/lib/aws-sdk-costexplorer/client_api.rb +62 -0
- data/lib/aws-sdk-costexplorer/endpoint_parameters.rb +69 -0
- data/lib/aws-sdk-costexplorer/endpoint_provider.rb +222 -0
- data/lib/aws-sdk-costexplorer/endpoints.rb +533 -0
- data/lib/aws-sdk-costexplorer/errors.rb +16 -0
- data/lib/aws-sdk-costexplorer/plugins/endpoints.rb +142 -0
- data/lib/aws-sdk-costexplorer/types.rb +118 -1450
- data/lib/aws-sdk-costexplorer.rb +5 -1
- metadata +8 -4
| @@ -69,14 +69,6 @@ module Aws::CostExplorer | |
| 69 69 |  | 
| 70 70 | 
             
                # The time period for an anomaly.
         | 
| 71 71 | 
             
                #
         | 
| 72 | 
            -
                # @note When making an API call, you may pass AnomalyDateInterval
         | 
| 73 | 
            -
                #   data as a hash:
         | 
| 74 | 
            -
                #
         | 
| 75 | 
            -
                #       {
         | 
| 76 | 
            -
                #         start_date: "YearMonthDay", # required
         | 
| 77 | 
            -
                #         end_date: "YearMonthDay",
         | 
| 78 | 
            -
                #       }
         | 
| 79 | 
            -
                #
         | 
| 80 72 | 
             
                # @!attribute [rw] start_date
         | 
| 81 73 | 
             
                #   The first date an anomaly was observed.
         | 
| 82 74 | 
             
                #   @return [String]
         | 
| @@ -99,50 +91,6 @@ module Aws::CostExplorer | |
| 99 91 | 
             
                # The content consists of detailed metadata and the current status of
         | 
| 100 92 | 
             
                # the monitor object.
         | 
| 101 93 | 
             
                #
         | 
| 102 | 
            -
                # @note When making an API call, you may pass AnomalyMonitor
         | 
| 103 | 
            -
                #   data as a hash:
         | 
| 104 | 
            -
                #
         | 
| 105 | 
            -
                #       {
         | 
| 106 | 
            -
                #         monitor_arn: "GenericString",
         | 
| 107 | 
            -
                #         monitor_name: "GenericString", # required
         | 
| 108 | 
            -
                #         creation_date: "YearMonthDay",
         | 
| 109 | 
            -
                #         last_updated_date: "YearMonthDay",
         | 
| 110 | 
            -
                #         last_evaluated_date: "YearMonthDay",
         | 
| 111 | 
            -
                #         monitor_type: "DIMENSIONAL", # required, accepts DIMENSIONAL, CUSTOM
         | 
| 112 | 
            -
                #         monitor_dimension: "SERVICE", # accepts SERVICE
         | 
| 113 | 
            -
                #         monitor_specification: {
         | 
| 114 | 
            -
                #           or: [
         | 
| 115 | 
            -
                #             {
         | 
| 116 | 
            -
                #               # recursive Expression
         | 
| 117 | 
            -
                #             },
         | 
| 118 | 
            -
                #           ],
         | 
| 119 | 
            -
                #           and: [
         | 
| 120 | 
            -
                #             {
         | 
| 121 | 
            -
                #               # recursive Expression
         | 
| 122 | 
            -
                #             },
         | 
| 123 | 
            -
                #           ],
         | 
| 124 | 
            -
                #           not: {
         | 
| 125 | 
            -
                #             # recursive Expression
         | 
| 126 | 
            -
                #           },
         | 
| 127 | 
            -
                #           dimensions: {
         | 
| 128 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 129 | 
            -
                #             values: ["Value"],
         | 
| 130 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 131 | 
            -
                #           },
         | 
| 132 | 
            -
                #           tags: {
         | 
| 133 | 
            -
                #             key: "TagKey",
         | 
| 134 | 
            -
                #             values: ["Value"],
         | 
| 135 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 136 | 
            -
                #           },
         | 
| 137 | 
            -
                #           cost_categories: {
         | 
| 138 | 
            -
                #             key: "CostCategoryName",
         | 
| 139 | 
            -
                #             values: ["Value"],
         | 
| 140 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 141 | 
            -
                #           },
         | 
| 142 | 
            -
                #         },
         | 
| 143 | 
            -
                #         dimensional_value_count: 1,
         | 
| 144 | 
            -
                #       }
         | 
| 145 | 
            -
                #
         | 
| 146 94 | 
             
                # @!attribute [rw] monitor_arn
         | 
| 147 95 | 
             
                #   The Amazon Resource Name (ARN) value.
         | 
| 148 96 | 
             
                #   @return [String]
         | 
| @@ -271,25 +219,6 @@ module Aws::CostExplorer | |
| 271 219 | 
             
                # that exceeds a threshold. The content consists of the detailed
         | 
| 272 220 | 
             
                # metadata and the current status of the `AnomalySubscription` object.
         | 
| 273 221 | 
             
                #
         | 
| 274 | 
            -
                # @note When making an API call, you may pass AnomalySubscription
         | 
| 275 | 
            -
                #   data as a hash:
         | 
| 276 | 
            -
                #
         | 
| 277 | 
            -
                #       {
         | 
| 278 | 
            -
                #         subscription_arn: "GenericString",
         | 
| 279 | 
            -
                #         account_id: "GenericString",
         | 
| 280 | 
            -
                #         monitor_arn_list: ["Arn"], # required
         | 
| 281 | 
            -
                #         subscribers: [ # required
         | 
| 282 | 
            -
                #           {
         | 
| 283 | 
            -
                #             address: "SubscriberAddress",
         | 
| 284 | 
            -
                #             type: "EMAIL", # accepts EMAIL, SNS
         | 
| 285 | 
            -
                #             status: "CONFIRMED", # accepts CONFIRMED, DECLINED
         | 
| 286 | 
            -
                #           },
         | 
| 287 | 
            -
                #         ],
         | 
| 288 | 
            -
                #         threshold: 1.0, # required
         | 
| 289 | 
            -
                #         frequency: "DAILY", # required, accepts DAILY, IMMEDIATE, WEEKLY
         | 
| 290 | 
            -
                #         subscription_name: "GenericString", # required
         | 
| 291 | 
            -
                #       }
         | 
| 292 | 
            -
                #
         | 
| 293 222 | 
             
                # @!attribute [rw] subscription_arn
         | 
| 294 223 | 
             
                #   The `AnomalySubscription` Amazon Resource Name (ARN).
         | 
| 295 224 | 
             
                #   @return [String]
         | 
| @@ -378,14 +307,6 @@ module Aws::CostExplorer | |
| 378 307 | 
             
                # The cost allocation tag status. The status of a key can either be
         | 
| 379 308 | 
             
                # active or inactive.
         | 
| 380 309 | 
             
                #
         | 
| 381 | 
            -
                # @note When making an API call, you may pass CostAllocationTagStatusEntry
         | 
| 382 | 
            -
                #   data as a hash:
         | 
| 383 | 
            -
                #
         | 
| 384 | 
            -
                #       {
         | 
| 385 | 
            -
                #         tag_key: "TagKey", # required
         | 
| 386 | 
            -
                #         status: "Active", # required, accepts Active, Inactive
         | 
| 387 | 
            -
                #       }
         | 
| 388 | 
            -
                #
         | 
| 389 310 | 
             
                # @!attribute [rw] tag_key
         | 
| 390 311 | 
             
                #   The key for the cost allocation tag.
         | 
| 391 312 | 
             
                #   @return [String]
         | 
| @@ -471,14 +392,6 @@ module Aws::CostExplorer | |
| 471 392 | 
             
                # specific tag key. First, choose an inherited value rule type, and then
         | 
| 472 393 | 
             
                # choose the tag dimension and specify the tag key to use.
         | 
| 473 394 | 
             
                #
         | 
| 474 | 
            -
                # @note When making an API call, you may pass CostCategoryInheritedValueDimension
         | 
| 475 | 
            -
                #   data as a hash:
         | 
| 476 | 
            -
                #
         | 
| 477 | 
            -
                #       {
         | 
| 478 | 
            -
                #         dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
         | 
| 479 | 
            -
                #         dimension_key: "GenericString",
         | 
| 480 | 
            -
                #       }
         | 
| 481 | 
            -
                #
         | 
| 482 395 | 
             
                # @!attribute [rw] dimension_name
         | 
| 483 396 | 
             
                #   The name of the dimension that's used to group costs.
         | 
| 484 397 | 
             
                #
         | 
| @@ -579,48 +492,6 @@ module Aws::CostExplorer | |
| 579 492 | 
             
                # the line item, then the first rule to match is used to determine that
         | 
| 580 493 | 
             
                # Cost Category value.
         | 
| 581 494 | 
             
                #
         | 
| 582 | 
            -
                # @note When making an API call, you may pass CostCategoryRule
         | 
| 583 | 
            -
                #   data as a hash:
         | 
| 584 | 
            -
                #
         | 
| 585 | 
            -
                #       {
         | 
| 586 | 
            -
                #         value: "CostCategoryValue",
         | 
| 587 | 
            -
                #         rule: {
         | 
| 588 | 
            -
                #           or: [
         | 
| 589 | 
            -
                #             {
         | 
| 590 | 
            -
                #               # recursive Expression
         | 
| 591 | 
            -
                #             },
         | 
| 592 | 
            -
                #           ],
         | 
| 593 | 
            -
                #           and: [
         | 
| 594 | 
            -
                #             {
         | 
| 595 | 
            -
                #               # recursive Expression
         | 
| 596 | 
            -
                #             },
         | 
| 597 | 
            -
                #           ],
         | 
| 598 | 
            -
                #           not: {
         | 
| 599 | 
            -
                #             # recursive Expression
         | 
| 600 | 
            -
                #           },
         | 
| 601 | 
            -
                #           dimensions: {
         | 
| 602 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 603 | 
            -
                #             values: ["Value"],
         | 
| 604 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 605 | 
            -
                #           },
         | 
| 606 | 
            -
                #           tags: {
         | 
| 607 | 
            -
                #             key: "TagKey",
         | 
| 608 | 
            -
                #             values: ["Value"],
         | 
| 609 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 610 | 
            -
                #           },
         | 
| 611 | 
            -
                #           cost_categories: {
         | 
| 612 | 
            -
                #             key: "CostCategoryName",
         | 
| 613 | 
            -
                #             values: ["Value"],
         | 
| 614 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 615 | 
            -
                #           },
         | 
| 616 | 
            -
                #         },
         | 
| 617 | 
            -
                #         inherited_value: {
         | 
| 618 | 
            -
                #           dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
         | 
| 619 | 
            -
                #           dimension_key: "GenericString",
         | 
| 620 | 
            -
                #         },
         | 
| 621 | 
            -
                #         type: "REGULAR", # accepts REGULAR, INHERITED_VALUE
         | 
| 622 | 
            -
                #       }
         | 
| 623 | 
            -
                #
         | 
| 624 495 | 
             
                # @!attribute [rw] value
         | 
| 625 496 | 
             
                #   The default value for the cost category.
         | 
| 626 497 | 
             
                #   @return [String]
         | 
| @@ -677,21 +548,6 @@ module Aws::CostExplorer | |
| 677 548 | 
             
                # Use the split charge rule to split the cost of one Cost Category value
         | 
| 678 549 | 
             
                # across several other target values.
         | 
| 679 550 | 
             
                #
         | 
| 680 | 
            -
                # @note When making an API call, you may pass CostCategorySplitChargeRule
         | 
| 681 | 
            -
                #   data as a hash:
         | 
| 682 | 
            -
                #
         | 
| 683 | 
            -
                #       {
         | 
| 684 | 
            -
                #         source: "GenericString", # required
         | 
| 685 | 
            -
                #         targets: ["GenericString"], # required
         | 
| 686 | 
            -
                #         method: "FIXED", # required, accepts FIXED, PROPORTIONAL, EVEN
         | 
| 687 | 
            -
                #         parameters: [
         | 
| 688 | 
            -
                #           {
         | 
| 689 | 
            -
                #             type: "ALLOCATION_PERCENTAGES", # required, accepts ALLOCATION_PERCENTAGES
         | 
| 690 | 
            -
                #             values: ["GenericString"], # required
         | 
| 691 | 
            -
                #           },
         | 
| 692 | 
            -
                #         ],
         | 
| 693 | 
            -
                #       }
         | 
| 694 | 
            -
                #
         | 
| 695 551 | 
             
                # @!attribute [rw] source
         | 
| 696 552 | 
             
                #   The Cost Category value that you want to split. That value can't be
         | 
| 697 553 | 
             
                #   used as a source or a target in other split charge rules. To
         | 
| @@ -735,14 +591,6 @@ module Aws::CostExplorer | |
| 735 591 |  | 
| 736 592 | 
             
                # The parameters for a split charge method.
         | 
| 737 593 | 
             
                #
         | 
| 738 | 
            -
                # @note When making an API call, you may pass CostCategorySplitChargeRuleParameter
         | 
| 739 | 
            -
                #   data as a hash:
         | 
| 740 | 
            -
                #
         | 
| 741 | 
            -
                #       {
         | 
| 742 | 
            -
                #         type: "ALLOCATION_PERCENTAGES", # required, accepts ALLOCATION_PERCENTAGES
         | 
| 743 | 
            -
                #         values: ["GenericString"], # required
         | 
| 744 | 
            -
                #       }
         | 
| 745 | 
            -
                #
         | 
| 746 594 | 
             
                # @!attribute [rw] type
         | 
| 747 595 | 
             
                #   The parameter type.
         | 
| 748 596 | 
             
                #   @return [String]
         | 
| @@ -770,15 +618,6 @@ module Aws::CostExplorer | |
| 770 618 | 
             
                # `MatchOption` is applied to the Cost Categories `Key` only. That is,
         | 
| 771 619 | 
             
                # it filters on resources without the given Cost Categories key.
         | 
| 772 620 | 
             
                #
         | 
| 773 | 
            -
                # @note When making an API call, you may pass CostCategoryValues
         | 
| 774 | 
            -
                #   data as a hash:
         | 
| 775 | 
            -
                #
         | 
| 776 | 
            -
                #       {
         | 
| 777 | 
            -
                #         key: "CostCategoryName",
         | 
| 778 | 
            -
                #         values: ["Value"],
         | 
| 779 | 
            -
                #         match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 780 | 
            -
                #       }
         | 
| 781 | 
            -
                #
         | 
| 782 621 | 
             
                # @!attribute [rw] key
         | 
| 783 622 | 
             
                #   The unique name of the Cost Category.
         | 
| 784 623 | 
             
                #   @return [String]
         | 
| @@ -944,58 +783,6 @@ module Aws::CostExplorer | |
| 944 783 | 
             
                  include Aws::Structure
         | 
| 945 784 | 
             
                end
         | 
| 946 785 |  | 
| 947 | 
            -
                # @note When making an API call, you may pass CreateAnomalyMonitorRequest
         | 
| 948 | 
            -
                #   data as a hash:
         | 
| 949 | 
            -
                #
         | 
| 950 | 
            -
                #       {
         | 
| 951 | 
            -
                #         anomaly_monitor: { # required
         | 
| 952 | 
            -
                #           monitor_arn: "GenericString",
         | 
| 953 | 
            -
                #           monitor_name: "GenericString", # required
         | 
| 954 | 
            -
                #           creation_date: "YearMonthDay",
         | 
| 955 | 
            -
                #           last_updated_date: "YearMonthDay",
         | 
| 956 | 
            -
                #           last_evaluated_date: "YearMonthDay",
         | 
| 957 | 
            -
                #           monitor_type: "DIMENSIONAL", # required, accepts DIMENSIONAL, CUSTOM
         | 
| 958 | 
            -
                #           monitor_dimension: "SERVICE", # accepts SERVICE
         | 
| 959 | 
            -
                #           monitor_specification: {
         | 
| 960 | 
            -
                #             or: [
         | 
| 961 | 
            -
                #               {
         | 
| 962 | 
            -
                #                 # recursive Expression
         | 
| 963 | 
            -
                #               },
         | 
| 964 | 
            -
                #             ],
         | 
| 965 | 
            -
                #             and: [
         | 
| 966 | 
            -
                #               {
         | 
| 967 | 
            -
                #                 # recursive Expression
         | 
| 968 | 
            -
                #               },
         | 
| 969 | 
            -
                #             ],
         | 
| 970 | 
            -
                #             not: {
         | 
| 971 | 
            -
                #               # recursive Expression
         | 
| 972 | 
            -
                #             },
         | 
| 973 | 
            -
                #             dimensions: {
         | 
| 974 | 
            -
                #               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, INVOICING_ENTITY
         | 
| 975 | 
            -
                #               values: ["Value"],
         | 
| 976 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 977 | 
            -
                #             },
         | 
| 978 | 
            -
                #             tags: {
         | 
| 979 | 
            -
                #               key: "TagKey",
         | 
| 980 | 
            -
                #               values: ["Value"],
         | 
| 981 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 982 | 
            -
                #             },
         | 
| 983 | 
            -
                #             cost_categories: {
         | 
| 984 | 
            -
                #               key: "CostCategoryName",
         | 
| 985 | 
            -
                #               values: ["Value"],
         | 
| 986 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 987 | 
            -
                #             },
         | 
| 988 | 
            -
                #           },
         | 
| 989 | 
            -
                #           dimensional_value_count: 1,
         | 
| 990 | 
            -
                #         },
         | 
| 991 | 
            -
                #         resource_tags: [
         | 
| 992 | 
            -
                #           {
         | 
| 993 | 
            -
                #             key: "ResourceTagKey", # required
         | 
| 994 | 
            -
                #             value: "ResourceTagValue", # required
         | 
| 995 | 
            -
                #           },
         | 
| 996 | 
            -
                #         ],
         | 
| 997 | 
            -
                #       }
         | 
| 998 | 
            -
                #
         | 
| 999 786 | 
             
                # @!attribute [rw] anomaly_monitor
         | 
| 1000 787 | 
             
                #   The cost anomaly detection monitor object that you want to create.
         | 
| 1001 788 | 
             
                #   @return [Types::AnomalyMonitor]
         | 
| @@ -1054,33 +841,6 @@ module Aws::CostExplorer | |
| 1054 841 | 
             
                  include Aws::Structure
         | 
| 1055 842 | 
             
                end
         | 
| 1056 843 |  | 
| 1057 | 
            -
                # @note When making an API call, you may pass CreateAnomalySubscriptionRequest
         | 
| 1058 | 
            -
                #   data as a hash:
         | 
| 1059 | 
            -
                #
         | 
| 1060 | 
            -
                #       {
         | 
| 1061 | 
            -
                #         anomaly_subscription: { # required
         | 
| 1062 | 
            -
                #           subscription_arn: "GenericString",
         | 
| 1063 | 
            -
                #           account_id: "GenericString",
         | 
| 1064 | 
            -
                #           monitor_arn_list: ["Arn"], # required
         | 
| 1065 | 
            -
                #           subscribers: [ # required
         | 
| 1066 | 
            -
                #             {
         | 
| 1067 | 
            -
                #               address: "SubscriberAddress",
         | 
| 1068 | 
            -
                #               type: "EMAIL", # accepts EMAIL, SNS
         | 
| 1069 | 
            -
                #               status: "CONFIRMED", # accepts CONFIRMED, DECLINED
         | 
| 1070 | 
            -
                #             },
         | 
| 1071 | 
            -
                #           ],
         | 
| 1072 | 
            -
                #           threshold: 1.0, # required
         | 
| 1073 | 
            -
                #           frequency: "DAILY", # required, accepts DAILY, IMMEDIATE, WEEKLY
         | 
| 1074 | 
            -
                #           subscription_name: "GenericString", # required
         | 
| 1075 | 
            -
                #         },
         | 
| 1076 | 
            -
                #         resource_tags: [
         | 
| 1077 | 
            -
                #           {
         | 
| 1078 | 
            -
                #             key: "ResourceTagKey", # required
         | 
| 1079 | 
            -
                #             value: "ResourceTagValue", # required
         | 
| 1080 | 
            -
                #           },
         | 
| 1081 | 
            -
                #         ],
         | 
| 1082 | 
            -
                #       }
         | 
| 1083 | 
            -
                #
         | 
| 1084 844 | 
             
                # @!attribute [rw] anomaly_subscription
         | 
| 1085 845 | 
             
                #   The cost anomaly subscription object that you want to create.
         | 
| 1086 846 | 
             
                #   @return [Types::AnomalySubscription]
         | 
| @@ -1139,75 +899,6 @@ module Aws::CostExplorer | |
| 1139 899 | 
             
                  include Aws::Structure
         | 
| 1140 900 | 
             
                end
         | 
| 1141 901 |  | 
| 1142 | 
            -
                # @note When making an API call, you may pass CreateCostCategoryDefinitionRequest
         | 
| 1143 | 
            -
                #   data as a hash:
         | 
| 1144 | 
            -
                #
         | 
| 1145 | 
            -
                #       {
         | 
| 1146 | 
            -
                #         name: "CostCategoryName", # required
         | 
| 1147 | 
            -
                #         effective_start: "ZonedDateTime",
         | 
| 1148 | 
            -
                #         rule_version: "CostCategoryExpression.v1", # required, accepts CostCategoryExpression.v1
         | 
| 1149 | 
            -
                #         rules: [ # required
         | 
| 1150 | 
            -
                #           {
         | 
| 1151 | 
            -
                #             value: "CostCategoryValue",
         | 
| 1152 | 
            -
                #             rule: {
         | 
| 1153 | 
            -
                #               or: [
         | 
| 1154 | 
            -
                #                 {
         | 
| 1155 | 
            -
                #                   # recursive Expression
         | 
| 1156 | 
            -
                #                 },
         | 
| 1157 | 
            -
                #               ],
         | 
| 1158 | 
            -
                #               and: [
         | 
| 1159 | 
            -
                #                 {
         | 
| 1160 | 
            -
                #                   # recursive Expression
         | 
| 1161 | 
            -
                #                 },
         | 
| 1162 | 
            -
                #               ],
         | 
| 1163 | 
            -
                #               not: {
         | 
| 1164 | 
            -
                #                 # recursive Expression
         | 
| 1165 | 
            -
                #               },
         | 
| 1166 | 
            -
                #               dimensions: {
         | 
| 1167 | 
            -
                #                 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, INVOICING_ENTITY
         | 
| 1168 | 
            -
                #                 values: ["Value"],
         | 
| 1169 | 
            -
                #                 match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 1170 | 
            -
                #               },
         | 
| 1171 | 
            -
                #               tags: {
         | 
| 1172 | 
            -
                #                 key: "TagKey",
         | 
| 1173 | 
            -
                #                 values: ["Value"],
         | 
| 1174 | 
            -
                #                 match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 1175 | 
            -
                #               },
         | 
| 1176 | 
            -
                #               cost_categories: {
         | 
| 1177 | 
            -
                #                 key: "CostCategoryName",
         | 
| 1178 | 
            -
                #                 values: ["Value"],
         | 
| 1179 | 
            -
                #                 match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 1180 | 
            -
                #               },
         | 
| 1181 | 
            -
                #             },
         | 
| 1182 | 
            -
                #             inherited_value: {
         | 
| 1183 | 
            -
                #               dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
         | 
| 1184 | 
            -
                #               dimension_key: "GenericString",
         | 
| 1185 | 
            -
                #             },
         | 
| 1186 | 
            -
                #             type: "REGULAR", # accepts REGULAR, INHERITED_VALUE
         | 
| 1187 | 
            -
                #           },
         | 
| 1188 | 
            -
                #         ],
         | 
| 1189 | 
            -
                #         default_value: "CostCategoryValue",
         | 
| 1190 | 
            -
                #         split_charge_rules: [
         | 
| 1191 | 
            -
                #           {
         | 
| 1192 | 
            -
                #             source: "GenericString", # required
         | 
| 1193 | 
            -
                #             targets: ["GenericString"], # required
         | 
| 1194 | 
            -
                #             method: "FIXED", # required, accepts FIXED, PROPORTIONAL, EVEN
         | 
| 1195 | 
            -
                #             parameters: [
         | 
| 1196 | 
            -
                #               {
         | 
| 1197 | 
            -
                #                 type: "ALLOCATION_PERCENTAGES", # required, accepts ALLOCATION_PERCENTAGES
         | 
| 1198 | 
            -
                #                 values: ["GenericString"], # required
         | 
| 1199 | 
            -
                #               },
         | 
| 1200 | 
            -
                #             ],
         | 
| 1201 | 
            -
                #           },
         | 
| 1202 | 
            -
                #         ],
         | 
| 1203 | 
            -
                #         resource_tags: [
         | 
| 1204 | 
            -
                #           {
         | 
| 1205 | 
            -
                #             key: "ResourceTagKey", # required
         | 
| 1206 | 
            -
                #             value: "ResourceTagValue", # required
         | 
| 1207 | 
            -
                #           },
         | 
| 1208 | 
            -
                #         ],
         | 
| 1209 | 
            -
                #       }
         | 
| 1210 | 
            -
                #
         | 
| 1211 902 | 
             
                # @!attribute [rw] name
         | 
| 1212 903 | 
             
                #   The unique name of the Cost Category.
         | 
| 1213 904 | 
             
                #   @return [String]
         | 
| @@ -1392,14 +1083,6 @@ module Aws::CostExplorer | |
| 1392 1083 |  | 
| 1393 1084 | 
             
                # The time period of the request.
         | 
| 1394 1085 | 
             
                #
         | 
| 1395 | 
            -
                # @note When making an API call, you may pass DateInterval
         | 
| 1396 | 
            -
                #   data as a hash:
         | 
| 1397 | 
            -
                #
         | 
| 1398 | 
            -
                #       {
         | 
| 1399 | 
            -
                #         start: "YearMonthDay", # required
         | 
| 1400 | 
            -
                #         end: "YearMonthDay", # required
         | 
| 1401 | 
            -
                #       }
         | 
| 1402 | 
            -
                #
         | 
| 1403 1086 | 
             
                # @!attribute [rw] start
         | 
| 1404 1087 | 
             
                #   The beginning of the time period. The start date is inclusive. For
         | 
| 1405 1088 | 
             
                #   example, if `start` is `2017-01-01`, Amazon Web Services retrieves
         | 
| @@ -1424,13 +1107,6 @@ module Aws::CostExplorer | |
| 1424 1107 | 
             
                  include Aws::Structure
         | 
| 1425 1108 | 
             
                end
         | 
| 1426 1109 |  | 
| 1427 | 
            -
                # @note When making an API call, you may pass DeleteAnomalyMonitorRequest
         | 
| 1428 | 
            -
                #   data as a hash:
         | 
| 1429 | 
            -
                #
         | 
| 1430 | 
            -
                #       {
         | 
| 1431 | 
            -
                #         monitor_arn: "GenericString", # required
         | 
| 1432 | 
            -
                #       }
         | 
| 1433 | 
            -
                #
         | 
| 1434 1110 | 
             
                # @!attribute [rw] monitor_arn
         | 
| 1435 1111 | 
             
                #   The unique identifier of the cost anomaly monitor that you want to
         | 
| 1436 1112 | 
             
                #   delete.
         | 
| @@ -1448,13 +1124,6 @@ module Aws::CostExplorer | |
| 1448 1124 | 
             
                #
         | 
| 1449 1125 | 
             
                class DeleteAnomalyMonitorResponse < Aws::EmptyStructure; end
         | 
| 1450 1126 |  | 
| 1451 | 
            -
                # @note When making an API call, you may pass DeleteAnomalySubscriptionRequest
         | 
| 1452 | 
            -
                #   data as a hash:
         | 
| 1453 | 
            -
                #
         | 
| 1454 | 
            -
                #       {
         | 
| 1455 | 
            -
                #         subscription_arn: "GenericString", # required
         | 
| 1456 | 
            -
                #       }
         | 
| 1457 | 
            -
                #
         | 
| 1458 1127 | 
             
                # @!attribute [rw] subscription_arn
         | 
| 1459 1128 | 
             
                #   The unique identifier of the cost anomaly subscription that you want
         | 
| 1460 1129 | 
             
                #   to delete.
         | 
| @@ -1472,13 +1141,6 @@ module Aws::CostExplorer | |
| 1472 1141 | 
             
                #
         | 
| 1473 1142 | 
             
                class DeleteAnomalySubscriptionResponse < Aws::EmptyStructure; end
         | 
| 1474 1143 |  | 
| 1475 | 
            -
                # @note When making an API call, you may pass DeleteCostCategoryDefinitionRequest
         | 
| 1476 | 
            -
                #   data as a hash:
         | 
| 1477 | 
            -
                #
         | 
| 1478 | 
            -
                #       {
         | 
| 1479 | 
            -
                #         cost_category_arn: "Arn", # required
         | 
| 1480 | 
            -
                #       }
         | 
| 1481 | 
            -
                #
         | 
| 1482 1144 | 
             
                # @!attribute [rw] cost_category_arn
         | 
| 1483 1145 | 
             
                #   The unique identifier for your Cost Category.
         | 
| 1484 1146 | 
             
                #   @return [String]
         | 
| @@ -1510,14 +1172,6 @@ module Aws::CostExplorer | |
| 1510 1172 | 
             
                  include Aws::Structure
         | 
| 1511 1173 | 
             
                end
         | 
| 1512 1174 |  | 
| 1513 | 
            -
                # @note When making an API call, you may pass DescribeCostCategoryDefinitionRequest
         | 
| 1514 | 
            -
                #   data as a hash:
         | 
| 1515 | 
            -
                #
         | 
| 1516 | 
            -
                #       {
         | 
| 1517 | 
            -
                #         cost_category_arn: "Arn", # required
         | 
| 1518 | 
            -
                #         effective_on: "ZonedDateTime",
         | 
| 1519 | 
            -
                #       }
         | 
| 1520 | 
            -
                #
         | 
| 1521 1175 | 
             
                # @!attribute [rw] cost_category_arn
         | 
| 1522 1176 | 
             
                #   The unique identifier for your Cost Category.
         | 
| 1523 1177 | 
             
                #   @return [String]
         | 
| @@ -1551,15 +1205,6 @@ module Aws::CostExplorer | |
| 1551 1205 | 
             
                # The metadata that you can use to filter and group your results. You
         | 
| 1552 1206 | 
             
                # can use `GetDimensionValues` to find specific values.
         | 
| 1553 1207 | 
             
                #
         | 
| 1554 | 
            -
                # @note When making an API call, you may pass DimensionValues
         | 
| 1555 | 
            -
                #   data as a hash:
         | 
| 1556 | 
            -
                #
         | 
| 1557 | 
            -
                #       {
         | 
| 1558 | 
            -
                #         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, INVOICING_ENTITY
         | 
| 1559 | 
            -
                #         values: ["Value"],
         | 
| 1560 | 
            -
                #         match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 1561 | 
            -
                #       }
         | 
| 1562 | 
            -
                #
         | 
| 1563 1208 | 
             
                # @!attribute [rw] key
         | 
| 1564 1209 | 
             
                #   The names of the metadata types that you can use to filter and group
         | 
| 1565 1210 | 
             
                #   your results. For example, `AZ` returns a list of Availability
         | 
| @@ -1832,13 +1477,6 @@ module Aws::CostExplorer | |
| 1832 1477 | 
             
                # The Amazon EC2 hardware specifications that you want Amazon Web
         | 
| 1833 1478 | 
             
                # Services to provide recommendations for.
         | 
| 1834 1479 | 
             
                #
         | 
| 1835 | 
            -
                # @note When making an API call, you may pass EC2Specification
         | 
| 1836 | 
            -
                #   data as a hash:
         | 
| 1837 | 
            -
                #
         | 
| 1838 | 
            -
                #       {
         | 
| 1839 | 
            -
                #         offering_class: "STANDARD", # accepts STANDARD, CONVERTIBLE
         | 
| 1840 | 
            -
                #       }
         | 
| 1841 | 
            -
                #
         | 
| 1842 1480 | 
             
                # @!attribute [rw] offering_class
         | 
| 1843 1481 | 
             
                #   Indicates whether you want a recommendation for standard or
         | 
| 1844 1482 | 
             
                #   convertible reservations.
         | 
| @@ -1981,113 +1619,6 @@ module Aws::CostExplorer | |
| 1981 1619 | 
             
                #
         | 
| 1982 1620 | 
             
                #  </note>
         | 
| 1983 1621 | 
             
                #
         | 
| 1984 | 
            -
                # @note When making an API call, you may pass Expression
         | 
| 1985 | 
            -
                #   data as a hash:
         | 
| 1986 | 
            -
                #
         | 
| 1987 | 
            -
                #       {
         | 
| 1988 | 
            -
                #         or: [
         | 
| 1989 | 
            -
                #           {
         | 
| 1990 | 
            -
                #             or: {
         | 
| 1991 | 
            -
                #               # recursive Expressions
         | 
| 1992 | 
            -
                #             },
         | 
| 1993 | 
            -
                #             and: {
         | 
| 1994 | 
            -
                #               # recursive Expressions
         | 
| 1995 | 
            -
                #             },
         | 
| 1996 | 
            -
                #             not: {
         | 
| 1997 | 
            -
                #               # recursive Expression
         | 
| 1998 | 
            -
                #             },
         | 
| 1999 | 
            -
                #             dimensions: {
         | 
| 2000 | 
            -
                #               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, INVOICING_ENTITY
         | 
| 2001 | 
            -
                #               values: ["Value"],
         | 
| 2002 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2003 | 
            -
                #             },
         | 
| 2004 | 
            -
                #             tags: {
         | 
| 2005 | 
            -
                #               key: "TagKey",
         | 
| 2006 | 
            -
                #               values: ["Value"],
         | 
| 2007 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2008 | 
            -
                #             },
         | 
| 2009 | 
            -
                #             cost_categories: {
         | 
| 2010 | 
            -
                #               key: "CostCategoryName",
         | 
| 2011 | 
            -
                #               values: ["Value"],
         | 
| 2012 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2013 | 
            -
                #             },
         | 
| 2014 | 
            -
                #           },
         | 
| 2015 | 
            -
                #         ],
         | 
| 2016 | 
            -
                #         and: [
         | 
| 2017 | 
            -
                #           {
         | 
| 2018 | 
            -
                #             or: {
         | 
| 2019 | 
            -
                #               # recursive Expressions
         | 
| 2020 | 
            -
                #             },
         | 
| 2021 | 
            -
                #             and: {
         | 
| 2022 | 
            -
                #               # recursive Expressions
         | 
| 2023 | 
            -
                #             },
         | 
| 2024 | 
            -
                #             not: {
         | 
| 2025 | 
            -
                #               # recursive Expression
         | 
| 2026 | 
            -
                #             },
         | 
| 2027 | 
            -
                #             dimensions: {
         | 
| 2028 | 
            -
                #               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, INVOICING_ENTITY
         | 
| 2029 | 
            -
                #               values: ["Value"],
         | 
| 2030 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2031 | 
            -
                #             },
         | 
| 2032 | 
            -
                #             tags: {
         | 
| 2033 | 
            -
                #               key: "TagKey",
         | 
| 2034 | 
            -
                #               values: ["Value"],
         | 
| 2035 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2036 | 
            -
                #             },
         | 
| 2037 | 
            -
                #             cost_categories: {
         | 
| 2038 | 
            -
                #               key: "CostCategoryName",
         | 
| 2039 | 
            -
                #               values: ["Value"],
         | 
| 2040 | 
            -
                #               match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2041 | 
            -
                #             },
         | 
| 2042 | 
            -
                #           },
         | 
| 2043 | 
            -
                #         ],
         | 
| 2044 | 
            -
                #         not: {
         | 
| 2045 | 
            -
                #           or: [
         | 
| 2046 | 
            -
                #             {
         | 
| 2047 | 
            -
                #               # recursive Expression
         | 
| 2048 | 
            -
                #             },
         | 
| 2049 | 
            -
                #           ],
         | 
| 2050 | 
            -
                #           and: [
         | 
| 2051 | 
            -
                #             {
         | 
| 2052 | 
            -
                #               # recursive Expression
         | 
| 2053 | 
            -
                #             },
         | 
| 2054 | 
            -
                #           ],
         | 
| 2055 | 
            -
                #           not: {
         | 
| 2056 | 
            -
                #             # recursive Expression
         | 
| 2057 | 
            -
                #           },
         | 
| 2058 | 
            -
                #           dimensions: {
         | 
| 2059 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 2060 | 
            -
                #             values: ["Value"],
         | 
| 2061 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2062 | 
            -
                #           },
         | 
| 2063 | 
            -
                #           tags: {
         | 
| 2064 | 
            -
                #             key: "TagKey",
         | 
| 2065 | 
            -
                #             values: ["Value"],
         | 
| 2066 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2067 | 
            -
                #           },
         | 
| 2068 | 
            -
                #           cost_categories: {
         | 
| 2069 | 
            -
                #             key: "CostCategoryName",
         | 
| 2070 | 
            -
                #             values: ["Value"],
         | 
| 2071 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2072 | 
            -
                #           },
         | 
| 2073 | 
            -
                #         },
         | 
| 2074 | 
            -
                #         dimensions: {
         | 
| 2075 | 
            -
                #           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, INVOICING_ENTITY
         | 
| 2076 | 
            -
                #           values: ["Value"],
         | 
| 2077 | 
            -
                #           match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2078 | 
            -
                #         },
         | 
| 2079 | 
            -
                #         tags: {
         | 
| 2080 | 
            -
                #           key: "TagKey",
         | 
| 2081 | 
            -
                #           values: ["Value"],
         | 
| 2082 | 
            -
                #           match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2083 | 
            -
                #         },
         | 
| 2084 | 
            -
                #         cost_categories: {
         | 
| 2085 | 
            -
                #           key: "CostCategoryName",
         | 
| 2086 | 
            -
                #           values: ["Value"],
         | 
| 2087 | 
            -
                #           match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2088 | 
            -
                #         },
         | 
| 2089 | 
            -
                #       }
         | 
| 2090 | 
            -
                #
         | 
| 2091 1622 | 
             
                # @!attribute [rw] or
         | 
| 2092 1623 | 
             
                #   Return results that match either `Dimension` object.
         | 
| 2093 1624 | 
             
                #   @return [Array<Types::Expression>]
         | 
| @@ -2154,25 +1685,55 @@ module Aws::CostExplorer | |
| 2154 1685 | 
             
                  include Aws::Structure
         | 
| 2155 1686 | 
             
                end
         | 
| 2156 1687 |  | 
| 2157 | 
            -
                #  | 
| 2158 | 
            -
                # | 
| 1688 | 
            +
                # A request to generate a recommendation is already in progress.
         | 
| 1689 | 
            +
                #
         | 
| 1690 | 
            +
                # @!attribute [rw] message
         | 
| 1691 | 
            +
                #   @return [String]
         | 
| 2159 1692 | 
             
                #
         | 
| 2160 | 
            -
                # | 
| 2161 | 
            -
                #         monitor_arn: "GenericString",
         | 
| 2162 | 
            -
                #         date_interval: { # required
         | 
| 2163 | 
            -
                #           start_date: "YearMonthDay", # required
         | 
| 2164 | 
            -
                #           end_date: "YearMonthDay",
         | 
| 2165 | 
            -
                #         },
         | 
| 2166 | 
            -
                #         feedback: "YES", # accepts YES, NO, PLANNED_ACTIVITY
         | 
| 2167 | 
            -
                #         total_impact: {
         | 
| 2168 | 
            -
                #           numeric_operator: "EQUAL", # required, accepts EQUAL, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN, BETWEEN
         | 
| 2169 | 
            -
                #           start_value: 1.0, # required
         | 
| 2170 | 
            -
                #           end_value: 1.0,
         | 
| 2171 | 
            -
                #         },
         | 
| 2172 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 2173 | 
            -
                #         max_results: 1,
         | 
| 2174 | 
            -
                #       }
         | 
| 1693 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GenerationExistsException AWS API Documentation
         | 
| 2175 1694 | 
             
                #
         | 
| 1695 | 
            +
                class GenerationExistsException < Struct.new(
         | 
| 1696 | 
            +
                  :message)
         | 
| 1697 | 
            +
                  SENSITIVE = []
         | 
| 1698 | 
            +
                  include Aws::Structure
         | 
| 1699 | 
            +
                end
         | 
| 1700 | 
            +
             | 
| 1701 | 
            +
                # The summary of the Savings Plans recommendation generation.
         | 
| 1702 | 
            +
                #
         | 
| 1703 | 
            +
                # @!attribute [rw] recommendation_id
         | 
| 1704 | 
            +
                #   Indicates the ID for this specific recommendation.
         | 
| 1705 | 
            +
                #   @return [String]
         | 
| 1706 | 
            +
                #
         | 
| 1707 | 
            +
                # @!attribute [rw] generation_status
         | 
| 1708 | 
            +
                #   Indicates whether the recommendation generation succeeded, is
         | 
| 1709 | 
            +
                #   processing, or failed.
         | 
| 1710 | 
            +
                #   @return [String]
         | 
| 1711 | 
            +
                #
         | 
| 1712 | 
            +
                # @!attribute [rw] generation_started_time
         | 
| 1713 | 
            +
                #   Indicates the start time of the recommendation generation.
         | 
| 1714 | 
            +
                #   @return [String]
         | 
| 1715 | 
            +
                #
         | 
| 1716 | 
            +
                # @!attribute [rw] generation_completion_time
         | 
| 1717 | 
            +
                #   Indicates the completion time of the recommendation generation.
         | 
| 1718 | 
            +
                #   @return [String]
         | 
| 1719 | 
            +
                #
         | 
| 1720 | 
            +
                # @!attribute [rw] estimated_completion_time
         | 
| 1721 | 
            +
                #   Indicates the estimated time for when the recommendation generation
         | 
| 1722 | 
            +
                #   will complete.
         | 
| 1723 | 
            +
                #   @return [String]
         | 
| 1724 | 
            +
                #
         | 
| 1725 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GenerationSummary AWS API Documentation
         | 
| 1726 | 
            +
                #
         | 
| 1727 | 
            +
                class GenerationSummary < Struct.new(
         | 
| 1728 | 
            +
                  :recommendation_id,
         | 
| 1729 | 
            +
                  :generation_status,
         | 
| 1730 | 
            +
                  :generation_started_time,
         | 
| 1731 | 
            +
                  :generation_completion_time,
         | 
| 1732 | 
            +
                  :estimated_completion_time)
         | 
| 1733 | 
            +
                  SENSITIVE = []
         | 
| 1734 | 
            +
                  include Aws::Structure
         | 
| 1735 | 
            +
                end
         | 
| 1736 | 
            +
             | 
| 2176 1737 | 
             
                # @!attribute [rw] monitor_arn
         | 
| 2177 1738 | 
             
                #   Retrieves all of the cost anomalies detected for a specific cost
         | 
| 2178 1739 | 
             
                #   anomaly monitor Amazon Resource Name (ARN).
         | 
| @@ -2237,15 +1798,6 @@ module Aws::CostExplorer | |
| 2237 1798 | 
             
                  include Aws::Structure
         | 
| 2238 1799 | 
             
                end
         | 
| 2239 1800 |  | 
| 2240 | 
            -
                # @note When making an API call, you may pass GetAnomalyMonitorsRequest
         | 
| 2241 | 
            -
                #   data as a hash:
         | 
| 2242 | 
            -
                #
         | 
| 2243 | 
            -
                #       {
         | 
| 2244 | 
            -
                #         monitor_arn_list: ["Value"],
         | 
| 2245 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 2246 | 
            -
                #         max_results: 1,
         | 
| 2247 | 
            -
                #       }
         | 
| 2248 | 
            -
                #
         | 
| 2249 1801 | 
             
                # @!attribute [rw] monitor_arn_list
         | 
| 2250 1802 | 
             
                #   A list of cost anomaly monitor ARNs.
         | 
| 2251 1803 | 
             
                #   @return [Array<String>]
         | 
| @@ -2290,16 +1842,6 @@ module Aws::CostExplorer | |
| 2290 1842 | 
             
                  include Aws::Structure
         | 
| 2291 1843 | 
             
                end
         | 
| 2292 1844 |  | 
| 2293 | 
            -
                # @note When making an API call, you may pass GetAnomalySubscriptionsRequest
         | 
| 2294 | 
            -
                #   data as a hash:
         | 
| 2295 | 
            -
                #
         | 
| 2296 | 
            -
                #       {
         | 
| 2297 | 
            -
                #         subscription_arn_list: ["Value"],
         | 
| 2298 | 
            -
                #         monitor_arn: "GenericString",
         | 
| 2299 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 2300 | 
            -
                #         max_results: 1,
         | 
| 2301 | 
            -
                #       }
         | 
| 2302 | 
            -
                #
         | 
| 2303 1845 | 
             
                # @!attribute [rw] subscription_arn_list
         | 
| 2304 1846 | 
             
                #   A list of cost anomaly subscription ARNs.
         | 
| 2305 1847 | 
             
                #   @return [Array<String>]
         | 
| @@ -2349,55 +1891,6 @@ module Aws::CostExplorer | |
| 2349 1891 | 
             
                  include Aws::Structure
         | 
| 2350 1892 | 
             
                end
         | 
| 2351 1893 |  | 
| 2352 | 
            -
                # @note When making an API call, you may pass GetCostAndUsageRequest
         | 
| 2353 | 
            -
                #   data as a hash:
         | 
| 2354 | 
            -
                #
         | 
| 2355 | 
            -
                #       {
         | 
| 2356 | 
            -
                #         time_period: { # required
         | 
| 2357 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 2358 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 2359 | 
            -
                #         },
         | 
| 2360 | 
            -
                #         granularity: "DAILY", # required, accepts DAILY, MONTHLY, HOURLY
         | 
| 2361 | 
            -
                #         filter: {
         | 
| 2362 | 
            -
                #           or: [
         | 
| 2363 | 
            -
                #             {
         | 
| 2364 | 
            -
                #               # recursive Expression
         | 
| 2365 | 
            -
                #             },
         | 
| 2366 | 
            -
                #           ],
         | 
| 2367 | 
            -
                #           and: [
         | 
| 2368 | 
            -
                #             {
         | 
| 2369 | 
            -
                #               # recursive Expression
         | 
| 2370 | 
            -
                #             },
         | 
| 2371 | 
            -
                #           ],
         | 
| 2372 | 
            -
                #           not: {
         | 
| 2373 | 
            -
                #             # recursive Expression
         | 
| 2374 | 
            -
                #           },
         | 
| 2375 | 
            -
                #           dimensions: {
         | 
| 2376 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 2377 | 
            -
                #             values: ["Value"],
         | 
| 2378 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2379 | 
            -
                #           },
         | 
| 2380 | 
            -
                #           tags: {
         | 
| 2381 | 
            -
                #             key: "TagKey",
         | 
| 2382 | 
            -
                #             values: ["Value"],
         | 
| 2383 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2384 | 
            -
                #           },
         | 
| 2385 | 
            -
                #           cost_categories: {
         | 
| 2386 | 
            -
                #             key: "CostCategoryName",
         | 
| 2387 | 
            -
                #             values: ["Value"],
         | 
| 2388 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2389 | 
            -
                #           },
         | 
| 2390 | 
            -
                #         },
         | 
| 2391 | 
            -
                #         metrics: ["MetricName"], # required
         | 
| 2392 | 
            -
                #         group_by: [
         | 
| 2393 | 
            -
                #           {
         | 
| 2394 | 
            -
                #             type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
         | 
| 2395 | 
            -
                #             key: "GroupDefinitionKey",
         | 
| 2396 | 
            -
                #           },
         | 
| 2397 | 
            -
                #         ],
         | 
| 2398 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 2399 | 
            -
                #       }
         | 
| 2400 | 
            -
                #
         | 
| 2401 1894 | 
             
                # @!attribute [rw] time_period
         | 
| 2402 1895 | 
             
                #   Sets the start date and end date for retrieving Amazon Web Services
         | 
| 2403 1896 | 
             
                #   costs. The start date is inclusive, but the end date is exclusive.
         | 
| @@ -2523,55 +2016,6 @@ module Aws::CostExplorer | |
| 2523 2016 | 
             
                  include Aws::Structure
         | 
| 2524 2017 | 
             
                end
         | 
| 2525 2018 |  | 
| 2526 | 
            -
                # @note When making an API call, you may pass GetCostAndUsageWithResourcesRequest
         | 
| 2527 | 
            -
                #   data as a hash:
         | 
| 2528 | 
            -
                #
         | 
| 2529 | 
            -
                #       {
         | 
| 2530 | 
            -
                #         time_period: { # required
         | 
| 2531 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 2532 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 2533 | 
            -
                #         },
         | 
| 2534 | 
            -
                #         granularity: "DAILY", # required, accepts DAILY, MONTHLY, HOURLY
         | 
| 2535 | 
            -
                #         filter: { # required
         | 
| 2536 | 
            -
                #           or: [
         | 
| 2537 | 
            -
                #             {
         | 
| 2538 | 
            -
                #               # recursive Expression
         | 
| 2539 | 
            -
                #             },
         | 
| 2540 | 
            -
                #           ],
         | 
| 2541 | 
            -
                #           and: [
         | 
| 2542 | 
            -
                #             {
         | 
| 2543 | 
            -
                #               # recursive Expression
         | 
| 2544 | 
            -
                #             },
         | 
| 2545 | 
            -
                #           ],
         | 
| 2546 | 
            -
                #           not: {
         | 
| 2547 | 
            -
                #             # recursive Expression
         | 
| 2548 | 
            -
                #           },
         | 
| 2549 | 
            -
                #           dimensions: {
         | 
| 2550 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 2551 | 
            -
                #             values: ["Value"],
         | 
| 2552 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2553 | 
            -
                #           },
         | 
| 2554 | 
            -
                #           tags: {
         | 
| 2555 | 
            -
                #             key: "TagKey",
         | 
| 2556 | 
            -
                #             values: ["Value"],
         | 
| 2557 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2558 | 
            -
                #           },
         | 
| 2559 | 
            -
                #           cost_categories: {
         | 
| 2560 | 
            -
                #             key: "CostCategoryName",
         | 
| 2561 | 
            -
                #             values: ["Value"],
         | 
| 2562 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2563 | 
            -
                #           },
         | 
| 2564 | 
            -
                #         },
         | 
| 2565 | 
            -
                #         metrics: ["MetricName"],
         | 
| 2566 | 
            -
                #         group_by: [
         | 
| 2567 | 
            -
                #           {
         | 
| 2568 | 
            -
                #             type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
         | 
| 2569 | 
            -
                #             key: "GroupDefinitionKey",
         | 
| 2570 | 
            -
                #           },
         | 
| 2571 | 
            -
                #         ],
         | 
| 2572 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 2573 | 
            -
                #       }
         | 
| 2574 | 
            -
                #
         | 
| 2575 2019 | 
             
                # @!attribute [rw] time_period
         | 
| 2576 2020 | 
             
                #   Sets the start and end dates for retrieving Amazon Web Services
         | 
| 2577 2021 | 
             
                #   costs. The range must be within the last 14 days (the start date
         | 
| @@ -2694,56 +2138,6 @@ module Aws::CostExplorer | |
| 2694 2138 | 
             
                  include Aws::Structure
         | 
| 2695 2139 | 
             
                end
         | 
| 2696 2140 |  | 
| 2697 | 
            -
                # @note When making an API call, you may pass GetCostCategoriesRequest
         | 
| 2698 | 
            -
                #   data as a hash:
         | 
| 2699 | 
            -
                #
         | 
| 2700 | 
            -
                #       {
         | 
| 2701 | 
            -
                #         search_string: "SearchString",
         | 
| 2702 | 
            -
                #         time_period: { # required
         | 
| 2703 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 2704 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 2705 | 
            -
                #         },
         | 
| 2706 | 
            -
                #         cost_category_name: "CostCategoryName",
         | 
| 2707 | 
            -
                #         filter: {
         | 
| 2708 | 
            -
                #           or: [
         | 
| 2709 | 
            -
                #             {
         | 
| 2710 | 
            -
                #               # recursive Expression
         | 
| 2711 | 
            -
                #             },
         | 
| 2712 | 
            -
                #           ],
         | 
| 2713 | 
            -
                #           and: [
         | 
| 2714 | 
            -
                #             {
         | 
| 2715 | 
            -
                #               # recursive Expression
         | 
| 2716 | 
            -
                #             },
         | 
| 2717 | 
            -
                #           ],
         | 
| 2718 | 
            -
                #           not: {
         | 
| 2719 | 
            -
                #             # recursive Expression
         | 
| 2720 | 
            -
                #           },
         | 
| 2721 | 
            -
                #           dimensions: {
         | 
| 2722 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 2723 | 
            -
                #             values: ["Value"],
         | 
| 2724 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2725 | 
            -
                #           },
         | 
| 2726 | 
            -
                #           tags: {
         | 
| 2727 | 
            -
                #             key: "TagKey",
         | 
| 2728 | 
            -
                #             values: ["Value"],
         | 
| 2729 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2730 | 
            -
                #           },
         | 
| 2731 | 
            -
                #           cost_categories: {
         | 
| 2732 | 
            -
                #             key: "CostCategoryName",
         | 
| 2733 | 
            -
                #             values: ["Value"],
         | 
| 2734 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2735 | 
            -
                #           },
         | 
| 2736 | 
            -
                #         },
         | 
| 2737 | 
            -
                #         sort_by: [
         | 
| 2738 | 
            -
                #           {
         | 
| 2739 | 
            -
                #             key: "SortDefinitionKey", # required
         | 
| 2740 | 
            -
                #             sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 2741 | 
            -
                #           },
         | 
| 2742 | 
            -
                #         ],
         | 
| 2743 | 
            -
                #         max_results: 1,
         | 
| 2744 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 2745 | 
            -
                #       }
         | 
| 2746 | 
            -
                #
         | 
| 2747 2141 | 
             
                # @!attribute [rw] search_string
         | 
| 2748 2142 | 
             
                #   The value that you want to search the filter values for.
         | 
| 2749 2143 | 
             
                #
         | 
| @@ -2913,49 +2307,6 @@ module Aws::CostExplorer | |
| 2913 2307 | 
             
                  include Aws::Structure
         | 
| 2914 2308 | 
             
                end
         | 
| 2915 2309 |  | 
| 2916 | 
            -
                # @note When making an API call, you may pass GetCostForecastRequest
         | 
| 2917 | 
            -
                #   data as a hash:
         | 
| 2918 | 
            -
                #
         | 
| 2919 | 
            -
                #       {
         | 
| 2920 | 
            -
                #         time_period: { # required
         | 
| 2921 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 2922 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 2923 | 
            -
                #         },
         | 
| 2924 | 
            -
                #         metric: "BLENDED_COST", # required, accepts BLENDED_COST, UNBLENDED_COST, AMORTIZED_COST, NET_UNBLENDED_COST, NET_AMORTIZED_COST, USAGE_QUANTITY, NORMALIZED_USAGE_AMOUNT
         | 
| 2925 | 
            -
                #         granularity: "DAILY", # required, accepts DAILY, MONTHLY, HOURLY
         | 
| 2926 | 
            -
                #         filter: {
         | 
| 2927 | 
            -
                #           or: [
         | 
| 2928 | 
            -
                #             {
         | 
| 2929 | 
            -
                #               # recursive Expression
         | 
| 2930 | 
            -
                #             },
         | 
| 2931 | 
            -
                #           ],
         | 
| 2932 | 
            -
                #           and: [
         | 
| 2933 | 
            -
                #             {
         | 
| 2934 | 
            -
                #               # recursive Expression
         | 
| 2935 | 
            -
                #             },
         | 
| 2936 | 
            -
                #           ],
         | 
| 2937 | 
            -
                #           not: {
         | 
| 2938 | 
            -
                #             # recursive Expression
         | 
| 2939 | 
            -
                #           },
         | 
| 2940 | 
            -
                #           dimensions: {
         | 
| 2941 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 2942 | 
            -
                #             values: ["Value"],
         | 
| 2943 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2944 | 
            -
                #           },
         | 
| 2945 | 
            -
                #           tags: {
         | 
| 2946 | 
            -
                #             key: "TagKey",
         | 
| 2947 | 
            -
                #             values: ["Value"],
         | 
| 2948 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2949 | 
            -
                #           },
         | 
| 2950 | 
            -
                #           cost_categories: {
         | 
| 2951 | 
            -
                #             key: "CostCategoryName",
         | 
| 2952 | 
            -
                #             values: ["Value"],
         | 
| 2953 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 2954 | 
            -
                #           },
         | 
| 2955 | 
            -
                #         },
         | 
| 2956 | 
            -
                #         prediction_interval_level: 1,
         | 
| 2957 | 
            -
                #       }
         | 
| 2958 | 
            -
                #
         | 
| 2959 2310 | 
             
                # @!attribute [rw] time_period
         | 
| 2960 2311 | 
             
                #   The period of time that you want the forecast to cover. The start
         | 
| 2961 2312 | 
             
                #   date must be equal to or no later than the current date to avoid a
         | 
| @@ -3085,57 +2436,6 @@ module Aws::CostExplorer | |
| 3085 2436 | 
             
                  include Aws::Structure
         | 
| 3086 2437 | 
             
                end
         | 
| 3087 2438 |  | 
| 3088 | 
            -
                # @note When making an API call, you may pass GetDimensionValuesRequest
         | 
| 3089 | 
            -
                #   data as a hash:
         | 
| 3090 | 
            -
                #
         | 
| 3091 | 
            -
                #       {
         | 
| 3092 | 
            -
                #         search_string: "SearchString",
         | 
| 3093 | 
            -
                #         time_period: { # required
         | 
| 3094 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 3095 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 3096 | 
            -
                #         },
         | 
| 3097 | 
            -
                #         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, INVOICING_ENTITY
         | 
| 3098 | 
            -
                #         context: "COST_AND_USAGE", # accepts COST_AND_USAGE, RESERVATIONS, SAVINGS_PLANS
         | 
| 3099 | 
            -
                #         filter: {
         | 
| 3100 | 
            -
                #           or: [
         | 
| 3101 | 
            -
                #             {
         | 
| 3102 | 
            -
                #               # recursive Expression
         | 
| 3103 | 
            -
                #             },
         | 
| 3104 | 
            -
                #           ],
         | 
| 3105 | 
            -
                #           and: [
         | 
| 3106 | 
            -
                #             {
         | 
| 3107 | 
            -
                #               # recursive Expression
         | 
| 3108 | 
            -
                #             },
         | 
| 3109 | 
            -
                #           ],
         | 
| 3110 | 
            -
                #           not: {
         | 
| 3111 | 
            -
                #             # recursive Expression
         | 
| 3112 | 
            -
                #           },
         | 
| 3113 | 
            -
                #           dimensions: {
         | 
| 3114 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 3115 | 
            -
                #             values: ["Value"],
         | 
| 3116 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3117 | 
            -
                #           },
         | 
| 3118 | 
            -
                #           tags: {
         | 
| 3119 | 
            -
                #             key: "TagKey",
         | 
| 3120 | 
            -
                #             values: ["Value"],
         | 
| 3121 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3122 | 
            -
                #           },
         | 
| 3123 | 
            -
                #           cost_categories: {
         | 
| 3124 | 
            -
                #             key: "CostCategoryName",
         | 
| 3125 | 
            -
                #             values: ["Value"],
         | 
| 3126 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3127 | 
            -
                #           },
         | 
| 3128 | 
            -
                #         },
         | 
| 3129 | 
            -
                #         sort_by: [
         | 
| 3130 | 
            -
                #           {
         | 
| 3131 | 
            -
                #             key: "SortDefinitionKey", # required
         | 
| 3132 | 
            -
                #             sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 3133 | 
            -
                #           },
         | 
| 3134 | 
            -
                #         ],
         | 
| 3135 | 
            -
                #         max_results: 1,
         | 
| 3136 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 3137 | 
            -
                #       }
         | 
| 3138 | 
            -
                #
         | 
| 3139 2439 | 
             
                # @!attribute [rw] search_string
         | 
| 3140 2440 | 
             
                #   The value that you want to search the filter values for.
         | 
| 3141 2441 | 
             
                #   @return [String]
         | 
| @@ -3557,60 +2857,6 @@ module Aws::CostExplorer | |
| 3557 2857 | 
             
                # You can use the following request parameters to query for how much of
         | 
| 3558 2858 | 
             
                # your instance usage a reservation covered.
         | 
| 3559 2859 | 
             
                #
         | 
| 3560 | 
            -
                # @note When making an API call, you may pass GetReservationCoverageRequest
         | 
| 3561 | 
            -
                #   data as a hash:
         | 
| 3562 | 
            -
                #
         | 
| 3563 | 
            -
                #       {
         | 
| 3564 | 
            -
                #         time_period: { # required
         | 
| 3565 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 3566 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 3567 | 
            -
                #         },
         | 
| 3568 | 
            -
                #         group_by: [
         | 
| 3569 | 
            -
                #           {
         | 
| 3570 | 
            -
                #             type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
         | 
| 3571 | 
            -
                #             key: "GroupDefinitionKey",
         | 
| 3572 | 
            -
                #           },
         | 
| 3573 | 
            -
                #         ],
         | 
| 3574 | 
            -
                #         granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
         | 
| 3575 | 
            -
                #         filter: {
         | 
| 3576 | 
            -
                #           or: [
         | 
| 3577 | 
            -
                #             {
         | 
| 3578 | 
            -
                #               # recursive Expression
         | 
| 3579 | 
            -
                #             },
         | 
| 3580 | 
            -
                #           ],
         | 
| 3581 | 
            -
                #           and: [
         | 
| 3582 | 
            -
                #             {
         | 
| 3583 | 
            -
                #               # recursive Expression
         | 
| 3584 | 
            -
                #             },
         | 
| 3585 | 
            -
                #           ],
         | 
| 3586 | 
            -
                #           not: {
         | 
| 3587 | 
            -
                #             # recursive Expression
         | 
| 3588 | 
            -
                #           },
         | 
| 3589 | 
            -
                #           dimensions: {
         | 
| 3590 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 3591 | 
            -
                #             values: ["Value"],
         | 
| 3592 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3593 | 
            -
                #           },
         | 
| 3594 | 
            -
                #           tags: {
         | 
| 3595 | 
            -
                #             key: "TagKey",
         | 
| 3596 | 
            -
                #             values: ["Value"],
         | 
| 3597 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3598 | 
            -
                #           },
         | 
| 3599 | 
            -
                #           cost_categories: {
         | 
| 3600 | 
            -
                #             key: "CostCategoryName",
         | 
| 3601 | 
            -
                #             values: ["Value"],
         | 
| 3602 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3603 | 
            -
                #           },
         | 
| 3604 | 
            -
                #         },
         | 
| 3605 | 
            -
                #         metrics: ["MetricName"],
         | 
| 3606 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 3607 | 
            -
                #         sort_by: {
         | 
| 3608 | 
            -
                #           key: "SortDefinitionKey", # required
         | 
| 3609 | 
            -
                #           sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 3610 | 
            -
                #         },
         | 
| 3611 | 
            -
                #         max_results: 1,
         | 
| 3612 | 
            -
                #       }
         | 
| 3613 | 
            -
                #
         | 
| 3614 2860 | 
             
                # @!attribute [rw] time_period
         | 
| 3615 2861 | 
             
                #   The start and end dates of the period that you want to retrieve data
         | 
| 3616 2862 | 
             
                #   about reservation coverage for. You can retrieve data for a maximum
         | 
| @@ -3789,55 +3035,6 @@ module Aws::CostExplorer | |
| 3789 3035 | 
             
                  include Aws::Structure
         | 
| 3790 3036 | 
             
                end
         | 
| 3791 3037 |  | 
| 3792 | 
            -
                # @note When making an API call, you may pass GetReservationPurchaseRecommendationRequest
         | 
| 3793 | 
            -
                #   data as a hash:
         | 
| 3794 | 
            -
                #
         | 
| 3795 | 
            -
                #       {
         | 
| 3796 | 
            -
                #         account_id: "GenericString",
         | 
| 3797 | 
            -
                #         service: "GenericString", # required
         | 
| 3798 | 
            -
                #         filter: {
         | 
| 3799 | 
            -
                #           or: [
         | 
| 3800 | 
            -
                #             {
         | 
| 3801 | 
            -
                #               # recursive Expression
         | 
| 3802 | 
            -
                #             },
         | 
| 3803 | 
            -
                #           ],
         | 
| 3804 | 
            -
                #           and: [
         | 
| 3805 | 
            -
                #             {
         | 
| 3806 | 
            -
                #               # recursive Expression
         | 
| 3807 | 
            -
                #             },
         | 
| 3808 | 
            -
                #           ],
         | 
| 3809 | 
            -
                #           not: {
         | 
| 3810 | 
            -
                #             # recursive Expression
         | 
| 3811 | 
            -
                #           },
         | 
| 3812 | 
            -
                #           dimensions: {
         | 
| 3813 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 3814 | 
            -
                #             values: ["Value"],
         | 
| 3815 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3816 | 
            -
                #           },
         | 
| 3817 | 
            -
                #           tags: {
         | 
| 3818 | 
            -
                #             key: "TagKey",
         | 
| 3819 | 
            -
                #             values: ["Value"],
         | 
| 3820 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3821 | 
            -
                #           },
         | 
| 3822 | 
            -
                #           cost_categories: {
         | 
| 3823 | 
            -
                #             key: "CostCategoryName",
         | 
| 3824 | 
            -
                #             values: ["Value"],
         | 
| 3825 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 3826 | 
            -
                #           },
         | 
| 3827 | 
            -
                #         },
         | 
| 3828 | 
            -
                #         account_scope: "PAYER", # accepts PAYER, LINKED
         | 
| 3829 | 
            -
                #         lookback_period_in_days: "SEVEN_DAYS", # accepts SEVEN_DAYS, THIRTY_DAYS, SIXTY_DAYS
         | 
| 3830 | 
            -
                #         term_in_years: "ONE_YEAR", # accepts ONE_YEAR, THREE_YEARS
         | 
| 3831 | 
            -
                #         payment_option: "NO_UPFRONT", # accepts NO_UPFRONT, PARTIAL_UPFRONT, ALL_UPFRONT, LIGHT_UTILIZATION, MEDIUM_UTILIZATION, HEAVY_UTILIZATION
         | 
| 3832 | 
            -
                #         service_specification: {
         | 
| 3833 | 
            -
                #           ec2_specification: {
         | 
| 3834 | 
            -
                #             offering_class: "STANDARD", # accepts STANDARD, CONVERTIBLE
         | 
| 3835 | 
            -
                #           },
         | 
| 3836 | 
            -
                #         },
         | 
| 3837 | 
            -
                #         page_size: 1,
         | 
| 3838 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 3839 | 
            -
                #       }
         | 
| 3840 | 
            -
                #
         | 
| 3841 3038 | 
             
                # @!attribute [rw] account_id
         | 
| 3842 3039 | 
             
                #   The account ID that's associated with the recommendation.
         | 
| 3843 3040 | 
             
                #   @return [String]
         | 
| @@ -3978,59 +3175,6 @@ module Aws::CostExplorer | |
| 3978 3175 | 
             
                  include Aws::Structure
         | 
| 3979 3176 | 
             
                end
         | 
| 3980 3177 |  | 
| 3981 | 
            -
                # @note When making an API call, you may pass GetReservationUtilizationRequest
         | 
| 3982 | 
            -
                #   data as a hash:
         | 
| 3983 | 
            -
                #
         | 
| 3984 | 
            -
                #       {
         | 
| 3985 | 
            -
                #         time_period: { # required
         | 
| 3986 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 3987 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 3988 | 
            -
                #         },
         | 
| 3989 | 
            -
                #         group_by: [
         | 
| 3990 | 
            -
                #           {
         | 
| 3991 | 
            -
                #             type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
         | 
| 3992 | 
            -
                #             key: "GroupDefinitionKey",
         | 
| 3993 | 
            -
                #           },
         | 
| 3994 | 
            -
                #         ],
         | 
| 3995 | 
            -
                #         granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
         | 
| 3996 | 
            -
                #         filter: {
         | 
| 3997 | 
            -
                #           or: [
         | 
| 3998 | 
            -
                #             {
         | 
| 3999 | 
            -
                #               # recursive Expression
         | 
| 4000 | 
            -
                #             },
         | 
| 4001 | 
            -
                #           ],
         | 
| 4002 | 
            -
                #           and: [
         | 
| 4003 | 
            -
                #             {
         | 
| 4004 | 
            -
                #               # recursive Expression
         | 
| 4005 | 
            -
                #             },
         | 
| 4006 | 
            -
                #           ],
         | 
| 4007 | 
            -
                #           not: {
         | 
| 4008 | 
            -
                #             # recursive Expression
         | 
| 4009 | 
            -
                #           },
         | 
| 4010 | 
            -
                #           dimensions: {
         | 
| 4011 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 4012 | 
            -
                #             values: ["Value"],
         | 
| 4013 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4014 | 
            -
                #           },
         | 
| 4015 | 
            -
                #           tags: {
         | 
| 4016 | 
            -
                #             key: "TagKey",
         | 
| 4017 | 
            -
                #             values: ["Value"],
         | 
| 4018 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4019 | 
            -
                #           },
         | 
| 4020 | 
            -
                #           cost_categories: {
         | 
| 4021 | 
            -
                #             key: "CostCategoryName",
         | 
| 4022 | 
            -
                #             values: ["Value"],
         | 
| 4023 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4024 | 
            -
                #           },
         | 
| 4025 | 
            -
                #         },
         | 
| 4026 | 
            -
                #         sort_by: {
         | 
| 4027 | 
            -
                #           key: "SortDefinitionKey", # required
         | 
| 4028 | 
            -
                #           sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 4029 | 
            -
                #         },
         | 
| 4030 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 4031 | 
            -
                #         max_results: 1,
         | 
| 4032 | 
            -
                #       }
         | 
| 4033 | 
            -
                #
         | 
| 4034 3178 | 
             
                # @!attribute [rw] time_period
         | 
| 4035 3179 | 
             
                #   Sets the start and end dates for retrieving Reserved Instance (RI)
         | 
| 4036 3180 | 
             
                #   utilization. The start date is inclusive, but the end date is
         | 
| @@ -4185,49 +3329,6 @@ module Aws::CostExplorer | |
| 4185 3329 | 
             
                  include Aws::Structure
         | 
| 4186 3330 | 
             
                end
         | 
| 4187 3331 |  | 
| 4188 | 
            -
                # @note When making an API call, you may pass GetRightsizingRecommendationRequest
         | 
| 4189 | 
            -
                #   data as a hash:
         | 
| 4190 | 
            -
                #
         | 
| 4191 | 
            -
                #       {
         | 
| 4192 | 
            -
                #         filter: {
         | 
| 4193 | 
            -
                #           or: [
         | 
| 4194 | 
            -
                #             {
         | 
| 4195 | 
            -
                #               # recursive Expression
         | 
| 4196 | 
            -
                #             },
         | 
| 4197 | 
            -
                #           ],
         | 
| 4198 | 
            -
                #           and: [
         | 
| 4199 | 
            -
                #             {
         | 
| 4200 | 
            -
                #               # recursive Expression
         | 
| 4201 | 
            -
                #             },
         | 
| 4202 | 
            -
                #           ],
         | 
| 4203 | 
            -
                #           not: {
         | 
| 4204 | 
            -
                #             # recursive Expression
         | 
| 4205 | 
            -
                #           },
         | 
| 4206 | 
            -
                #           dimensions: {
         | 
| 4207 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 4208 | 
            -
                #             values: ["Value"],
         | 
| 4209 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4210 | 
            -
                #           },
         | 
| 4211 | 
            -
                #           tags: {
         | 
| 4212 | 
            -
                #             key: "TagKey",
         | 
| 4213 | 
            -
                #             values: ["Value"],
         | 
| 4214 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4215 | 
            -
                #           },
         | 
| 4216 | 
            -
                #           cost_categories: {
         | 
| 4217 | 
            -
                #             key: "CostCategoryName",
         | 
| 4218 | 
            -
                #             values: ["Value"],
         | 
| 4219 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4220 | 
            -
                #           },
         | 
| 4221 | 
            -
                #         },
         | 
| 4222 | 
            -
                #         configuration: {
         | 
| 4223 | 
            -
                #           recommendation_target: "SAME_INSTANCE_FAMILY", # required, accepts SAME_INSTANCE_FAMILY, CROSS_INSTANCE_FAMILY
         | 
| 4224 | 
            -
                #           benefits_considered: false, # required
         | 
| 4225 | 
            -
                #         },
         | 
| 4226 | 
            -
                #         service: "GenericString", # required
         | 
| 4227 | 
            -
                #         page_size: 1,
         | 
| 4228 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 4229 | 
            -
                #       }
         | 
| 4230 | 
            -
                #
         | 
| 4231 3332 | 
             
                # @!attribute [rw] filter
         | 
| 4232 3333 | 
             
                #   Use `Expression` to filter by cost or by usage. There are two
         | 
| 4233 3334 | 
             
                #   patterns:
         | 
| @@ -4356,60 +3457,6 @@ module Aws::CostExplorer | |
| 4356 3457 | 
             
                  include Aws::Structure
         | 
| 4357 3458 | 
             
                end
         | 
| 4358 3459 |  | 
| 4359 | 
            -
                # @note When making an API call, you may pass GetSavingsPlansCoverageRequest
         | 
| 4360 | 
            -
                #   data as a hash:
         | 
| 4361 | 
            -
                #
         | 
| 4362 | 
            -
                #       {
         | 
| 4363 | 
            -
                #         time_period: { # required
         | 
| 4364 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 4365 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 4366 | 
            -
                #         },
         | 
| 4367 | 
            -
                #         group_by: [
         | 
| 4368 | 
            -
                #           {
         | 
| 4369 | 
            -
                #             type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
         | 
| 4370 | 
            -
                #             key: "GroupDefinitionKey",
         | 
| 4371 | 
            -
                #           },
         | 
| 4372 | 
            -
                #         ],
         | 
| 4373 | 
            -
                #         granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
         | 
| 4374 | 
            -
                #         filter: {
         | 
| 4375 | 
            -
                #           or: [
         | 
| 4376 | 
            -
                #             {
         | 
| 4377 | 
            -
                #               # recursive Expression
         | 
| 4378 | 
            -
                #             },
         | 
| 4379 | 
            -
                #           ],
         | 
| 4380 | 
            -
                #           and: [
         | 
| 4381 | 
            -
                #             {
         | 
| 4382 | 
            -
                #               # recursive Expression
         | 
| 4383 | 
            -
                #             },
         | 
| 4384 | 
            -
                #           ],
         | 
| 4385 | 
            -
                #           not: {
         | 
| 4386 | 
            -
                #             # recursive Expression
         | 
| 4387 | 
            -
                #           },
         | 
| 4388 | 
            -
                #           dimensions: {
         | 
| 4389 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 4390 | 
            -
                #             values: ["Value"],
         | 
| 4391 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4392 | 
            -
                #           },
         | 
| 4393 | 
            -
                #           tags: {
         | 
| 4394 | 
            -
                #             key: "TagKey",
         | 
| 4395 | 
            -
                #             values: ["Value"],
         | 
| 4396 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4397 | 
            -
                #           },
         | 
| 4398 | 
            -
                #           cost_categories: {
         | 
| 4399 | 
            -
                #             key: "CostCategoryName",
         | 
| 4400 | 
            -
                #             values: ["Value"],
         | 
| 4401 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4402 | 
            -
                #           },
         | 
| 4403 | 
            -
                #         },
         | 
| 4404 | 
            -
                #         metrics: ["MetricName"],
         | 
| 4405 | 
            -
                #         next_token: "NextPageToken",
         | 
| 4406 | 
            -
                #         max_results: 1,
         | 
| 4407 | 
            -
                #         sort_by: {
         | 
| 4408 | 
            -
                #           key: "SortDefinitionKey", # required
         | 
| 4409 | 
            -
                #           sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 4410 | 
            -
                #         },
         | 
| 4411 | 
            -
                #       }
         | 
| 4412 | 
            -
                #
         | 
| 4413 3460 | 
             
                # @!attribute [rw] time_period
         | 
| 4414 3461 | 
             
                #   The time period that you want the usage and costs for. The `Start`
         | 
| 4415 3462 | 
             
                #   date must be within 13 months. The `End` date must be after the
         | 
| @@ -4527,49 +3574,6 @@ module Aws::CostExplorer | |
| 4527 3574 | 
             
                  include Aws::Structure
         | 
| 4528 3575 | 
             
                end
         | 
| 4529 3576 |  | 
| 4530 | 
            -
                # @note When making an API call, you may pass GetSavingsPlansPurchaseRecommendationRequest
         | 
| 4531 | 
            -
                #   data as a hash:
         | 
| 4532 | 
            -
                #
         | 
| 4533 | 
            -
                #       {
         | 
| 4534 | 
            -
                #         savings_plans_type: "COMPUTE_SP", # required, accepts COMPUTE_SP, EC2_INSTANCE_SP, SAGEMAKER_SP
         | 
| 4535 | 
            -
                #         term_in_years: "ONE_YEAR", # required, accepts ONE_YEAR, THREE_YEARS
         | 
| 4536 | 
            -
                #         payment_option: "NO_UPFRONT", # required, accepts NO_UPFRONT, PARTIAL_UPFRONT, ALL_UPFRONT, LIGHT_UTILIZATION, MEDIUM_UTILIZATION, HEAVY_UTILIZATION
         | 
| 4537 | 
            -
                #         account_scope: "PAYER", # accepts PAYER, LINKED
         | 
| 4538 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 4539 | 
            -
                #         page_size: 1,
         | 
| 4540 | 
            -
                #         lookback_period_in_days: "SEVEN_DAYS", # required, accepts SEVEN_DAYS, THIRTY_DAYS, SIXTY_DAYS
         | 
| 4541 | 
            -
                #         filter: {
         | 
| 4542 | 
            -
                #           or: [
         | 
| 4543 | 
            -
                #             {
         | 
| 4544 | 
            -
                #               # recursive Expression
         | 
| 4545 | 
            -
                #             },
         | 
| 4546 | 
            -
                #           ],
         | 
| 4547 | 
            -
                #           and: [
         | 
| 4548 | 
            -
                #             {
         | 
| 4549 | 
            -
                #               # recursive Expression
         | 
| 4550 | 
            -
                #             },
         | 
| 4551 | 
            -
                #           ],
         | 
| 4552 | 
            -
                #           not: {
         | 
| 4553 | 
            -
                #             # recursive Expression
         | 
| 4554 | 
            -
                #           },
         | 
| 4555 | 
            -
                #           dimensions: {
         | 
| 4556 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 4557 | 
            -
                #             values: ["Value"],
         | 
| 4558 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4559 | 
            -
                #           },
         | 
| 4560 | 
            -
                #           tags: {
         | 
| 4561 | 
            -
                #             key: "TagKey",
         | 
| 4562 | 
            -
                #             values: ["Value"],
         | 
| 4563 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4564 | 
            -
                #           },
         | 
| 4565 | 
            -
                #           cost_categories: {
         | 
| 4566 | 
            -
                #             key: "CostCategoryName",
         | 
| 4567 | 
            -
                #             values: ["Value"],
         | 
| 4568 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4569 | 
            -
                #           },
         | 
| 4570 | 
            -
                #         },
         | 
| 4571 | 
            -
                #       }
         | 
| 4572 | 
            -
                #
         | 
| 4573 3577 | 
             
                # @!attribute [rw] savings_plans_type
         | 
| 4574 3578 | 
             
                #   The Savings Plans recommendation type that's requested.
         | 
| 4575 3579 | 
             
                #   @return [String]
         | 
| @@ -4661,53 +3665,6 @@ module Aws::CostExplorer | |
| 4661 3665 | 
             
                  include Aws::Structure
         | 
| 4662 3666 | 
             
                end
         | 
| 4663 3667 |  | 
| 4664 | 
            -
                # @note When making an API call, you may pass GetSavingsPlansUtilizationDetailsRequest
         | 
| 4665 | 
            -
                #   data as a hash:
         | 
| 4666 | 
            -
                #
         | 
| 4667 | 
            -
                #       {
         | 
| 4668 | 
            -
                #         time_period: { # required
         | 
| 4669 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 4670 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 4671 | 
            -
                #         },
         | 
| 4672 | 
            -
                #         filter: {
         | 
| 4673 | 
            -
                #           or: [
         | 
| 4674 | 
            -
                #             {
         | 
| 4675 | 
            -
                #               # recursive Expression
         | 
| 4676 | 
            -
                #             },
         | 
| 4677 | 
            -
                #           ],
         | 
| 4678 | 
            -
                #           and: [
         | 
| 4679 | 
            -
                #             {
         | 
| 4680 | 
            -
                #               # recursive Expression
         | 
| 4681 | 
            -
                #             },
         | 
| 4682 | 
            -
                #           ],
         | 
| 4683 | 
            -
                #           not: {
         | 
| 4684 | 
            -
                #             # recursive Expression
         | 
| 4685 | 
            -
                #           },
         | 
| 4686 | 
            -
                #           dimensions: {
         | 
| 4687 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 4688 | 
            -
                #             values: ["Value"],
         | 
| 4689 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4690 | 
            -
                #           },
         | 
| 4691 | 
            -
                #           tags: {
         | 
| 4692 | 
            -
                #             key: "TagKey",
         | 
| 4693 | 
            -
                #             values: ["Value"],
         | 
| 4694 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4695 | 
            -
                #           },
         | 
| 4696 | 
            -
                #           cost_categories: {
         | 
| 4697 | 
            -
                #             key: "CostCategoryName",
         | 
| 4698 | 
            -
                #             values: ["Value"],
         | 
| 4699 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4700 | 
            -
                #           },
         | 
| 4701 | 
            -
                #         },
         | 
| 4702 | 
            -
                #         data_type: ["ATTRIBUTES"], # accepts ATTRIBUTES, UTILIZATION, AMORTIZED_COMMITMENT, SAVINGS
         | 
| 4703 | 
            -
                #         next_token: "NextPageToken",
         | 
| 4704 | 
            -
                #         max_results: 1,
         | 
| 4705 | 
            -
                #         sort_by: {
         | 
| 4706 | 
            -
                #           key: "SortDefinitionKey", # required
         | 
| 4707 | 
            -
                #           sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 4708 | 
            -
                #         },
         | 
| 4709 | 
            -
                #       }
         | 
| 4710 | 
            -
                #
         | 
| 4711 3668 | 
             
                # @!attribute [rw] time_period
         | 
| 4712 3669 | 
             
                #   The time period that you want the usage and costs for. The `Start`
         | 
| 4713 3670 | 
             
                #   date must be within 13 months. The `End` date must be after the
         | 
| @@ -4819,51 +3776,6 @@ module Aws::CostExplorer | |
| 4819 3776 | 
             
                  include Aws::Structure
         | 
| 4820 3777 | 
             
                end
         | 
| 4821 3778 |  | 
| 4822 | 
            -
                # @note When making an API call, you may pass GetSavingsPlansUtilizationRequest
         | 
| 4823 | 
            -
                #   data as a hash:
         | 
| 4824 | 
            -
                #
         | 
| 4825 | 
            -
                #       {
         | 
| 4826 | 
            -
                #         time_period: { # required
         | 
| 4827 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 4828 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 4829 | 
            -
                #         },
         | 
| 4830 | 
            -
                #         granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
         | 
| 4831 | 
            -
                #         filter: {
         | 
| 4832 | 
            -
                #           or: [
         | 
| 4833 | 
            -
                #             {
         | 
| 4834 | 
            -
                #               # recursive Expression
         | 
| 4835 | 
            -
                #             },
         | 
| 4836 | 
            -
                #           ],
         | 
| 4837 | 
            -
                #           and: [
         | 
| 4838 | 
            -
                #             {
         | 
| 4839 | 
            -
                #               # recursive Expression
         | 
| 4840 | 
            -
                #             },
         | 
| 4841 | 
            -
                #           ],
         | 
| 4842 | 
            -
                #           not: {
         | 
| 4843 | 
            -
                #             # recursive Expression
         | 
| 4844 | 
            -
                #           },
         | 
| 4845 | 
            -
                #           dimensions: {
         | 
| 4846 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 4847 | 
            -
                #             values: ["Value"],
         | 
| 4848 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4849 | 
            -
                #           },
         | 
| 4850 | 
            -
                #           tags: {
         | 
| 4851 | 
            -
                #             key: "TagKey",
         | 
| 4852 | 
            -
                #             values: ["Value"],
         | 
| 4853 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4854 | 
            -
                #           },
         | 
| 4855 | 
            -
                #           cost_categories: {
         | 
| 4856 | 
            -
                #             key: "CostCategoryName",
         | 
| 4857 | 
            -
                #             values: ["Value"],
         | 
| 4858 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4859 | 
            -
                #           },
         | 
| 4860 | 
            -
                #         },
         | 
| 4861 | 
            -
                #         sort_by: {
         | 
| 4862 | 
            -
                #           key: "SortDefinitionKey", # required
         | 
| 4863 | 
            -
                #           sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 4864 | 
            -
                #         },
         | 
| 4865 | 
            -
                #       }
         | 
| 4866 | 
            -
                #
         | 
| 4867 3779 | 
             
                # @!attribute [rw] time_period
         | 
| 4868 3780 | 
             
                #   The time period that you want the usage and costs for. The `Start`
         | 
| 4869 3781 | 
             
                #   date must be within 13 months. The `End` date must be after the
         | 
| @@ -4953,56 +3865,6 @@ module Aws::CostExplorer | |
| 4953 3865 | 
             
                  include Aws::Structure
         | 
| 4954 3866 | 
             
                end
         | 
| 4955 3867 |  | 
| 4956 | 
            -
                # @note When making an API call, you may pass GetTagsRequest
         | 
| 4957 | 
            -
                #   data as a hash:
         | 
| 4958 | 
            -
                #
         | 
| 4959 | 
            -
                #       {
         | 
| 4960 | 
            -
                #         search_string: "SearchString",
         | 
| 4961 | 
            -
                #         time_period: { # required
         | 
| 4962 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 4963 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 4964 | 
            -
                #         },
         | 
| 4965 | 
            -
                #         tag_key: "TagKey",
         | 
| 4966 | 
            -
                #         filter: {
         | 
| 4967 | 
            -
                #           or: [
         | 
| 4968 | 
            -
                #             {
         | 
| 4969 | 
            -
                #               # recursive Expression
         | 
| 4970 | 
            -
                #             },
         | 
| 4971 | 
            -
                #           ],
         | 
| 4972 | 
            -
                #           and: [
         | 
| 4973 | 
            -
                #             {
         | 
| 4974 | 
            -
                #               # recursive Expression
         | 
| 4975 | 
            -
                #             },
         | 
| 4976 | 
            -
                #           ],
         | 
| 4977 | 
            -
                #           not: {
         | 
| 4978 | 
            -
                #             # recursive Expression
         | 
| 4979 | 
            -
                #           },
         | 
| 4980 | 
            -
                #           dimensions: {
         | 
| 4981 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 4982 | 
            -
                #             values: ["Value"],
         | 
| 4983 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4984 | 
            -
                #           },
         | 
| 4985 | 
            -
                #           tags: {
         | 
| 4986 | 
            -
                #             key: "TagKey",
         | 
| 4987 | 
            -
                #             values: ["Value"],
         | 
| 4988 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4989 | 
            -
                #           },
         | 
| 4990 | 
            -
                #           cost_categories: {
         | 
| 4991 | 
            -
                #             key: "CostCategoryName",
         | 
| 4992 | 
            -
                #             values: ["Value"],
         | 
| 4993 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 4994 | 
            -
                #           },
         | 
| 4995 | 
            -
                #         },
         | 
| 4996 | 
            -
                #         sort_by: [
         | 
| 4997 | 
            -
                #           {
         | 
| 4998 | 
            -
                #             key: "SortDefinitionKey", # required
         | 
| 4999 | 
            -
                #             sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 5000 | 
            -
                #           },
         | 
| 5001 | 
            -
                #         ],
         | 
| 5002 | 
            -
                #         max_results: 1,
         | 
| 5003 | 
            -
                #         next_page_token: "NextPageToken",
         | 
| 5004 | 
            -
                #       }
         | 
| 5005 | 
            -
                #
         | 
| 5006 3868 | 
             
                # @!attribute [rw] search_string
         | 
| 5007 3869 | 
             
                #   The value that you want to search for.
         | 
| 5008 3870 | 
             
                #   @return [String]
         | 
| @@ -5160,49 +4022,6 @@ module Aws::CostExplorer | |
| 5160 4022 | 
             
                  include Aws::Structure
         | 
| 5161 4023 | 
             
                end
         | 
| 5162 4024 |  | 
| 5163 | 
            -
                # @note When making an API call, you may pass GetUsageForecastRequest
         | 
| 5164 | 
            -
                #   data as a hash:
         | 
| 5165 | 
            -
                #
         | 
| 5166 | 
            -
                #       {
         | 
| 5167 | 
            -
                #         time_period: { # required
         | 
| 5168 | 
            -
                #           start: "YearMonthDay", # required
         | 
| 5169 | 
            -
                #           end: "YearMonthDay", # required
         | 
| 5170 | 
            -
                #         },
         | 
| 5171 | 
            -
                #         metric: "BLENDED_COST", # required, accepts BLENDED_COST, UNBLENDED_COST, AMORTIZED_COST, NET_UNBLENDED_COST, NET_AMORTIZED_COST, USAGE_QUANTITY, NORMALIZED_USAGE_AMOUNT
         | 
| 5172 | 
            -
                #         granularity: "DAILY", # required, accepts DAILY, MONTHLY, HOURLY
         | 
| 5173 | 
            -
                #         filter: {
         | 
| 5174 | 
            -
                #           or: [
         | 
| 5175 | 
            -
                #             {
         | 
| 5176 | 
            -
                #               # recursive Expression
         | 
| 5177 | 
            -
                #             },
         | 
| 5178 | 
            -
                #           ],
         | 
| 5179 | 
            -
                #           and: [
         | 
| 5180 | 
            -
                #             {
         | 
| 5181 | 
            -
                #               # recursive Expression
         | 
| 5182 | 
            -
                #             },
         | 
| 5183 | 
            -
                #           ],
         | 
| 5184 | 
            -
                #           not: {
         | 
| 5185 | 
            -
                #             # recursive Expression
         | 
| 5186 | 
            -
                #           },
         | 
| 5187 | 
            -
                #           dimensions: {
         | 
| 5188 | 
            -
                #             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, INVOICING_ENTITY
         | 
| 5189 | 
            -
                #             values: ["Value"],
         | 
| 5190 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 5191 | 
            -
                #           },
         | 
| 5192 | 
            -
                #           tags: {
         | 
| 5193 | 
            -
                #             key: "TagKey",
         | 
| 5194 | 
            -
                #             values: ["Value"],
         | 
| 5195 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 5196 | 
            -
                #           },
         | 
| 5197 | 
            -
                #           cost_categories: {
         | 
| 5198 | 
            -
                #             key: "CostCategoryName",
         | 
| 5199 | 
            -
                #             values: ["Value"],
         | 
| 5200 | 
            -
                #             match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 5201 | 
            -
                #           },
         | 
| 5202 | 
            -
                #         },
         | 
| 5203 | 
            -
                #         prediction_interval_level: 1,
         | 
| 5204 | 
            -
                #       }
         | 
| 5205 | 
            -
                #
         | 
| 5206 4025 | 
             
                # @!attribute [rw] time_period
         | 
| 5207 4026 | 
             
                #   The start and end dates of the period that you want to retrieve
         | 
| 5208 4027 | 
             
                #   usage forecast for. The start date is included in the period, but
         | 
| @@ -5345,14 +4164,6 @@ module Aws::CostExplorer | |
| 5345 4164 | 
             
                # Represents a group when you specify a group by criteria or in the
         | 
| 5346 4165 | 
             
                # response to a query with a specific grouping.
         | 
| 5347 4166 | 
             
                #
         | 
| 5348 | 
            -
                # @note When making an API call, you may pass GroupDefinition
         | 
| 5349 | 
            -
                #   data as a hash:
         | 
| 5350 | 
            -
                #
         | 
| 5351 | 
            -
                #       {
         | 
| 5352 | 
            -
                #         type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
         | 
| 5353 | 
            -
                #         key: "GroupDefinitionKey",
         | 
| 5354 | 
            -
                #       }
         | 
| 5355 | 
            -
                #
         | 
| 5356 4167 | 
             
                # @!attribute [rw] type
         | 
| 5357 4168 | 
             
                #   The string that represents the type of group.
         | 
| 5358 4169 | 
             
                #   @return [String]
         | 
| @@ -5455,17 +4266,6 @@ module Aws::CostExplorer | |
| 5455 4266 | 
             
                  include Aws::Structure
         | 
| 5456 4267 | 
             
                end
         | 
| 5457 4268 |  | 
| 5458 | 
            -
                # @note When making an API call, you may pass ListCostAllocationTagsRequest
         | 
| 5459 | 
            -
                #   data as a hash:
         | 
| 5460 | 
            -
                #
         | 
| 5461 | 
            -
                #       {
         | 
| 5462 | 
            -
                #         status: "Active", # accepts Active, Inactive
         | 
| 5463 | 
            -
                #         tag_keys: ["TagKey"],
         | 
| 5464 | 
            -
                #         type: "AWSGenerated", # accepts AWSGenerated, UserDefined
         | 
| 5465 | 
            -
                #         next_token: "NextPageToken",
         | 
| 5466 | 
            -
                #         max_results: 1,
         | 
| 5467 | 
            -
                #       }
         | 
| 5468 | 
            -
                #
         | 
| 5469 4269 | 
             
                # @!attribute [rw] status
         | 
| 5470 4270 | 
             
                #   The status of cost allocation tag keys that are returned for this
         | 
| 5471 4271 | 
             
                #   request.
         | 
| @@ -5527,15 +4327,6 @@ module Aws::CostExplorer | |
| 5527 4327 | 
             
                  include Aws::Structure
         | 
| 5528 4328 | 
             
                end
         | 
| 5529 4329 |  | 
| 5530 | 
            -
                # @note When making an API call, you may pass ListCostCategoryDefinitionsRequest
         | 
| 5531 | 
            -
                #   data as a hash:
         | 
| 5532 | 
            -
                #
         | 
| 5533 | 
            -
                #       {
         | 
| 5534 | 
            -
                #         effective_on: "ZonedDateTime",
         | 
| 5535 | 
            -
                #         next_token: "NextPageToken",
         | 
| 5536 | 
            -
                #         max_results: 1,
         | 
| 5537 | 
            -
                #       }
         | 
| 5538 | 
            -
                #
         | 
| 5539 4330 | 
             
                # @!attribute [rw] effective_on
         | 
| 5540 4331 | 
             
                #   The date when the Cost Category was effective.
         | 
| 5541 4332 | 
             
                #   @return [String]
         | 
| @@ -5580,13 +4371,51 @@ module Aws::CostExplorer | |
| 5580 4371 | 
             
                  include Aws::Structure
         | 
| 5581 4372 | 
             
                end
         | 
| 5582 4373 |  | 
| 5583 | 
            -
                #  | 
| 5584 | 
            -
                #    | 
| 4374 | 
            +
                # @!attribute [rw] generation_status
         | 
| 4375 | 
            +
                #   The status of the recommendation generation.
         | 
| 4376 | 
            +
                #   @return [String]
         | 
| 4377 | 
            +
                #
         | 
| 4378 | 
            +
                # @!attribute [rw] recommendation_ids
         | 
| 4379 | 
            +
                #   The IDs for each specific recommendation.
         | 
| 4380 | 
            +
                #   @return [Array<String>]
         | 
| 4381 | 
            +
                #
         | 
| 4382 | 
            +
                # @!attribute [rw] page_size
         | 
| 4383 | 
            +
                #   The number of recommendations that you want returned in a single
         | 
| 4384 | 
            +
                #   response object.
         | 
| 4385 | 
            +
                #   @return [Integer]
         | 
| 4386 | 
            +
                #
         | 
| 4387 | 
            +
                # @!attribute [rw] next_page_token
         | 
| 4388 | 
            +
                #   The token to retrieve the next set of results.
         | 
| 4389 | 
            +
                #   @return [String]
         | 
| 5585 4390 | 
             
                #
         | 
| 5586 | 
            -
                # | 
| 5587 | 
            -
                #         resource_arn: "Arn", # required
         | 
| 5588 | 
            -
                #       }
         | 
| 4391 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ListSavingsPlansPurchaseRecommendationGenerationRequest AWS API Documentation
         | 
| 5589 4392 | 
             
                #
         | 
| 4393 | 
            +
                class ListSavingsPlansPurchaseRecommendationGenerationRequest < Struct.new(
         | 
| 4394 | 
            +
                  :generation_status,
         | 
| 4395 | 
            +
                  :recommendation_ids,
         | 
| 4396 | 
            +
                  :page_size,
         | 
| 4397 | 
            +
                  :next_page_token)
         | 
| 4398 | 
            +
                  SENSITIVE = []
         | 
| 4399 | 
            +
                  include Aws::Structure
         | 
| 4400 | 
            +
                end
         | 
| 4401 | 
            +
             | 
| 4402 | 
            +
                # @!attribute [rw] generation_summary_list
         | 
| 4403 | 
            +
                #   The list of historical recommendation generations.
         | 
| 4404 | 
            +
                #   @return [Array<Types::GenerationSummary>]
         | 
| 4405 | 
            +
                #
         | 
| 4406 | 
            +
                # @!attribute [rw] next_page_token
         | 
| 4407 | 
            +
                #   The token to retrieve the next set of results.
         | 
| 4408 | 
            +
                #   @return [String]
         | 
| 4409 | 
            +
                #
         | 
| 4410 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ListSavingsPlansPurchaseRecommendationGenerationResponse AWS API Documentation
         | 
| 4411 | 
            +
                #
         | 
| 4412 | 
            +
                class ListSavingsPlansPurchaseRecommendationGenerationResponse < Struct.new(
         | 
| 4413 | 
            +
                  :generation_summary_list,
         | 
| 4414 | 
            +
                  :next_page_token)
         | 
| 4415 | 
            +
                  SENSITIVE = []
         | 
| 4416 | 
            +
                  include Aws::Structure
         | 
| 4417 | 
            +
                end
         | 
| 4418 | 
            +
             | 
| 5590 4419 | 
             
                # @!attribute [rw] resource_arn
         | 
| 5591 4420 | 
             
                #   The Amazon Resource Name (ARN) of the resource. For a list of
         | 
| 5592 4421 | 
             
                #   supported resources, see [ResourceTag][1].
         | 
| @@ -5683,14 +4512,6 @@ module Aws::CostExplorer | |
| 5683 4512 | 
             
                  include Aws::Structure
         | 
| 5684 4513 | 
             
                end
         | 
| 5685 4514 |  | 
| 5686 | 
            -
                # @note When making an API call, you may pass ProvideAnomalyFeedbackRequest
         | 
| 5687 | 
            -
                #   data as a hash:
         | 
| 5688 | 
            -
                #
         | 
| 5689 | 
            -
                #       {
         | 
| 5690 | 
            -
                #         anomaly_id: "GenericString", # required
         | 
| 5691 | 
            -
                #         feedback: "YES", # required, accepts YES, NO, PLANNED_ACTIVITY
         | 
| 5692 | 
            -
                #       }
         | 
| 5693 | 
            -
                #
         | 
| 5694 4515 | 
             
                # @!attribute [rw] anomaly_id
         | 
| 5695 4516 | 
             
                #   A cost anomaly ID.
         | 
| 5696 4517 | 
             
                #   @return [String]
         | 
| @@ -6259,14 +5080,6 @@ module Aws::CostExplorer | |
| 6259 5080 | 
             
                # [2]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_AnomalySubscription.html
         | 
| 6260 5081 | 
             
                # [3]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_CostCategory.html
         | 
| 6261 5082 | 
             
                #
         | 
| 6262 | 
            -
                # @note When making an API call, you may pass ResourceTag
         | 
| 6263 | 
            -
                #   data as a hash:
         | 
| 6264 | 
            -
                #
         | 
| 6265 | 
            -
                #       {
         | 
| 6266 | 
            -
                #         key: "ResourceTagKey", # required
         | 
| 6267 | 
            -
                #         value: "ResourceTagValue", # required
         | 
| 6268 | 
            -
                #       }
         | 
| 6269 | 
            -
                #
         | 
| 6270 5083 | 
             
                # @!attribute [rw] key
         | 
| 6271 5084 | 
             
                #   The key that's associated with the tag.
         | 
| 6272 5085 | 
             
                #   @return [String]
         | 
| @@ -6376,14 +5189,6 @@ module Aws::CostExplorer | |
| 6376 5189 | 
             
                # consideration of existing Savings Plans or Reserved Instance (RI)
         | 
| 6377 5190 | 
             
                # benefits, or neither.
         | 
| 6378 5191 | 
             
                #
         | 
| 6379 | 
            -
                # @note When making an API call, you may pass RightsizingRecommendationConfiguration
         | 
| 6380 | 
            -
                #   data as a hash:
         | 
| 6381 | 
            -
                #
         | 
| 6382 | 
            -
                #       {
         | 
| 6383 | 
            -
                #         recommendation_target: "SAME_INSTANCE_FAMILY", # required, accepts SAME_INSTANCE_FAMILY, CROSS_INSTANCE_FAMILY
         | 
| 6384 | 
            -
                #         benefits_considered: false, # required
         | 
| 6385 | 
            -
                #       }
         | 
| 6386 | 
            -
                #
         | 
| 6387 5192 | 
             
                # @!attribute [rw] recommendation_target
         | 
| 6388 5193 | 
             
                #   The option to see recommendations within the same instance family or
         | 
| 6389 5194 | 
             
                #   recommendations for instances across other families. The default
         | 
| @@ -7052,15 +5857,6 @@ module Aws::CostExplorer | |
| 7052 5857 | 
             
                # Hardware specifications for the service that you want recommendations
         | 
| 7053 5858 | 
             
                # for.
         | 
| 7054 5859 | 
             
                #
         | 
| 7055 | 
            -
                # @note When making an API call, you may pass ServiceSpecification
         | 
| 7056 | 
            -
                #   data as a hash:
         | 
| 7057 | 
            -
                #
         | 
| 7058 | 
            -
                #       {
         | 
| 7059 | 
            -
                #         ec2_specification: {
         | 
| 7060 | 
            -
                #           offering_class: "STANDARD", # accepts STANDARD, CONVERTIBLE
         | 
| 7061 | 
            -
                #         },
         | 
| 7062 | 
            -
                #       }
         | 
| 7063 | 
            -
                #
         | 
| 7064 5860 | 
             
                # @!attribute [rw] ec2_specification
         | 
| 7065 5861 | 
             
                #   The Amazon EC2 hardware specifications that you want Amazon Web
         | 
| 7066 5862 | 
             
                #   Services to provide recommendations for.
         | 
| @@ -7076,14 +5872,6 @@ module Aws::CostExplorer | |
| 7076 5872 |  | 
| 7077 5873 | 
             
                # The details for how to sort the data.
         | 
| 7078 5874 | 
             
                #
         | 
| 7079 | 
            -
                # @note When making an API call, you may pass SortDefinition
         | 
| 7080 | 
            -
                #   data as a hash:
         | 
| 7081 | 
            -
                #
         | 
| 7082 | 
            -
                #       {
         | 
| 7083 | 
            -
                #         key: "SortDefinitionKey", # required
         | 
| 7084 | 
            -
                #         sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
         | 
| 7085 | 
            -
                #       }
         | 
| 7086 | 
            -
                #
         | 
| 7087 5875 | 
             
                # @!attribute [rw] key
         | 
| 7088 5876 | 
             
                #   The key that's used to sort the data.
         | 
| 7089 5877 | 
             
                #   @return [String]
         | 
| @@ -7101,16 +5889,36 @@ module Aws::CostExplorer | |
| 7101 5889 | 
             
                  include Aws::Structure
         | 
| 7102 5890 | 
             
                end
         | 
| 7103 5891 |  | 
| 7104 | 
            -
                #  | 
| 5892 | 
            +
                # @api private
         | 
| 7105 5893 | 
             
                #
         | 
| 7106 | 
            -
                # @ | 
| 7107 | 
            -
                #   data as a hash:
         | 
| 5894 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/StartSavingsPlansPurchaseRecommendationGenerationRequest AWS API Documentation
         | 
| 7108 5895 | 
             
                #
         | 
| 7109 | 
            -
                 | 
| 7110 | 
            -
             | 
| 7111 | 
            -
                # | 
| 7112 | 
            -
                # | 
| 7113 | 
            -
                # | 
| 5896 | 
            +
                class StartSavingsPlansPurchaseRecommendationGenerationRequest < Aws::EmptyStructure; end
         | 
| 5897 | 
            +
             | 
| 5898 | 
            +
                # @!attribute [rw] recommendation_id
         | 
| 5899 | 
            +
                #   The ID for this specific recommendation.
         | 
| 5900 | 
            +
                #   @return [String]
         | 
| 5901 | 
            +
                #
         | 
| 5902 | 
            +
                # @!attribute [rw] generation_started_time
         | 
| 5903 | 
            +
                #   The start time of the recommendation generation.
         | 
| 5904 | 
            +
                #   @return [String]
         | 
| 5905 | 
            +
                #
         | 
| 5906 | 
            +
                # @!attribute [rw] estimated_completion_time
         | 
| 5907 | 
            +
                #   The estimated time for when the recommendation generation will
         | 
| 5908 | 
            +
                #   complete.
         | 
| 5909 | 
            +
                #   @return [String]
         | 
| 5910 | 
            +
                #
         | 
| 5911 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/StartSavingsPlansPurchaseRecommendationGenerationResponse AWS API Documentation
         | 
| 5912 | 
            +
                #
         | 
| 5913 | 
            +
                class StartSavingsPlansPurchaseRecommendationGenerationResponse < Struct.new(
         | 
| 5914 | 
            +
                  :recommendation_id,
         | 
| 5915 | 
            +
                  :generation_started_time,
         | 
| 5916 | 
            +
                  :estimated_completion_time)
         | 
| 5917 | 
            +
                  SENSITIVE = []
         | 
| 5918 | 
            +
                  include Aws::Structure
         | 
| 5919 | 
            +
                end
         | 
| 5920 | 
            +
             | 
| 5921 | 
            +
                # The recipient of `AnomalySubscription` notifications.
         | 
| 7114 5922 | 
             
                #
         | 
| 7115 5923 | 
             
                # @!attribute [rw] address
         | 
| 7116 5924 | 
             
                #   The email address or SNS Amazon Resource Name (ARN). This depends on
         | 
| @@ -7135,19 +5943,6 @@ module Aws::CostExplorer | |
| 7135 5943 | 
             
                  include Aws::Structure
         | 
| 7136 5944 | 
             
                end
         | 
| 7137 5945 |  | 
| 7138 | 
            -
                # @note When making an API call, you may pass TagResourceRequest
         | 
| 7139 | 
            -
                #   data as a hash:
         | 
| 7140 | 
            -
                #
         | 
| 7141 | 
            -
                #       {
         | 
| 7142 | 
            -
                #         resource_arn: "Arn", # required
         | 
| 7143 | 
            -
                #         resource_tags: [ # required
         | 
| 7144 | 
            -
                #           {
         | 
| 7145 | 
            -
                #             key: "ResourceTagKey", # required
         | 
| 7146 | 
            -
                #             value: "ResourceTagValue", # required
         | 
| 7147 | 
            -
                #           },
         | 
| 7148 | 
            -
                #         ],
         | 
| 7149 | 
            -
                #       }
         | 
| 7150 | 
            -
                #
         | 
| 7151 5946 | 
             
                # @!attribute [rw] resource_arn
         | 
| 7152 5947 | 
             
                #   The Amazon Resource Name (ARN) of the resource. For a list of
         | 
| 7153 5948 | 
             
                #   supported resources, see [ResourceTag][1].
         | 
| @@ -7206,15 +6001,6 @@ module Aws::CostExplorer | |
| 7206 6001 | 
             
                # `MatchOption` is applied to the tag `Key` only. That is, it's
         | 
| 7207 6002 | 
             
                # filtered on resources without the given tag key.
         | 
| 7208 6003 | 
             
                #
         | 
| 7209 | 
            -
                # @note When making an API call, you may pass TagValues
         | 
| 7210 | 
            -
                #   data as a hash:
         | 
| 7211 | 
            -
                #
         | 
| 7212 | 
            -
                #       {
         | 
| 7213 | 
            -
                #         key: "TagKey",
         | 
| 7214 | 
            -
                #         values: ["Value"],
         | 
| 7215 | 
            -
                #         match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 7216 | 
            -
                #       }
         | 
| 7217 | 
            -
                #
         | 
| 7218 6004 | 
             
                # @!attribute [rw] key
         | 
| 7219 6005 | 
             
                #   The key for the tag.
         | 
| 7220 6006 | 
             
                #   @return [String]
         | 
| @@ -7330,15 +6116,6 @@ module Aws::CostExplorer | |
| 7330 6116 |  | 
| 7331 6117 | 
             
                # Filters cost anomalies based on the total impact.
         | 
| 7332 6118 | 
             
                #
         | 
| 7333 | 
            -
                # @note When making an API call, you may pass TotalImpactFilter
         | 
| 7334 | 
            -
                #   data as a hash:
         | 
| 7335 | 
            -
                #
         | 
| 7336 | 
            -
                #       {
         | 
| 7337 | 
            -
                #         numeric_operator: "EQUAL", # required, accepts EQUAL, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN, BETWEEN
         | 
| 7338 | 
            -
                #         start_value: 1.0, # required
         | 
| 7339 | 
            -
                #         end_value: 1.0,
         | 
| 7340 | 
            -
                #       }
         | 
| 7341 | 
            -
                #
         | 
| 7342 6119 | 
             
                # @!attribute [rw] numeric_operator
         | 
| 7343 6120 | 
             
                #   The comparing value that's used in the filter.
         | 
| 7344 6121 | 
             
                #   @return [String]
         | 
| @@ -7402,14 +6179,6 @@ module Aws::CostExplorer | |
| 7402 6179 | 
             
                  include Aws::Structure
         | 
| 7403 6180 | 
             
                end
         | 
| 7404 6181 |  | 
| 7405 | 
            -
                # @note When making an API call, you may pass UntagResourceRequest
         | 
| 7406 | 
            -
                #   data as a hash:
         | 
| 7407 | 
            -
                #
         | 
| 7408 | 
            -
                #       {
         | 
| 7409 | 
            -
                #         resource_arn: "Arn", # required
         | 
| 7410 | 
            -
                #         resource_tag_keys: ["ResourceTagKey"], # required
         | 
| 7411 | 
            -
                #       }
         | 
| 7412 | 
            -
                #
         | 
| 7413 6182 | 
             
                # @!attribute [rw] resource_arn
         | 
| 7414 6183 | 
             
                #   The Amazon Resource Name (ARN) of the resource. For a list of
         | 
| 7415 6184 | 
             
                #   supported resources, see [ResourceTag][1].
         | 
| @@ -7440,14 +6209,6 @@ module Aws::CostExplorer | |
| 7440 6209 | 
             
                #
         | 
| 7441 6210 | 
             
                class UntagResourceResponse < Aws::EmptyStructure; end
         | 
| 7442 6211 |  | 
| 7443 | 
            -
                # @note When making an API call, you may pass UpdateAnomalyMonitorRequest
         | 
| 7444 | 
            -
                #   data as a hash:
         | 
| 7445 | 
            -
                #
         | 
| 7446 | 
            -
                #       {
         | 
| 7447 | 
            -
                #         monitor_arn: "GenericString", # required
         | 
| 7448 | 
            -
                #         monitor_name: "GenericString",
         | 
| 7449 | 
            -
                #       }
         | 
| 7450 | 
            -
                #
         | 
| 7451 6212 | 
             
                # @!attribute [rw] monitor_arn
         | 
| 7452 6213 | 
             
                #   Cost anomaly monitor Amazon Resource Names (ARNs).
         | 
| 7453 6214 | 
             
                #   @return [String]
         | 
| @@ -7477,24 +6238,6 @@ module Aws::CostExplorer | |
| 7477 6238 | 
             
                  include Aws::Structure
         | 
| 7478 6239 | 
             
                end
         | 
| 7479 6240 |  | 
| 7480 | 
            -
                # @note When making an API call, you may pass UpdateAnomalySubscriptionRequest
         | 
| 7481 | 
            -
                #   data as a hash:
         | 
| 7482 | 
            -
                #
         | 
| 7483 | 
            -
                #       {
         | 
| 7484 | 
            -
                #         subscription_arn: "GenericString", # required
         | 
| 7485 | 
            -
                #         threshold: 1.0,
         | 
| 7486 | 
            -
                #         frequency: "DAILY", # accepts DAILY, IMMEDIATE, WEEKLY
         | 
| 7487 | 
            -
                #         monitor_arn_list: ["Arn"],
         | 
| 7488 | 
            -
                #         subscribers: [
         | 
| 7489 | 
            -
                #           {
         | 
| 7490 | 
            -
                #             address: "SubscriberAddress",
         | 
| 7491 | 
            -
                #             type: "EMAIL", # accepts EMAIL, SNS
         | 
| 7492 | 
            -
                #             status: "CONFIRMED", # accepts CONFIRMED, DECLINED
         | 
| 7493 | 
            -
                #           },
         | 
| 7494 | 
            -
                #         ],
         | 
| 7495 | 
            -
                #         subscription_name: "GenericString",
         | 
| 7496 | 
            -
                #       }
         | 
| 7497 | 
            -
                #
         | 
| 7498 6241 | 
             
                # @!attribute [rw] subscription_arn
         | 
| 7499 6242 | 
             
                #   A cost anomaly subscription Amazon Resource Name (ARN).
         | 
| 7500 6243 | 
             
                #   @return [String]
         | 
| @@ -7570,18 +6313,6 @@ module Aws::CostExplorer | |
| 7570 6313 | 
             
                  include Aws::Structure
         | 
| 7571 6314 | 
             
                end
         | 
| 7572 6315 |  | 
| 7573 | 
            -
                # @note When making an API call, you may pass UpdateCostAllocationTagsStatusRequest
         | 
| 7574 | 
            -
                #   data as a hash:
         | 
| 7575 | 
            -
                #
         | 
| 7576 | 
            -
                #       {
         | 
| 7577 | 
            -
                #         cost_allocation_tags_status: [ # required
         | 
| 7578 | 
            -
                #           {
         | 
| 7579 | 
            -
                #             tag_key: "TagKey", # required
         | 
| 7580 | 
            -
                #             status: "Active", # required, accepts Active, Inactive
         | 
| 7581 | 
            -
                #           },
         | 
| 7582 | 
            -
                #         ],
         | 
| 7583 | 
            -
                #       }
         | 
| 7584 | 
            -
                #
         | 
| 7585 6316 | 
             
                # @!attribute [rw] cost_allocation_tags_status
         | 
| 7586 6317 | 
             
                #   The list of `CostAllocationTagStatusEntry` objects that are used to
         | 
| 7587 6318 | 
             
                #   update cost allocation tags status for this request.
         | 
| @@ -7609,69 +6340,6 @@ module Aws::CostExplorer | |
| 7609 6340 | 
             
                  include Aws::Structure
         | 
| 7610 6341 | 
             
                end
         | 
| 7611 6342 |  | 
| 7612 | 
            -
                # @note When making an API call, you may pass UpdateCostCategoryDefinitionRequest
         | 
| 7613 | 
            -
                #   data as a hash:
         | 
| 7614 | 
            -
                #
         | 
| 7615 | 
            -
                #       {
         | 
| 7616 | 
            -
                #         cost_category_arn: "Arn", # required
         | 
| 7617 | 
            -
                #         effective_start: "ZonedDateTime",
         | 
| 7618 | 
            -
                #         rule_version: "CostCategoryExpression.v1", # required, accepts CostCategoryExpression.v1
         | 
| 7619 | 
            -
                #         rules: [ # required
         | 
| 7620 | 
            -
                #           {
         | 
| 7621 | 
            -
                #             value: "CostCategoryValue",
         | 
| 7622 | 
            -
                #             rule: {
         | 
| 7623 | 
            -
                #               or: [
         | 
| 7624 | 
            -
                #                 {
         | 
| 7625 | 
            -
                #                   # recursive Expression
         | 
| 7626 | 
            -
                #                 },
         | 
| 7627 | 
            -
                #               ],
         | 
| 7628 | 
            -
                #               and: [
         | 
| 7629 | 
            -
                #                 {
         | 
| 7630 | 
            -
                #                   # recursive Expression
         | 
| 7631 | 
            -
                #                 },
         | 
| 7632 | 
            -
                #               ],
         | 
| 7633 | 
            -
                #               not: {
         | 
| 7634 | 
            -
                #                 # recursive Expression
         | 
| 7635 | 
            -
                #               },
         | 
| 7636 | 
            -
                #               dimensions: {
         | 
| 7637 | 
            -
                #                 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, INVOICING_ENTITY
         | 
| 7638 | 
            -
                #                 values: ["Value"],
         | 
| 7639 | 
            -
                #                 match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 7640 | 
            -
                #               },
         | 
| 7641 | 
            -
                #               tags: {
         | 
| 7642 | 
            -
                #                 key: "TagKey",
         | 
| 7643 | 
            -
                #                 values: ["Value"],
         | 
| 7644 | 
            -
                #                 match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 7645 | 
            -
                #               },
         | 
| 7646 | 
            -
                #               cost_categories: {
         | 
| 7647 | 
            -
                #                 key: "CostCategoryName",
         | 
| 7648 | 
            -
                #                 values: ["Value"],
         | 
| 7649 | 
            -
                #                 match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
         | 
| 7650 | 
            -
                #               },
         | 
| 7651 | 
            -
                #             },
         | 
| 7652 | 
            -
                #             inherited_value: {
         | 
| 7653 | 
            -
                #               dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
         | 
| 7654 | 
            -
                #               dimension_key: "GenericString",
         | 
| 7655 | 
            -
                #             },
         | 
| 7656 | 
            -
                #             type: "REGULAR", # accepts REGULAR, INHERITED_VALUE
         | 
| 7657 | 
            -
                #           },
         | 
| 7658 | 
            -
                #         ],
         | 
| 7659 | 
            -
                #         default_value: "CostCategoryValue",
         | 
| 7660 | 
            -
                #         split_charge_rules: [
         | 
| 7661 | 
            -
                #           {
         | 
| 7662 | 
            -
                #             source: "GenericString", # required
         | 
| 7663 | 
            -
                #             targets: ["GenericString"], # required
         | 
| 7664 | 
            -
                #             method: "FIXED", # required, accepts FIXED, PROPORTIONAL, EVEN
         | 
| 7665 | 
            -
                #             parameters: [
         | 
| 7666 | 
            -
                #               {
         | 
| 7667 | 
            -
                #                 type: "ALLOCATION_PERCENTAGES", # required, accepts ALLOCATION_PERCENTAGES
         | 
| 7668 | 
            -
                #                 values: ["GenericString"], # required
         | 
| 7669 | 
            -
                #               },
         | 
| 7670 | 
            -
                #             ],
         | 
| 7671 | 
            -
                #           },
         | 
| 7672 | 
            -
                #         ],
         | 
| 7673 | 
            -
                #       }
         | 
| 7674 | 
            -
                #
         | 
| 7675 6343 | 
             
                # @!attribute [rw] cost_category_arn
         | 
| 7676 6344 | 
             
                #   The unique identifier for your Cost Category.
         | 
| 7677 6345 | 
             
                #   @return [String]
         |