aws-sdk-costexplorer 1.47.0 → 1.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a3d765e46655e71bb61a2626ac36bf7764ec141368cc5900ddc303c006a787c0
4
- data.tar.gz: 9189ea599344647f963a9e60d12870ea4580d7f73692cc993d39f7aa16c6affa
3
+ metadata.gz: '04803150baa34e220ad9f1d8aba16ec9e785ce813789155ccebe8e339dafe006'
4
+ data.tar.gz: a33f0130626afe470c9fe78b4f20c4a82b9bddadfd622d6ca51ab0b98fb7d102
5
5
  SHA512:
6
- metadata.gz: cf99755242101b726e2ef78f04fd705e90ca1dfea857dfcf1cd48d9de36b28364860d0b7ff889ae8857409f02970f0d5f1bf0e7d82d3c3b04b653760fae52f5e
7
- data.tar.gz: 4ae6ff2989b4e0a28c1914f702a5eb303065eb265e70f6373809485f9a883e05f08fa6fdb691983820a02a08ef7b1254fd9fbd3bad88d598188e705ce8ce08da
6
+ metadata.gz: 0b04966b37fc6cfd8cf503ecce1d9dcc87343c5b5cfd9114fc21c704c8737960cd81f2e1d58787426b14d73cb2e762e473a79e074c437be889ebf1ce5e367521
7
+ data.tar.gz: 426c346572001de07b9f97ec7518c0bdd5439da4c70a0cd791d800abae2dd6f1603ec23d82642585d68a3326ad97536b665286de9bc225d654e971b896697f50
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-costexplorer/customizations'
28
28
  # structure.
29
29
  #
30
30
  # cost_explorer = Aws::CostExplorer::Client.new
31
- # resp = cost_explorer.create_cost_category_definition(params)
31
+ # resp = cost_explorer.create_anomaly_monitor(params)
32
32
  #
33
33
  # See {Client} for more information.
34
34
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-costexplorer/customizations'
48
48
  # @!group service
49
49
  module Aws::CostExplorer
50
50
 
51
- GEM_VERSION = '1.47.0'
51
+ GEM_VERSION = '1.52.0'
52
52
 
53
53
  end
@@ -337,6 +337,119 @@ module Aws::CostExplorer
337
337
 
338
338
  # @!group API Operations
339
339
 
340
+ # Creates a new cost anomaly detection monitor with the requested type
341
+ # and monitor specification.
342
+ #
343
+ # @option params [required, Types::AnomalyMonitor] :anomaly_monitor
344
+ # The cost anomaly detection monitor object that you want to create.
345
+ #
346
+ # @return [Types::CreateAnomalyMonitorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
347
+ #
348
+ # * {Types::CreateAnomalyMonitorResponse#monitor_arn #monitor_arn} => String
349
+ #
350
+ # @example Request syntax with placeholder values
351
+ #
352
+ # resp = client.create_anomaly_monitor({
353
+ # anomaly_monitor: { # required
354
+ # monitor_arn: "GenericString",
355
+ # monitor_name: "GenericString", # required
356
+ # creation_date: "YearMonthDay",
357
+ # last_updated_date: "YearMonthDay",
358
+ # last_evaluated_date: "YearMonthDay",
359
+ # monitor_type: "DIMENSIONAL", # required, accepts DIMENSIONAL, CUSTOM
360
+ # monitor_dimension: "SERVICE", # accepts SERVICE
361
+ # monitor_specification: {
362
+ # or: [
363
+ # {
364
+ # # recursive Expression
365
+ # },
366
+ # ],
367
+ # and: [
368
+ # {
369
+ # # recursive Expression
370
+ # },
371
+ # ],
372
+ # not: {
373
+ # # recursive Expression
374
+ # },
375
+ # dimensions: {
376
+ # key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
377
+ # values: ["Value"],
378
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
379
+ # },
380
+ # tags: {
381
+ # key: "TagKey",
382
+ # values: ["Value"],
383
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
384
+ # },
385
+ # cost_categories: {
386
+ # key: "CostCategoryName",
387
+ # values: ["Value"],
388
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
389
+ # },
390
+ # },
391
+ # dimensional_value_count: 1,
392
+ # },
393
+ # })
394
+ #
395
+ # @example Response structure
396
+ #
397
+ # resp.monitor_arn #=> String
398
+ #
399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CreateAnomalyMonitor AWS API Documentation
400
+ #
401
+ # @overload create_anomaly_monitor(params = {})
402
+ # @param [Hash] params ({})
403
+ def create_anomaly_monitor(params = {}, options = {})
404
+ req = build_request(:create_anomaly_monitor, params)
405
+ req.send_request(options)
406
+ end
407
+
408
+ # Adds a subscription to a cost anomaly detection monitor. You can use
409
+ # each subscription to define subscribers with email or SNS
410
+ # notifications. Email subscribers can set a dollar threshold and a time
411
+ # frequency for receiving notifications.
412
+ #
413
+ # @option params [required, Types::AnomalySubscription] :anomaly_subscription
414
+ # The cost anomaly subscription object that you want to create.
415
+ #
416
+ # @return [Types::CreateAnomalySubscriptionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
417
+ #
418
+ # * {Types::CreateAnomalySubscriptionResponse#subscription_arn #subscription_arn} => String
419
+ #
420
+ # @example Request syntax with placeholder values
421
+ #
422
+ # resp = client.create_anomaly_subscription({
423
+ # anomaly_subscription: { # required
424
+ # subscription_arn: "GenericString",
425
+ # account_id: "GenericString",
426
+ # monitor_arn_list: ["Value"], # required
427
+ # subscribers: [ # required
428
+ # {
429
+ # address: "SubscriberAddress",
430
+ # type: "EMAIL", # accepts EMAIL, SNS
431
+ # status: "CONFIRMED", # accepts CONFIRMED, DECLINED
432
+ # },
433
+ # ],
434
+ # threshold: 1.0, # required
435
+ # frequency: "DAILY", # required, accepts DAILY, IMMEDIATE, WEEKLY
436
+ # subscription_name: "GenericString", # required
437
+ # },
438
+ # })
439
+ #
440
+ # @example Response structure
441
+ #
442
+ # resp.subscription_arn #=> String
443
+ #
444
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CreateAnomalySubscription AWS API Documentation
445
+ #
446
+ # @overload create_anomaly_subscription(params = {})
447
+ # @param [Hash] params ({})
448
+ def create_anomaly_subscription(params = {}, options = {})
449
+ req = build_request(:create_anomaly_subscription, params)
450
+ req.send_request(options)
451
+ end
452
+
340
453
  # Creates a new Cost Category with the requested name and rules.
341
454
  #
342
455
  # @option params [required, String] :name
@@ -393,6 +506,7 @@ module Aws::CostExplorer
393
506
  # cost_categories: {
394
507
  # key: "CostCategoryName",
395
508
  # values: ["Value"],
509
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
396
510
  # },
397
511
  # },
398
512
  # },
@@ -413,6 +527,52 @@ module Aws::CostExplorer
413
527
  req.send_request(options)
414
528
  end
415
529
 
530
+ # Deletes a cost anomaly monitor.
531
+ #
532
+ # @option params [required, String] :monitor_arn
533
+ # The unique identifier of the cost anomaly monitor that you want to
534
+ # delete.
535
+ #
536
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
537
+ #
538
+ # @example Request syntax with placeholder values
539
+ #
540
+ # resp = client.delete_anomaly_monitor({
541
+ # monitor_arn: "GenericString", # required
542
+ # })
543
+ #
544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DeleteAnomalyMonitor AWS API Documentation
545
+ #
546
+ # @overload delete_anomaly_monitor(params = {})
547
+ # @param [Hash] params ({})
548
+ def delete_anomaly_monitor(params = {}, options = {})
549
+ req = build_request(:delete_anomaly_monitor, params)
550
+ req.send_request(options)
551
+ end
552
+
553
+ # Deletes a cost anomaly subscription.
554
+ #
555
+ # @option params [required, String] :subscription_arn
556
+ # The unique identifier of the cost anomaly subscription that you want
557
+ # to delete.
558
+ #
559
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
560
+ #
561
+ # @example Request syntax with placeholder values
562
+ #
563
+ # resp = client.delete_anomaly_subscription({
564
+ # subscription_arn: "GenericString", # required
565
+ # })
566
+ #
567
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DeleteAnomalySubscription AWS API Documentation
568
+ #
569
+ # @overload delete_anomaly_subscription(params = {})
570
+ # @param [Hash] params ({})
571
+ def delete_anomaly_subscription(params = {}, options = {})
572
+ req = build_request(:delete_anomaly_subscription, params)
573
+ req.send_request(options)
574
+ end
575
+
416
576
  # Deletes a Cost Category. Expenses from this month going forward will
417
577
  # no longer be categorized with this Cost Category.
418
578
  #
@@ -497,6 +657,11 @@ module Aws::CostExplorer
497
657
  # resp.cost_category.rules[0].rule.cost_categories.key #=> String
498
658
  # resp.cost_category.rules[0].rule.cost_categories.values #=> Array
499
659
  # resp.cost_category.rules[0].rule.cost_categories.values[0] #=> String
660
+ # resp.cost_category.rules[0].rule.cost_categories.match_options #=> Array
661
+ # resp.cost_category.rules[0].rule.cost_categories.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
662
+ # resp.cost_category.processing_status #=> Array
663
+ # resp.cost_category.processing_status[0].component #=> String, one of "COST_EXPLORER"
664
+ # resp.cost_category.processing_status[0].status #=> String, one of "PROCESSING", "APPLIED"
500
665
  #
501
666
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DescribeCostCategoryDefinition AWS API Documentation
502
667
  #
@@ -507,12 +672,219 @@ module Aws::CostExplorer
507
672
  req.send_request(options)
508
673
  end
509
674
 
675
+ # Retrieves all of the cost anomalies detected on your account, during
676
+ # the time period specified by the `DateInterval` object.
677
+ #
678
+ # @option params [String] :monitor_arn
679
+ # Retrieves all of the cost anomalies detected for a specific cost
680
+ # anomaly monitor Amazon Resource Name (ARN).
681
+ #
682
+ # @option params [required, Types::AnomalyDateInterval] :date_interval
683
+ # Assigns the start and end dates for retrieving cost anomalies. The
684
+ # returned anomaly object will have an `AnomalyEndDate` in the specified
685
+ # time range.
686
+ #
687
+ # @option params [String] :feedback
688
+ # Filters anomaly results by the feedback field on the anomaly object.
689
+ #
690
+ # @option params [Types::TotalImpactFilter] :total_impact
691
+ # Filters anomaly results by the total impact field on the anomaly
692
+ # object. For example, you can filter anomalies `GREATER_THAN 200.00` to
693
+ # retrieve anomalies, with an estimated dollar impact greater than 200.
694
+ #
695
+ # @option params [String] :next_page_token
696
+ # The token to retrieve the next set of results. AWS provides the token
697
+ # when the response from a previous call has more results than the
698
+ # maximum page size.
699
+ #
700
+ # @option params [Integer] :max_results
701
+ # The number of entries a paginated response contains.
702
+ #
703
+ # @return [Types::GetAnomaliesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
704
+ #
705
+ # * {Types::GetAnomaliesResponse#anomalies #anomalies} => Array<Types::Anomaly>
706
+ # * {Types::GetAnomaliesResponse#next_page_token #next_page_token} => String
707
+ #
708
+ # @example Request syntax with placeholder values
709
+ #
710
+ # resp = client.get_anomalies({
711
+ # monitor_arn: "GenericString",
712
+ # date_interval: { # required
713
+ # start_date: "YearMonthDay", # required
714
+ # end_date: "YearMonthDay",
715
+ # },
716
+ # feedback: "YES", # accepts YES, NO, PLANNED_ACTIVITY
717
+ # total_impact: {
718
+ # numeric_operator: "EQUAL", # required, accepts EQUAL, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN, BETWEEN
719
+ # start_value: 1.0, # required
720
+ # end_value: 1.0,
721
+ # },
722
+ # next_page_token: "NextPageToken",
723
+ # max_results: 1,
724
+ # })
725
+ #
726
+ # @example Response structure
727
+ #
728
+ # resp.anomalies #=> Array
729
+ # resp.anomalies[0].anomaly_id #=> String
730
+ # resp.anomalies[0].anomaly_start_date #=> String
731
+ # resp.anomalies[0].anomaly_end_date #=> String
732
+ # resp.anomalies[0].dimension_value #=> String
733
+ # resp.anomalies[0].root_causes #=> Array
734
+ # resp.anomalies[0].root_causes[0].service #=> String
735
+ # resp.anomalies[0].root_causes[0].region #=> String
736
+ # resp.anomalies[0].root_causes[0].linked_account #=> String
737
+ # resp.anomalies[0].root_causes[0].usage_type #=> String
738
+ # resp.anomalies[0].anomaly_score.max_score #=> Float
739
+ # resp.anomalies[0].anomaly_score.current_score #=> Float
740
+ # resp.anomalies[0].impact.max_impact #=> Float
741
+ # resp.anomalies[0].impact.total_impact #=> Float
742
+ # resp.anomalies[0].monitor_arn #=> String
743
+ # resp.anomalies[0].feedback #=> String, one of "YES", "NO", "PLANNED_ACTIVITY"
744
+ # resp.next_page_token #=> String
745
+ #
746
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetAnomalies AWS API Documentation
747
+ #
748
+ # @overload get_anomalies(params = {})
749
+ # @param [Hash] params ({})
750
+ def get_anomalies(params = {}, options = {})
751
+ req = build_request(:get_anomalies, params)
752
+ req.send_request(options)
753
+ end
754
+
755
+ # Retrieves the cost anomaly monitor definitions for your account. You
756
+ # can filter using a list of cost anomaly monitor Amazon Resource Names
757
+ # (ARNs).
758
+ #
759
+ # @option params [Array<String>] :monitor_arn_list
760
+ # A list of cost anomaly monitor ARNs.
761
+ #
762
+ # @option params [String] :next_page_token
763
+ # The token to retrieve the next set of results. AWS provides the token
764
+ # when the response from a previous call has more results than the
765
+ # maximum page size.
766
+ #
767
+ # @option params [Integer] :max_results
768
+ # The number of entries a paginated response contains.
769
+ #
770
+ # @return [Types::GetAnomalyMonitorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
771
+ #
772
+ # * {Types::GetAnomalyMonitorsResponse#anomaly_monitors #anomaly_monitors} => Array&lt;Types::AnomalyMonitor&gt;
773
+ # * {Types::GetAnomalyMonitorsResponse#next_page_token #next_page_token} => String
774
+ #
775
+ # @example Request syntax with placeholder values
776
+ #
777
+ # resp = client.get_anomaly_monitors({
778
+ # monitor_arn_list: ["Value"],
779
+ # next_page_token: "NextPageToken",
780
+ # max_results: 1,
781
+ # })
782
+ #
783
+ # @example Response structure
784
+ #
785
+ # resp.anomaly_monitors #=> Array
786
+ # resp.anomaly_monitors[0].monitor_arn #=> String
787
+ # resp.anomaly_monitors[0].monitor_name #=> String
788
+ # resp.anomaly_monitors[0].creation_date #=> String
789
+ # resp.anomaly_monitors[0].last_updated_date #=> String
790
+ # resp.anomaly_monitors[0].last_evaluated_date #=> String
791
+ # resp.anomaly_monitors[0].monitor_type #=> String, one of "DIMENSIONAL", "CUSTOM"
792
+ # resp.anomaly_monitors[0].monitor_dimension #=> String, one of "SERVICE"
793
+ # resp.anomaly_monitors[0].monitor_specification.or #=> Array
794
+ # resp.anomaly_monitors[0].monitor_specification.or[0] #=> Types::Expression
795
+ # resp.anomaly_monitors[0].monitor_specification.and #=> Array
796
+ # resp.anomaly_monitors[0].monitor_specification.and[0] #=> Types::Expression
797
+ # resp.anomaly_monitors[0].monitor_specification.not #=> Types::Expression
798
+ # resp.anomaly_monitors[0].monitor_specification.dimensions.key #=> String, one of "AZ", "INSTANCE_TYPE", "LINKED_ACCOUNT", "LINKED_ACCOUNT_NAME", "OPERATION", "PURCHASE_TYPE", "REGION", "SERVICE", "SERVICE_CODE", "USAGE_TYPE", "USAGE_TYPE_GROUP", "RECORD_TYPE", "OPERATING_SYSTEM", "TENANCY", "SCOPE", "PLATFORM", "SUBSCRIPTION_ID", "LEGAL_ENTITY_NAME", "DEPLOYMENT_OPTION", "DATABASE_ENGINE", "CACHE_ENGINE", "INSTANCE_TYPE_FAMILY", "BILLING_ENTITY", "RESERVATION_ID", "RESOURCE_ID", "RIGHTSIZING_TYPE", "SAVINGS_PLANS_TYPE", "SAVINGS_PLAN_ARN", "PAYMENT_OPTION"
799
+ # resp.anomaly_monitors[0].monitor_specification.dimensions.values #=> Array
800
+ # resp.anomaly_monitors[0].monitor_specification.dimensions.values[0] #=> String
801
+ # resp.anomaly_monitors[0].monitor_specification.dimensions.match_options #=> Array
802
+ # resp.anomaly_monitors[0].monitor_specification.dimensions.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
803
+ # resp.anomaly_monitors[0].monitor_specification.tags.key #=> String
804
+ # resp.anomaly_monitors[0].monitor_specification.tags.values #=> Array
805
+ # resp.anomaly_monitors[0].monitor_specification.tags.values[0] #=> String
806
+ # resp.anomaly_monitors[0].monitor_specification.tags.match_options #=> Array
807
+ # resp.anomaly_monitors[0].monitor_specification.tags.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
808
+ # resp.anomaly_monitors[0].monitor_specification.cost_categories.key #=> String
809
+ # resp.anomaly_monitors[0].monitor_specification.cost_categories.values #=> Array
810
+ # resp.anomaly_monitors[0].monitor_specification.cost_categories.values[0] #=> String
811
+ # resp.anomaly_monitors[0].monitor_specification.cost_categories.match_options #=> Array
812
+ # resp.anomaly_monitors[0].monitor_specification.cost_categories.match_options[0] #=> String, one of "EQUALS", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CASE_SENSITIVE", "CASE_INSENSITIVE"
813
+ # resp.anomaly_monitors[0].dimensional_value_count #=> Integer
814
+ # resp.next_page_token #=> String
815
+ #
816
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetAnomalyMonitors AWS API Documentation
817
+ #
818
+ # @overload get_anomaly_monitors(params = {})
819
+ # @param [Hash] params ({})
820
+ def get_anomaly_monitors(params = {}, options = {})
821
+ req = build_request(:get_anomaly_monitors, params)
822
+ req.send_request(options)
823
+ end
824
+
825
+ # Retrieves the cost anomaly subscription objects for your account. You
826
+ # can filter using a list of cost anomaly monitor Amazon Resource Names
827
+ # (ARNs).
828
+ #
829
+ # @option params [Array<String>] :subscription_arn_list
830
+ # A list of cost anomaly subscription ARNs.
831
+ #
832
+ # @option params [String] :monitor_arn
833
+ # Cost anomaly monitor ARNs.
834
+ #
835
+ # @option params [String] :next_page_token
836
+ # The token to retrieve the next set of results. AWS provides the token
837
+ # when the response from a previous call has more results than the
838
+ # maximum page size.
839
+ #
840
+ # @option params [Integer] :max_results
841
+ # The number of entries a paginated response contains.
842
+ #
843
+ # @return [Types::GetAnomalySubscriptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
844
+ #
845
+ # * {Types::GetAnomalySubscriptionsResponse#anomaly_subscriptions #anomaly_subscriptions} => Array&lt;Types::AnomalySubscription&gt;
846
+ # * {Types::GetAnomalySubscriptionsResponse#next_page_token #next_page_token} => String
847
+ #
848
+ # @example Request syntax with placeholder values
849
+ #
850
+ # resp = client.get_anomaly_subscriptions({
851
+ # subscription_arn_list: ["Value"],
852
+ # monitor_arn: "GenericString",
853
+ # next_page_token: "NextPageToken",
854
+ # max_results: 1,
855
+ # })
856
+ #
857
+ # @example Response structure
858
+ #
859
+ # resp.anomaly_subscriptions #=> Array
860
+ # resp.anomaly_subscriptions[0].subscription_arn #=> String
861
+ # resp.anomaly_subscriptions[0].account_id #=> String
862
+ # resp.anomaly_subscriptions[0].monitor_arn_list #=> Array
863
+ # resp.anomaly_subscriptions[0].monitor_arn_list[0] #=> String
864
+ # resp.anomaly_subscriptions[0].subscribers #=> Array
865
+ # resp.anomaly_subscriptions[0].subscribers[0].address #=> String
866
+ # resp.anomaly_subscriptions[0].subscribers[0].type #=> String, one of "EMAIL", "SNS"
867
+ # resp.anomaly_subscriptions[0].subscribers[0].status #=> String, one of "CONFIRMED", "DECLINED"
868
+ # resp.anomaly_subscriptions[0].threshold #=> Float
869
+ # resp.anomaly_subscriptions[0].frequency #=> String, one of "DAILY", "IMMEDIATE", "WEEKLY"
870
+ # resp.anomaly_subscriptions[0].subscription_name #=> String
871
+ # resp.next_page_token #=> String
872
+ #
873
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/GetAnomalySubscriptions AWS API Documentation
874
+ #
875
+ # @overload get_anomaly_subscriptions(params = {})
876
+ # @param [Hash] params ({})
877
+ def get_anomaly_subscriptions(params = {}, options = {})
878
+ req = build_request(:get_anomaly_subscriptions, params)
879
+ req.send_request(options)
880
+ end
881
+
510
882
  # Retrieves cost and usage metrics for your account. You can specify
511
883
  # which cost and usage-related metric, such as `BlendedCosts` or
512
884
  # `UsageQuantity`, that you want the request to return. You can also
513
885
  # filter and group your data by various dimensions, such as `SERVICE` or
514
886
  # `AZ`, in a specific time range. For a complete list of valid
515
- # dimensions, see the [GetDimensionValues][1] operation. Master accounts
887
+ # dimensions, see the [GetDimensionValues][1] operation. Master account
516
888
  # in an organization in AWS Organizations have access to all member
517
889
  # accounts.
518
890
  #
@@ -543,7 +915,7 @@ module Aws::CostExplorer
543
915
  #
544
916
  # [1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
545
917
  #
546
- # @option params [Array<String>] :metrics
918
+ # @option params [required, Array<String>] :metrics
547
919
  # Which metrics are returned in the query. For more information about
548
920
  # blended and unblended rates, see [Why does the "blended" annotation
549
921
  # appear on some line items in my bill?][1].
@@ -570,7 +942,7 @@ module Aws::CostExplorer
570
942
  #
571
943
  # @option params [Array<Types::GroupDefinition>] :group_by
572
944
  # You can group AWS costs using up to two different groups, either
573
- # dimensions, tag keys, or both.
945
+ # dimensions, tag keys, cost categories, or any two group by types.
574
946
  #
575
947
  # When you group by tag key, you get all tag values, including empty
576
948
  # strings.
@@ -625,9 +997,10 @@ module Aws::CostExplorer
625
997
  # cost_categories: {
626
998
  # key: "CostCategoryName",
627
999
  # values: ["Value"],
1000
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
628
1001
  # },
629
1002
  # },
630
- # metrics: ["MetricName"],
1003
+ # metrics: ["MetricName"], # required
631
1004
  # group_by: [
632
1005
  # {
633
1006
  # type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
@@ -672,7 +1045,7 @@ module Aws::CostExplorer
672
1045
  # return. You can also filter and group your data by various dimensions,
673
1046
  # such as `SERVICE` or `AZ`, in a specific time range. For a complete
674
1047
  # list of valid dimensions, see the [GetDimensionValues][1] operation.
675
- # Master accounts in an organization in AWS Organizations have access to
1048
+ # Master account in an organization in AWS Organizations have access to
676
1049
  # all member accounts. This API is currently available for the Amazon
677
1050
  # Elastic Compute Cloud – Compute service only.
678
1051
  #
@@ -702,7 +1075,7 @@ module Aws::CostExplorer
702
1075
  # `Granularity` isn't set, the response object doesn't include the
703
1076
  # `Granularity`, `MONTHLY`, `DAILY`, or `HOURLY`.
704
1077
  #
705
- # @option params [Types::Expression] :filter
1078
+ # @option params [required, Types::Expression] :filter
706
1079
  # Filters Amazon Web Services costs by different dimensions. For
707
1080
  # example, you can specify `SERVICE` and `LINKED_ACCOUNT` and get the
708
1081
  # costs that are associated with that account's usage of that service.
@@ -710,7 +1083,8 @@ module Aws::CostExplorer
710
1083
  # dimension filters. For more information, see [Expression][1].
711
1084
  #
712
1085
  # The `GetCostAndUsageWithResources` operation requires that you either
713
- # group by or filter by a `ResourceId`.
1086
+ # group by or filter by a `ResourceId`. It requires the [Expression][1]
1087
+ # `"SERVICE = Amazon Elastic Compute Cloud - Compute"` in the filter.
714
1088
  #
715
1089
  #
716
1090
  #
@@ -743,7 +1117,7 @@ module Aws::CostExplorer
743
1117
  #
744
1118
  # @option params [Array<Types::GroupDefinition>] :group_by
745
1119
  # You can group Amazon Web Services costs using up to two different
746
- # groups: either dimensions, tag keys, or both.
1120
+ # groups: `DIMENSION`, `TAG`, `COST_CATEGORY`.
747
1121
  #
748
1122
  # @option params [String] :next_page_token
749
1123
  # The token to retrieve the next set of results. AWS provides the token
@@ -764,7 +1138,7 @@ module Aws::CostExplorer
764
1138
  # end: "YearMonthDay", # required
765
1139
  # },
766
1140
  # granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
767
- # filter: {
1141
+ # filter: { # required
768
1142
  # or: [
769
1143
  # {
770
1144
  # # recursive Expression
@@ -791,6 +1165,7 @@ module Aws::CostExplorer
791
1165
  # cost_categories: {
792
1166
  # key: "CostCategoryName",
793
1167
  # values: ["Value"],
1168
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
794
1169
  # },
795
1170
  # },
796
1171
  # metrics: ["MetricName"],
@@ -837,7 +1212,9 @@ module Aws::CostExplorer
837
1212
  # your past costs.
838
1213
  #
839
1214
  # @option params [required, Types::DateInterval] :time_period
840
- # The period of time that you want the forecast to cover.
1215
+ # The period of time that you want the forecast to cover. The start date
1216
+ # must be equal to or no later than the current date to avoid a
1217
+ # validation error.
841
1218
  #
842
1219
  # @option params [required, String] :metric
843
1220
  # Which metric Cost Explorer uses to create your forecast. For more
@@ -920,6 +1297,7 @@ module Aws::CostExplorer
920
1297
  # cost_categories: {
921
1298
  # key: "CostCategoryName",
922
1299
  # values: ["Value"],
1300
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
923
1301
  # },
924
1302
  # },
925
1303
  # prediction_interval_level: 1,
@@ -1013,6 +1391,8 @@ module Aws::CostExplorer
1013
1391
  # is Amazon EC2: CloudWatch – Alarms. The response for this operation
1014
1392
  # includes a unit attribute.
1015
1393
  #
1394
+ # * REGION - The AWS Region.
1395
+ #
1016
1396
  # * RECORD\_TYPE - The different types of charges such as RI fees, usage
1017
1397
  # costs, tax refunds, and credits.
1018
1398
  #
@@ -1294,6 +1674,7 @@ module Aws::CostExplorer
1294
1674
  # cost_categories: {
1295
1675
  # key: "CostCategoryName",
1296
1676
  # values: ["Value"],
1677
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1297
1678
  # },
1298
1679
  # },
1299
1680
  # metrics: ["MetricName"],
@@ -1375,9 +1756,9 @@ module Aws::CostExplorer
1375
1756
  #
1376
1757
  # @option params [String] :account_scope
1377
1758
  # The account scope that you want your recommendations for. Amazon Web
1378
- # Services calculates recommendations including the payer account and
1379
- # linked accounts if the value is set to `PAYER`. If the value is
1380
- # `LINKED`, recommendations are calculated for individual linked
1759
+ # Services calculates recommendations including the master account and
1760
+ # member accounts if the value is set to `PAYER`. If the value is
1761
+ # `LINKED`, recommendations are calculated for individual member
1381
1762
  # accounts only.
1382
1763
  #
1383
1764
  # @option params [String] :lookback_period_in_days
@@ -1503,11 +1884,11 @@ module Aws::CostExplorer
1503
1884
  req.send_request(options)
1504
1885
  end
1505
1886
 
1506
- # Retrieves the reservation utilization for your account. Master
1507
- # accounts in an organization have access to member accounts. You can
1508
- # filter data by dimensions in a time period. You can use
1509
- # `GetDimensionValues` to determine the possible dimension values.
1510
- # Currently, you can group only by `SUBSCRIPTION_ID`.
1887
+ # Retrieves the reservation utilization for your account. Master account
1888
+ # in an organization have access to member accounts. You can filter data
1889
+ # by dimensions in a time period. You can use `GetDimensionValues` to
1890
+ # determine the possible dimension values. Currently, you can group only
1891
+ # by `SUBSCRIPTION_ID`.
1511
1892
  #
1512
1893
  # @option params [required, Types::DateInterval] :time_period
1513
1894
  # Sets the start and end dates for retrieving RI utilization. The start
@@ -1615,6 +1996,7 @@ module Aws::CostExplorer
1615
1996
  # cost_categories: {
1616
1997
  # key: "CostCategoryName",
1617
1998
  # values: ["Value"],
1999
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1618
2000
  # },
1619
2001
  # },
1620
2002
  # next_page_token: "NextPageToken",
@@ -1702,8 +2084,10 @@ module Aws::CostExplorer
1702
2084
  #
1703
2085
  # * Simple dimension values - You can set the dimension name and values
1704
2086
  # for the filters that you plan to use. For example, you can filter
1705
- # for `REGION==us-east-1 OR REGION==us-west-1`. The `Expression` for
1706
- # that looks like this:
2087
+ # for `REGION==us-east-1 OR REGION==us-west-1`. For
2088
+ # `GetRightsizingRecommendation`, the Region is a full name (for
2089
+ # example, `REGION==US East (N. Virginia)`. The `Expression` example
2090
+ # looks like:
1707
2091
  #
1708
2092
  # `\{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1",
1709
2093
  # “us-west-1” ] \} \}`
@@ -1800,6 +2184,7 @@ module Aws::CostExplorer
1800
2184
  # cost_categories: {
1801
2185
  # key: "CostCategoryName",
1802
2186
  # values: ["Value"],
2187
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
1803
2188
  # },
1804
2189
  # },
1805
2190
  # configuration: {
@@ -1842,6 +2227,10 @@ module Aws::CostExplorer
1842
2227
  # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.max_cpu_utilization_percentage #=> String
1843
2228
  # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.max_memory_utilization_percentage #=> String
1844
2229
  # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.max_storage_utilization_percentage #=> String
2230
+ # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_read_ops_per_second #=> String
2231
+ # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_write_ops_per_second #=> String
2232
+ # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_read_bytes_per_second #=> String
2233
+ # resp.rightsizing_recommendations[0].current_instance.resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_write_bytes_per_second #=> String
1845
2234
  # resp.rightsizing_recommendations[0].current_instance.reservation_covered_hours_in_lookback_period #=> String
1846
2235
  # resp.rightsizing_recommendations[0].current_instance.savings_plans_covered_hours_in_lookback_period #=> String
1847
2236
  # resp.rightsizing_recommendations[0].current_instance.on_demand_hours_in_lookback_period #=> String
@@ -1866,6 +2255,10 @@ module Aws::CostExplorer
1866
2255
  # resp.rightsizing_recommendations[0].modify_recommendation_detail.target_instances[0].expected_resource_utilization.ec2_resource_utilization.max_cpu_utilization_percentage #=> String
1867
2256
  # resp.rightsizing_recommendations[0].modify_recommendation_detail.target_instances[0].expected_resource_utilization.ec2_resource_utilization.max_memory_utilization_percentage #=> String
1868
2257
  # resp.rightsizing_recommendations[0].modify_recommendation_detail.target_instances[0].expected_resource_utilization.ec2_resource_utilization.max_storage_utilization_percentage #=> String
2258
+ # resp.rightsizing_recommendations[0].modify_recommendation_detail.target_instances[0].expected_resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_read_ops_per_second #=> String
2259
+ # resp.rightsizing_recommendations[0].modify_recommendation_detail.target_instances[0].expected_resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_write_ops_per_second #=> String
2260
+ # resp.rightsizing_recommendations[0].modify_recommendation_detail.target_instances[0].expected_resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_read_bytes_per_second #=> String
2261
+ # resp.rightsizing_recommendations[0].modify_recommendation_detail.target_instances[0].expected_resource_utilization.ec2_resource_utilization.ebs_resource_utilization.ebs_write_bytes_per_second #=> String
1869
2262
  # resp.rightsizing_recommendations[0].terminate_recommendation_detail.estimated_monthly_savings #=> String
1870
2263
  # resp.rightsizing_recommendations[0].terminate_recommendation_detail.currency_code #=> String
1871
2264
  # resp.next_page_token #=> String
@@ -1999,6 +2392,7 @@ module Aws::CostExplorer
1999
2392
  # cost_categories: {
2000
2393
  # key: "CostCategoryName",
2001
2394
  # values: ["Value"],
2395
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2002
2396
  # },
2003
2397
  # },
2004
2398
  # metrics: ["MetricName"],
@@ -2043,9 +2437,9 @@ module Aws::CostExplorer
2043
2437
  #
2044
2438
  # @option params [String] :account_scope
2045
2439
  # The account scope that you want your recommendations for. Amazon Web
2046
- # Services calculates recommendations including the payer account and
2047
- # linked accounts if the value is set to `PAYER`. If the value is
2048
- # `LINKED`, recommendations are calculated for individual linked
2440
+ # Services calculates recommendations including the master account and
2441
+ # member accounts if the value is set to `PAYER`. If the value is
2442
+ # `LINKED`, recommendations are calculated for individual member
2049
2443
  # accounts only.
2050
2444
  #
2051
2445
  # @option params [String] :next_page_token
@@ -2117,6 +2511,7 @@ module Aws::CostExplorer
2117
2511
  # cost_categories: {
2118
2512
  # key: "CostCategoryName",
2119
2513
  # values: ["Value"],
2514
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2120
2515
  # },
2121
2516
  # },
2122
2517
  # })
@@ -2172,7 +2567,7 @@ module Aws::CostExplorer
2172
2567
  end
2173
2568
 
2174
2569
  # Retrieves the Savings Plans utilization for your account across date
2175
- # ranges with daily or monthly granularity. Master accounts in an
2570
+ # ranges with daily or monthly granularity. Master account in an
2176
2571
  # organization have access to member accounts. You can use
2177
2572
  # `GetDimensionValues` in `SAVINGS_PLANS` to determine the possible
2178
2573
  # dimension values.
@@ -2259,6 +2654,7 @@ module Aws::CostExplorer
2259
2654
  # cost_categories: {
2260
2655
  # key: "CostCategoryName",
2261
2656
  # values: ["Value"],
2657
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2262
2658
  # },
2263
2659
  # },
2264
2660
  # })
@@ -2390,6 +2786,7 @@ module Aws::CostExplorer
2390
2786
  # cost_categories: {
2391
2787
  # key: "CostCategoryName",
2392
2788
  # values: ["Value"],
2789
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2393
2790
  # },
2394
2791
  # },
2395
2792
  # next_token: "NextPageToken",
@@ -2500,7 +2897,8 @@ module Aws::CostExplorer
2500
2897
  # exclusive. For example, if `start` is `2017-01-01` and `end` is
2501
2898
  # `2017-05-01`, then the cost and usage data is retrieved from
2502
2899
  # `2017-01-01` up to and including `2017-04-30` but not including
2503
- # `2017-05-01`.
2900
+ # `2017-05-01`. The start date must be equal to or later than the
2901
+ # current date to avoid a validation error.
2504
2902
  #
2505
2903
  # @option params [required, String] :metric
2506
2904
  # Which metric Cost Explorer uses to create your forecast.
@@ -2571,6 +2969,7 @@ module Aws::CostExplorer
2571
2969
  # cost_categories: {
2572
2970
  # key: "CostCategoryName",
2573
2971
  # values: ["Value"],
2972
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2574
2973
  # },
2575
2974
  # },
2576
2975
  # prediction_interval_level: 1,
@@ -2639,6 +3038,11 @@ module Aws::CostExplorer
2639
3038
  # resp.cost_category_references[0].effective_start #=> String
2640
3039
  # resp.cost_category_references[0].effective_end #=> String
2641
3040
  # resp.cost_category_references[0].number_of_rules #=> Integer
3041
+ # resp.cost_category_references[0].processing_status #=> Array
3042
+ # resp.cost_category_references[0].processing_status[0].component #=> String, one of "COST_EXPLORER"
3043
+ # resp.cost_category_references[0].processing_status[0].status #=> String, one of "PROCESSING", "APPLIED"
3044
+ # resp.cost_category_references[0].values #=> Array
3045
+ # resp.cost_category_references[0].values[0] #=> String
2642
3046
  # resp.next_token #=> String
2643
3047
  #
2644
3048
  # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ListCostCategoryDefinitions AWS API Documentation
@@ -2650,6 +3054,127 @@ module Aws::CostExplorer
2650
3054
  req.send_request(options)
2651
3055
  end
2652
3056
 
3057
+ # Modifies the feedback property of a given cost anomaly.
3058
+ #
3059
+ # @option params [required, String] :anomaly_id
3060
+ # A cost anomaly ID.
3061
+ #
3062
+ # @option params [required, String] :feedback
3063
+ # Describes whether the cost anomaly was a planned activity or you
3064
+ # considered it an anomaly.
3065
+ #
3066
+ # @return [Types::ProvideAnomalyFeedbackResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3067
+ #
3068
+ # * {Types::ProvideAnomalyFeedbackResponse#anomaly_id #anomaly_id} => String
3069
+ #
3070
+ # @example Request syntax with placeholder values
3071
+ #
3072
+ # resp = client.provide_anomaly_feedback({
3073
+ # anomaly_id: "GenericString", # required
3074
+ # feedback: "YES", # required, accepts YES, NO, PLANNED_ACTIVITY
3075
+ # })
3076
+ #
3077
+ # @example Response structure
3078
+ #
3079
+ # resp.anomaly_id #=> String
3080
+ #
3081
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ProvideAnomalyFeedback AWS API Documentation
3082
+ #
3083
+ # @overload provide_anomaly_feedback(params = {})
3084
+ # @param [Hash] params ({})
3085
+ def provide_anomaly_feedback(params = {}, options = {})
3086
+ req = build_request(:provide_anomaly_feedback, params)
3087
+ req.send_request(options)
3088
+ end
3089
+
3090
+ # Updates an existing cost anomaly monitor. The changes made are applied
3091
+ # going forward, and does not change anomalies detected in the past.
3092
+ #
3093
+ # @option params [required, String] :monitor_arn
3094
+ # Cost anomaly monitor Amazon Resource Names (ARNs).
3095
+ #
3096
+ # @option params [String] :monitor_name
3097
+ # The new name for the cost anomaly monitor.
3098
+ #
3099
+ # @return [Types::UpdateAnomalyMonitorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3100
+ #
3101
+ # * {Types::UpdateAnomalyMonitorResponse#monitor_arn #monitor_arn} => String
3102
+ #
3103
+ # @example Request syntax with placeholder values
3104
+ #
3105
+ # resp = client.update_anomaly_monitor({
3106
+ # monitor_arn: "GenericString", # required
3107
+ # monitor_name: "GenericString",
3108
+ # })
3109
+ #
3110
+ # @example Response structure
3111
+ #
3112
+ # resp.monitor_arn #=> String
3113
+ #
3114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/UpdateAnomalyMonitor AWS API Documentation
3115
+ #
3116
+ # @overload update_anomaly_monitor(params = {})
3117
+ # @param [Hash] params ({})
3118
+ def update_anomaly_monitor(params = {}, options = {})
3119
+ req = build_request(:update_anomaly_monitor, params)
3120
+ req.send_request(options)
3121
+ end
3122
+
3123
+ # Updates an existing cost anomaly monitor subscription.
3124
+ #
3125
+ # @option params [required, String] :subscription_arn
3126
+ # A cost anomaly subscription Amazon Resource Name (ARN).
3127
+ #
3128
+ # @option params [Float] :threshold
3129
+ # The update to the threshold value for receiving notifications.
3130
+ #
3131
+ # @option params [String] :frequency
3132
+ # The update to the frequency value at which subscribers will receive
3133
+ # notifications.
3134
+ #
3135
+ # @option params [Array<String>] :monitor_arn_list
3136
+ # A list of cost anomaly subscription ARNs.
3137
+ #
3138
+ # @option params [Array<Types::Subscriber>] :subscribers
3139
+ # The update to the subscriber list.
3140
+ #
3141
+ # @option params [String] :subscription_name
3142
+ # The subscription's new name.
3143
+ #
3144
+ # @return [Types::UpdateAnomalySubscriptionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3145
+ #
3146
+ # * {Types::UpdateAnomalySubscriptionResponse#subscription_arn #subscription_arn} => String
3147
+ #
3148
+ # @example Request syntax with placeholder values
3149
+ #
3150
+ # resp = client.update_anomaly_subscription({
3151
+ # subscription_arn: "GenericString", # required
3152
+ # threshold: 1.0,
3153
+ # frequency: "DAILY", # accepts DAILY, IMMEDIATE, WEEKLY
3154
+ # monitor_arn_list: ["Value"],
3155
+ # subscribers: [
3156
+ # {
3157
+ # address: "SubscriberAddress",
3158
+ # type: "EMAIL", # accepts EMAIL, SNS
3159
+ # status: "CONFIRMED", # accepts CONFIRMED, DECLINED
3160
+ # },
3161
+ # ],
3162
+ # subscription_name: "GenericString",
3163
+ # })
3164
+ #
3165
+ # @example Response structure
3166
+ #
3167
+ # resp.subscription_arn #=> String
3168
+ #
3169
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/UpdateAnomalySubscription AWS API Documentation
3170
+ #
3171
+ # @overload update_anomaly_subscription(params = {})
3172
+ # @param [Hash] params ({})
3173
+ def update_anomaly_subscription(params = {}, options = {})
3174
+ req = build_request(:update_anomaly_subscription, params)
3175
+ req.send_request(options)
3176
+ end
3177
+
2653
3178
  # Updates an existing Cost Category. Changes made to the Cost Category
2654
3179
  # rules will be used to categorize the current month’s expenses and
2655
3180
  # future expenses. This won’t change categorization for the previous
@@ -2709,6 +3234,7 @@ module Aws::CostExplorer
2709
3234
  # cost_categories: {
2710
3235
  # key: "CostCategoryName",
2711
3236
  # values: ["Value"],
3237
+ # match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
2712
3238
  # },
2713
3239
  # },
2714
3240
  # },
@@ -2742,7 +3268,7 @@ module Aws::CostExplorer
2742
3268
  params: params,
2743
3269
  config: config)
2744
3270
  context[:gem_name] = 'aws-sdk-costexplorer'
2745
- context[:gem_version] = '1.47.0'
3271
+ context[:gem_version] = '1.52.0'
2746
3272
  Seahorse::Client::Request.new(handlers, context)
2747
3273
  end
2748
3274