aws-sdk-costoptimizationhub 1.0.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.
@@ -0,0 +1,2019 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::CostOptimizationHub
11
+ module Types
12
+
13
+ # You are not authorized to use this operation with the given
14
+ # parameters.
15
+ #
16
+ # @!attribute [rw] message
17
+ # @return [String]
18
+ #
19
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/AccessDeniedException AWS API Documentation
20
+ #
21
+ class AccessDeniedException < Struct.new(
22
+ :message)
23
+ SENSITIVE = []
24
+ include Aws::Structure
25
+ end
26
+
27
+ # Describes the enrollment status of an organization's member accounts
28
+ # in Cost Optimization Hub.
29
+ #
30
+ # @!attribute [rw] account_id
31
+ # The Amazon Web Services account ID.
32
+ # @return [String]
33
+ #
34
+ # @!attribute [rw] created_timestamp
35
+ # The time when the account enrollment status was created.
36
+ # @return [Time]
37
+ #
38
+ # @!attribute [rw] last_updated_timestamp
39
+ # The time when the account enrollment status was last updated.
40
+ # @return [Time]
41
+ #
42
+ # @!attribute [rw] status
43
+ # The account enrollment status.
44
+ # @return [String]
45
+ #
46
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/AccountEnrollmentStatus AWS API Documentation
47
+ #
48
+ class AccountEnrollmentStatus < Struct.new(
49
+ :account_id,
50
+ :created_timestamp,
51
+ :last_updated_timestamp,
52
+ :status)
53
+ SENSITIVE = []
54
+ include Aws::Structure
55
+ end
56
+
57
+ # Describes the Amazon Elastic Block Store performance configuration of
58
+ # the current and recommended resource configuration for a
59
+ # recommendation.
60
+ #
61
+ # @!attribute [rw] iops
62
+ # The number of I/O operations per second.
63
+ # @return [Float]
64
+ #
65
+ # @!attribute [rw] throughput
66
+ # The throughput that the volume supports.
67
+ # @return [Float]
68
+ #
69
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/BlockStoragePerformanceConfiguration AWS API Documentation
70
+ #
71
+ class BlockStoragePerformanceConfiguration < Struct.new(
72
+ :iops,
73
+ :throughput)
74
+ SENSITIVE = []
75
+ include Aws::Structure
76
+ end
77
+
78
+ # Describes the performance configuration for compute services such as
79
+ # Amazon EC2, Lambda, and ECS.
80
+ #
81
+ # @!attribute [rw] architecture
82
+ # The architecture of the resource.
83
+ # @return [String]
84
+ #
85
+ # @!attribute [rw] memory_size_in_mb
86
+ # The memory size of the resource.
87
+ # @return [Integer]
88
+ #
89
+ # @!attribute [rw] platform
90
+ # The platform of the resource. The platform is the specific
91
+ # combination of operating system, license model, and software on an
92
+ # instance.
93
+ # @return [String]
94
+ #
95
+ # @!attribute [rw] v_cpu
96
+ # The number of vCPU cores in the resource.
97
+ # @return [Float]
98
+ #
99
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ComputeConfiguration AWS API Documentation
100
+ #
101
+ class ComputeConfiguration < Struct.new(
102
+ :architecture,
103
+ :memory_size_in_mb,
104
+ :platform,
105
+ :v_cpu)
106
+ SENSITIVE = []
107
+ include Aws::Structure
108
+ end
109
+
110
+ # The Compute Savings Plans recommendation details.
111
+ #
112
+ # @!attribute [rw] configuration
113
+ # Configuration details of the Compute Savings Plans to purchase.
114
+ # @return [Types::ComputeSavingsPlansConfiguration]
115
+ #
116
+ # @!attribute [rw] cost_calculation
117
+ # Cost impact of the Savings Plans purchase recommendation.
118
+ # @return [Types::SavingsPlansCostCalculation]
119
+ #
120
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ComputeSavingsPlans AWS API Documentation
121
+ #
122
+ class ComputeSavingsPlans < Struct.new(
123
+ :configuration,
124
+ :cost_calculation)
125
+ SENSITIVE = []
126
+ include Aws::Structure
127
+ end
128
+
129
+ # The Compute Savings Plans configuration used for recommendations.
130
+ #
131
+ # @!attribute [rw] account_scope
132
+ # The account scope that you want your recommendations for. Amazon Web
133
+ # Services calculates recommendations including the management account
134
+ # and member accounts if the value is set to `PAYER`. If the value is
135
+ # `LINKED`, recommendations are calculated for individual member
136
+ # accounts only.
137
+ # @return [String]
138
+ #
139
+ # @!attribute [rw] hourly_commitment
140
+ # The hourly commitment for the Savings Plans type.
141
+ # @return [String]
142
+ #
143
+ # @!attribute [rw] payment_option
144
+ # The payment option for the commitment.
145
+ # @return [String]
146
+ #
147
+ # @!attribute [rw] term
148
+ # The Savings Plans recommendation term in years.
149
+ # @return [String]
150
+ #
151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ComputeSavingsPlansConfiguration AWS API Documentation
152
+ #
153
+ class ComputeSavingsPlansConfiguration < Struct.new(
154
+ :account_scope,
155
+ :hourly_commitment,
156
+ :payment_option,
157
+ :term)
158
+ SENSITIVE = []
159
+ include Aws::Structure
160
+ end
161
+
162
+ # Describes the Amazon Elastic Block Store volume configuration of the
163
+ # current and recommended resource configuration for a recommendation.
164
+ #
165
+ # @!attribute [rw] configuration
166
+ # The Amazon Elastic Block Store volume configuration used for
167
+ # recommendations.
168
+ # @return [Types::EbsVolumeConfiguration]
169
+ #
170
+ # @!attribute [rw] cost_calculation
171
+ # Cost impact of the recommendation.
172
+ # @return [Types::ResourceCostCalculation]
173
+ #
174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/EbsVolume AWS API Documentation
175
+ #
176
+ class EbsVolume < Struct.new(
177
+ :configuration,
178
+ :cost_calculation)
179
+ SENSITIVE = []
180
+ include Aws::Structure
181
+ end
182
+
183
+ # The Amazon Elastic Block Store volume configuration used for
184
+ # recommendations.
185
+ #
186
+ # @!attribute [rw] attachment_state
187
+ # The Amazon Elastic Block Store attachment state.
188
+ # @return [String]
189
+ #
190
+ # @!attribute [rw] performance
191
+ # The Amazon Elastic Block Store performance configuration.
192
+ # @return [Types::BlockStoragePerformanceConfiguration]
193
+ #
194
+ # @!attribute [rw] storage
195
+ # The disk storage of the Amazon Elastic Block Store volume.
196
+ # @return [Types::StorageConfiguration]
197
+ #
198
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/EbsVolumeConfiguration AWS API Documentation
199
+ #
200
+ class EbsVolumeConfiguration < Struct.new(
201
+ :attachment_state,
202
+ :performance,
203
+ :storage)
204
+ SENSITIVE = []
205
+ include Aws::Structure
206
+ end
207
+
208
+ # The EC2 Auto Scaling group recommendation details.
209
+ #
210
+ # @!attribute [rw] configuration
211
+ # The EC2 Auto Scaling group configuration used for recommendations.
212
+ # @return [Types::Ec2AutoScalingGroupConfiguration]
213
+ #
214
+ # @!attribute [rw] cost_calculation
215
+ # Cost impact of the recommendation.
216
+ # @return [Types::ResourceCostCalculation]
217
+ #
218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2AutoScalingGroup AWS API Documentation
219
+ #
220
+ class Ec2AutoScalingGroup < Struct.new(
221
+ :configuration,
222
+ :cost_calculation)
223
+ SENSITIVE = []
224
+ include Aws::Structure
225
+ end
226
+
227
+ # The EC2 auto scaling group configuration used for recommendations.
228
+ #
229
+ # @!attribute [rw] instance
230
+ # Details about the instance.
231
+ # @return [Types::InstanceConfiguration]
232
+ #
233
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2AutoScalingGroupConfiguration AWS API Documentation
234
+ #
235
+ class Ec2AutoScalingGroupConfiguration < Struct.new(
236
+ :instance)
237
+ SENSITIVE = []
238
+ include Aws::Structure
239
+ end
240
+
241
+ # Describes the EC2 instance configuration of the current and
242
+ # recommended resource configuration for a recommendation.
243
+ #
244
+ # @!attribute [rw] configuration
245
+ # The EC2 instance configuration used for recommendations.
246
+ # @return [Types::Ec2InstanceConfiguration]
247
+ #
248
+ # @!attribute [rw] cost_calculation
249
+ # Cost impact of the recommendation.
250
+ # @return [Types::ResourceCostCalculation]
251
+ #
252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2Instance AWS API Documentation
253
+ #
254
+ class Ec2Instance < Struct.new(
255
+ :configuration,
256
+ :cost_calculation)
257
+ SENSITIVE = []
258
+ include Aws::Structure
259
+ end
260
+
261
+ # The EC2 instance configuration used for recommendations.
262
+ #
263
+ # @!attribute [rw] instance
264
+ # Details about the instance.
265
+ # @return [Types::InstanceConfiguration]
266
+ #
267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2InstanceConfiguration AWS API Documentation
268
+ #
269
+ class Ec2InstanceConfiguration < Struct.new(
270
+ :instance)
271
+ SENSITIVE = []
272
+ include Aws::Structure
273
+ end
274
+
275
+ # The EC2 instance Savings Plans recommendation details.
276
+ #
277
+ # @!attribute [rw] configuration
278
+ # The EC2 instance Savings Plans configuration used for
279
+ # recommendations.
280
+ # @return [Types::Ec2InstanceSavingsPlansConfiguration]
281
+ #
282
+ # @!attribute [rw] cost_calculation
283
+ # Cost impact of the Savings Plans purchase recommendation.
284
+ # @return [Types::SavingsPlansCostCalculation]
285
+ #
286
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2InstanceSavingsPlans AWS API Documentation
287
+ #
288
+ class Ec2InstanceSavingsPlans < Struct.new(
289
+ :configuration,
290
+ :cost_calculation)
291
+ SENSITIVE = []
292
+ include Aws::Structure
293
+ end
294
+
295
+ # The EC2 instance Savings Plans configuration used for recommendations.
296
+ #
297
+ # @!attribute [rw] account_scope
298
+ # The account scope that you want your recommendations for.
299
+ # @return [String]
300
+ #
301
+ # @!attribute [rw] hourly_commitment
302
+ # The hourly commitment for the Savings Plans type.
303
+ # @return [String]
304
+ #
305
+ # @!attribute [rw] instance_family
306
+ # The instance family of the recommended Savings Plan.
307
+ # @return [String]
308
+ #
309
+ # @!attribute [rw] payment_option
310
+ # The payment option for the commitment.
311
+ # @return [String]
312
+ #
313
+ # @!attribute [rw] savings_plans_region
314
+ # The Amazon Web Services Region of the commitment.
315
+ # @return [String]
316
+ #
317
+ # @!attribute [rw] term
318
+ # The Savings Plans recommendation term in years.
319
+ # @return [String]
320
+ #
321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2InstanceSavingsPlansConfiguration AWS API Documentation
322
+ #
323
+ class Ec2InstanceSavingsPlansConfiguration < Struct.new(
324
+ :account_scope,
325
+ :hourly_commitment,
326
+ :instance_family,
327
+ :payment_option,
328
+ :savings_plans_region,
329
+ :term)
330
+ SENSITIVE = []
331
+ include Aws::Structure
332
+ end
333
+
334
+ # The EC2 reserved instances recommendation details.
335
+ #
336
+ # @!attribute [rw] configuration
337
+ # The EC2 reserved instances configuration used for recommendations.
338
+ # @return [Types::Ec2ReservedInstancesConfiguration]
339
+ #
340
+ # @!attribute [rw] cost_calculation
341
+ # Cost impact of the purchase recommendation.
342
+ # @return [Types::ReservedInstancesCostCalculation]
343
+ #
344
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2ReservedInstances AWS API Documentation
345
+ #
346
+ class Ec2ReservedInstances < Struct.new(
347
+ :configuration,
348
+ :cost_calculation)
349
+ SENSITIVE = []
350
+ include Aws::Structure
351
+ end
352
+
353
+ # The EC2 reserved instances configuration used for recommendations.
354
+ #
355
+ # @!attribute [rw] account_scope
356
+ # The account scope that you want your recommendations for.
357
+ # @return [String]
358
+ #
359
+ # @!attribute [rw] current_generation
360
+ # Determines whether the recommendation is for a current generation
361
+ # instance.
362
+ # @return [String]
363
+ #
364
+ # @!attribute [rw] instance_family
365
+ # The instance family of the recommended reservation.
366
+ # @return [String]
367
+ #
368
+ # @!attribute [rw] instance_type
369
+ # The type of instance that Amazon Web Services recommends.
370
+ # @return [String]
371
+ #
372
+ # @!attribute [rw] monthly_recurring_cost
373
+ # How much purchasing reserved instances costs you on a monthly basis.
374
+ # @return [String]
375
+ #
376
+ # @!attribute [rw] normalized_units_to_purchase
377
+ # The number of normalized units that Amazon Web Services recommends
378
+ # that you purchase.
379
+ # @return [String]
380
+ #
381
+ # @!attribute [rw] number_of_instances_to_purchase
382
+ # The number of instances that Amazon Web Services recommends that you
383
+ # purchase.
384
+ # @return [String]
385
+ #
386
+ # @!attribute [rw] offering_class
387
+ # Indicates whether the recommendation is for standard or convertible
388
+ # reservations.
389
+ # @return [String]
390
+ #
391
+ # @!attribute [rw] payment_option
392
+ # The payment option for the commitment.
393
+ # @return [String]
394
+ #
395
+ # @!attribute [rw] platform
396
+ # The platform of the recommended reservation. The platform is the
397
+ # specific combination of operating system, license model, and
398
+ # software on an instance.
399
+ # @return [String]
400
+ #
401
+ # @!attribute [rw] reserved_instances_region
402
+ # The Amazon Web Services Region of the commitment.
403
+ # @return [String]
404
+ #
405
+ # @!attribute [rw] service
406
+ # The service that you want your recommendations for.
407
+ # @return [String]
408
+ #
409
+ # @!attribute [rw] size_flex_eligible
410
+ # Determines whether the recommendation is size flexible.
411
+ # @return [Boolean]
412
+ #
413
+ # @!attribute [rw] tenancy
414
+ # Determines whether the recommended reservation is dedicated or
415
+ # shared.
416
+ # @return [String]
417
+ #
418
+ # @!attribute [rw] term
419
+ # The reserved instances recommendation term in years.
420
+ # @return [String]
421
+ #
422
+ # @!attribute [rw] upfront_cost
423
+ # How much purchasing this instance costs you upfront.
424
+ # @return [String]
425
+ #
426
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2ReservedInstancesConfiguration AWS API Documentation
427
+ #
428
+ class Ec2ReservedInstancesConfiguration < Struct.new(
429
+ :account_scope,
430
+ :current_generation,
431
+ :instance_family,
432
+ :instance_type,
433
+ :monthly_recurring_cost,
434
+ :normalized_units_to_purchase,
435
+ :number_of_instances_to_purchase,
436
+ :offering_class,
437
+ :payment_option,
438
+ :platform,
439
+ :reserved_instances_region,
440
+ :service,
441
+ :size_flex_eligible,
442
+ :tenancy,
443
+ :term,
444
+ :upfront_cost)
445
+ SENSITIVE = []
446
+ include Aws::Structure
447
+ end
448
+
449
+ # The ECS service recommendation details.
450
+ #
451
+ # @!attribute [rw] configuration
452
+ # The ECS service configuration used for recommendations.
453
+ # @return [Types::EcsServiceConfiguration]
454
+ #
455
+ # @!attribute [rw] cost_calculation
456
+ # Cost impact of the recommendation.
457
+ # @return [Types::ResourceCostCalculation]
458
+ #
459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/EcsService AWS API Documentation
460
+ #
461
+ class EcsService < Struct.new(
462
+ :configuration,
463
+ :cost_calculation)
464
+ SENSITIVE = []
465
+ include Aws::Structure
466
+ end
467
+
468
+ # The ECS service configuration used for recommendations.
469
+ #
470
+ # @!attribute [rw] compute
471
+ # Details about the compute configuration.
472
+ # @return [Types::ComputeConfiguration]
473
+ #
474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/EcsServiceConfiguration AWS API Documentation
475
+ #
476
+ class EcsServiceConfiguration < Struct.new(
477
+ :compute)
478
+ SENSITIVE = []
479
+ include Aws::Structure
480
+ end
481
+
482
+ # The ElastiCache reserved instances recommendation details.
483
+ #
484
+ # @!attribute [rw] configuration
485
+ # The ElastiCache reserved instances configuration used for
486
+ # recommendations.
487
+ # @return [Types::ElastiCacheReservedInstancesConfiguration]
488
+ #
489
+ # @!attribute [rw] cost_calculation
490
+ # Cost impact of the purchase recommendation.
491
+ # @return [Types::ReservedInstancesCostCalculation]
492
+ #
493
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ElastiCacheReservedInstances AWS API Documentation
494
+ #
495
+ class ElastiCacheReservedInstances < Struct.new(
496
+ :configuration,
497
+ :cost_calculation)
498
+ SENSITIVE = []
499
+ include Aws::Structure
500
+ end
501
+
502
+ # The ElastiCache reserved instances configuration used for
503
+ # recommendations.
504
+ #
505
+ # @!attribute [rw] account_scope
506
+ # The account scope that you want your recommendations for.
507
+ # @return [String]
508
+ #
509
+ # @!attribute [rw] current_generation
510
+ # Determines whether the recommendation is for a current generation
511
+ # instance.
512
+ # @return [String]
513
+ #
514
+ # @!attribute [rw] instance_family
515
+ # The instance family of the recommended reservation.
516
+ # @return [String]
517
+ #
518
+ # @!attribute [rw] instance_type
519
+ # The type of instance that Amazon Web Services recommends.
520
+ # @return [String]
521
+ #
522
+ # @!attribute [rw] monthly_recurring_cost
523
+ # How much purchasing reserved instances costs you on a monthly basis.
524
+ # @return [String]
525
+ #
526
+ # @!attribute [rw] normalized_units_to_purchase
527
+ # The number of normalized units that Amazon Web Services recommends
528
+ # that you purchase.
529
+ # @return [String]
530
+ #
531
+ # @!attribute [rw] number_of_instances_to_purchase
532
+ # The number of instances that Amazon Web Services recommends that you
533
+ # purchase.
534
+ # @return [String]
535
+ #
536
+ # @!attribute [rw] payment_option
537
+ # The payment option for the commitment.
538
+ # @return [String]
539
+ #
540
+ # @!attribute [rw] reserved_instances_region
541
+ # The Amazon Web Services Region of the commitment.
542
+ # @return [String]
543
+ #
544
+ # @!attribute [rw] service
545
+ # The service that you want your recommendations for.
546
+ # @return [String]
547
+ #
548
+ # @!attribute [rw] size_flex_eligible
549
+ # Determines whether the recommendation is size flexible.
550
+ # @return [Boolean]
551
+ #
552
+ # @!attribute [rw] term
553
+ # The reserved instances recommendation term in years.
554
+ # @return [String]
555
+ #
556
+ # @!attribute [rw] upfront_cost
557
+ # How much purchasing this instance costs you upfront.
558
+ # @return [String]
559
+ #
560
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ElastiCacheReservedInstancesConfiguration AWS API Documentation
561
+ #
562
+ class ElastiCacheReservedInstancesConfiguration < Struct.new(
563
+ :account_scope,
564
+ :current_generation,
565
+ :instance_family,
566
+ :instance_type,
567
+ :monthly_recurring_cost,
568
+ :normalized_units_to_purchase,
569
+ :number_of_instances_to_purchase,
570
+ :payment_option,
571
+ :reserved_instances_region,
572
+ :service,
573
+ :size_flex_eligible,
574
+ :term,
575
+ :upfront_cost)
576
+ SENSITIVE = []
577
+ include Aws::Structure
578
+ end
579
+
580
+ # Estimated discount details of the current and recommended resource
581
+ # configuration for a recommendation.
582
+ #
583
+ # @!attribute [rw] other_discount
584
+ # Estimated other discounts include all discounts that are not
585
+ # itemized. Itemized discounts include `reservedInstanceDiscount` and
586
+ # `savingsPlansDiscount`.
587
+ # @return [Float]
588
+ #
589
+ # @!attribute [rw] reserved_instances_discount
590
+ # Estimated reserved instance discounts.
591
+ # @return [Float]
592
+ #
593
+ # @!attribute [rw] savings_plans_discount
594
+ # Estimated Savings Plans discounts.
595
+ # @return [Float]
596
+ #
597
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/EstimatedDiscounts AWS API Documentation
598
+ #
599
+ class EstimatedDiscounts < Struct.new(
600
+ :other_discount,
601
+ :reserved_instances_discount,
602
+ :savings_plans_discount)
603
+ SENSITIVE = []
604
+ include Aws::Structure
605
+ end
606
+
607
+ # Describes a filter that returns a more specific list of
608
+ # recommendations. Filters recommendations by different dimensions.
609
+ #
610
+ # @!attribute [rw] account_ids
611
+ # The account that the recommendation is for.
612
+ # @return [Array<String>]
613
+ #
614
+ # @!attribute [rw] action_types
615
+ # The type of action you can take by adopting the recommendation.
616
+ # @return [Array<String>]
617
+ #
618
+ # @!attribute [rw] implementation_efforts
619
+ # The effort required to implement the recommendation.
620
+ # @return [Array<String>]
621
+ #
622
+ # @!attribute [rw] recommendation_ids
623
+ # The IDs for the recommendations.
624
+ # @return [Array<String>]
625
+ #
626
+ # @!attribute [rw] regions
627
+ # The Amazon Web Services Region of the resource.
628
+ # @return [Array<String>]
629
+ #
630
+ # @!attribute [rw] resource_arns
631
+ # The Amazon Resource Name (ARN) of the recommendation.
632
+ # @return [Array<String>]
633
+ #
634
+ # @!attribute [rw] resource_ids
635
+ # The resource ID of the recommendation.
636
+ # @return [Array<String>]
637
+ #
638
+ # @!attribute [rw] resource_types
639
+ # The resource type of the recommendation.
640
+ # @return [Array<String>]
641
+ #
642
+ # @!attribute [rw] restart_needed
643
+ # Whether or not implementing the recommendation requires a restart.
644
+ # @return [Boolean]
645
+ #
646
+ # @!attribute [rw] rollback_possible
647
+ # Whether or not implementing the recommendation can be rolled back.
648
+ # @return [Boolean]
649
+ #
650
+ # @!attribute [rw] tags
651
+ # A list of tags assigned to the recommendation.
652
+ # @return [Array<Types::Tag>]
653
+ #
654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Filter AWS API Documentation
655
+ #
656
+ class Filter < Struct.new(
657
+ :account_ids,
658
+ :action_types,
659
+ :implementation_efforts,
660
+ :recommendation_ids,
661
+ :regions,
662
+ :resource_arns,
663
+ :resource_ids,
664
+ :resource_types,
665
+ :restart_needed,
666
+ :rollback_possible,
667
+ :tags)
668
+ SENSITIVE = []
669
+ include Aws::Structure
670
+ end
671
+
672
+ # @api private
673
+ #
674
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetPreferencesRequest AWS API Documentation
675
+ #
676
+ class GetPreferencesRequest < Aws::EmptyStructure; end
677
+
678
+ # @!attribute [rw] member_account_discount_visibility
679
+ # Retrieves the status of the "member account discount visibility"
680
+ # preference.
681
+ # @return [String]
682
+ #
683
+ # @!attribute [rw] savings_estimation_mode
684
+ # Retrieves the status of the "savings estimation mode" preference.
685
+ # @return [String]
686
+ #
687
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetPreferencesResponse AWS API Documentation
688
+ #
689
+ class GetPreferencesResponse < Struct.new(
690
+ :member_account_discount_visibility,
691
+ :savings_estimation_mode)
692
+ SENSITIVE = []
693
+ include Aws::Structure
694
+ end
695
+
696
+ # @!attribute [rw] recommendation_id
697
+ # The ID for the recommendation.
698
+ # @return [String]
699
+ #
700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetRecommendationRequest AWS API Documentation
701
+ #
702
+ class GetRecommendationRequest < Struct.new(
703
+ :recommendation_id)
704
+ SENSITIVE = []
705
+ include Aws::Structure
706
+ end
707
+
708
+ # @!attribute [rw] account_id
709
+ # The account that the recommendation is for.
710
+ # @return [String]
711
+ #
712
+ # @!attribute [rw] action_type
713
+ # The type of action you can take by adopting the recommendation.
714
+ # @return [String]
715
+ #
716
+ # @!attribute [rw] cost_calculation_lookback_period_in_days
717
+ # The lookback period used to calculate cost impact for a
718
+ # recommendation.
719
+ # @return [Integer]
720
+ #
721
+ # @!attribute [rw] currency_code
722
+ # The currency code used for the recommendation.
723
+ # @return [String]
724
+ #
725
+ # @!attribute [rw] current_resource_details
726
+ # The details for the resource.
727
+ # @return [Types::ResourceDetails]
728
+ #
729
+ # @!attribute [rw] current_resource_type
730
+ # The type of resource.
731
+ # @return [String]
732
+ #
733
+ # @!attribute [rw] estimated_monthly_cost
734
+ # The estimated monthly cost of the recommendation.
735
+ # @return [Float]
736
+ #
737
+ # @!attribute [rw] estimated_monthly_savings
738
+ # The estimated monthly savings amount for the recommendation.
739
+ # @return [Float]
740
+ #
741
+ # @!attribute [rw] estimated_savings_over_cost_calculation_lookback_period
742
+ # The estimated savings amount over the lookback period used to
743
+ # calculate cost impact for a recommendation.
744
+ # @return [Float]
745
+ #
746
+ # @!attribute [rw] estimated_savings_percentage
747
+ # The estimated savings percentage relative to the total cost over the
748
+ # cost calculation lookback period.
749
+ # @return [Float]
750
+ #
751
+ # @!attribute [rw] implementation_effort
752
+ # The effort required to implement the recommendation.
753
+ # @return [String]
754
+ #
755
+ # @!attribute [rw] last_refresh_timestamp
756
+ # The time when the recommendation was last generated.
757
+ # @return [Time]
758
+ #
759
+ # @!attribute [rw] recommendation_id
760
+ # The ID for the recommendation.
761
+ # @return [String]
762
+ #
763
+ # @!attribute [rw] recommendation_lookback_period_in_days
764
+ # The lookback period that's used to generate the recommendation.
765
+ # @return [Integer]
766
+ #
767
+ # @!attribute [rw] recommended_resource_details
768
+ # The details about the recommended resource.
769
+ # @return [Types::ResourceDetails]
770
+ #
771
+ # @!attribute [rw] recommended_resource_type
772
+ # The resource type of the recommendation.
773
+ # @return [String]
774
+ #
775
+ # @!attribute [rw] region
776
+ # The Amazon Web Services Region of the resource.
777
+ # @return [String]
778
+ #
779
+ # @!attribute [rw] resource_arn
780
+ # The Amazon Resource Name (ARN) of the resource.
781
+ # @return [String]
782
+ #
783
+ # @!attribute [rw] resource_id
784
+ # The unique identifier for the resource. This is the same as the
785
+ # Amazon Resource Name (ARN), if available.
786
+ # @return [String]
787
+ #
788
+ # @!attribute [rw] restart_needed
789
+ # Whether or not implementing the recommendation requires a restart.
790
+ # @return [Boolean]
791
+ #
792
+ # @!attribute [rw] rollback_possible
793
+ # Whether or not implementing the recommendation can be rolled back.
794
+ # @return [Boolean]
795
+ #
796
+ # @!attribute [rw] source
797
+ # The source of the recommendation.
798
+ # @return [String]
799
+ #
800
+ # @!attribute [rw] tags
801
+ # A list of tags associated with the resource for which the
802
+ # recommendation exists.
803
+ # @return [Array<Types::Tag>]
804
+ #
805
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetRecommendationResponse AWS API Documentation
806
+ #
807
+ class GetRecommendationResponse < Struct.new(
808
+ :account_id,
809
+ :action_type,
810
+ :cost_calculation_lookback_period_in_days,
811
+ :currency_code,
812
+ :current_resource_details,
813
+ :current_resource_type,
814
+ :estimated_monthly_cost,
815
+ :estimated_monthly_savings,
816
+ :estimated_savings_over_cost_calculation_lookback_period,
817
+ :estimated_savings_percentage,
818
+ :implementation_effort,
819
+ :last_refresh_timestamp,
820
+ :recommendation_id,
821
+ :recommendation_lookback_period_in_days,
822
+ :recommended_resource_details,
823
+ :recommended_resource_type,
824
+ :region,
825
+ :resource_arn,
826
+ :resource_id,
827
+ :restart_needed,
828
+ :rollback_possible,
829
+ :source,
830
+ :tags)
831
+ SENSITIVE = []
832
+ include Aws::Structure
833
+ end
834
+
835
+ # The Instance configuration used for recommendations.
836
+ #
837
+ # @!attribute [rw] type
838
+ # Details about the type.
839
+ # @return [String]
840
+ #
841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/InstanceConfiguration AWS API Documentation
842
+ #
843
+ class InstanceConfiguration < Struct.new(
844
+ :type)
845
+ SENSITIVE = []
846
+ include Aws::Structure
847
+ end
848
+
849
+ # An error on the server occurred during the processing of your request.
850
+ # Try again later.
851
+ #
852
+ # @!attribute [rw] message
853
+ # @return [String]
854
+ #
855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/InternalServerException AWS API Documentation
856
+ #
857
+ class InternalServerException < Struct.new(
858
+ :message)
859
+ SENSITIVE = []
860
+ include Aws::Structure
861
+ end
862
+
863
+ # The Lambda function recommendation details.
864
+ #
865
+ # @!attribute [rw] configuration
866
+ # The Lambda function configuration used for recommendations.
867
+ # @return [Types::LambdaFunctionConfiguration]
868
+ #
869
+ # @!attribute [rw] cost_calculation
870
+ # Cost impact of the recommendation.
871
+ # @return [Types::ResourceCostCalculation]
872
+ #
873
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/LambdaFunction AWS API Documentation
874
+ #
875
+ class LambdaFunction < Struct.new(
876
+ :configuration,
877
+ :cost_calculation)
878
+ SENSITIVE = []
879
+ include Aws::Structure
880
+ end
881
+
882
+ # The Lambda function configuration used for recommendations.
883
+ #
884
+ # @!attribute [rw] compute
885
+ # Details about the compute configuration.
886
+ # @return [Types::ComputeConfiguration]
887
+ #
888
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/LambdaFunctionConfiguration AWS API Documentation
889
+ #
890
+ class LambdaFunctionConfiguration < Struct.new(
891
+ :compute)
892
+ SENSITIVE = []
893
+ include Aws::Structure
894
+ end
895
+
896
+ # @!attribute [rw] account_id
897
+ # The enrollment status of a specific account ID in the organization.
898
+ # @return [String]
899
+ #
900
+ # @!attribute [rw] include_organization_info
901
+ # Indicates whether to return the enrollment status for the
902
+ # organization.
903
+ # @return [Boolean]
904
+ #
905
+ # @!attribute [rw] max_results
906
+ # The maximum number of objects that are returned for the request.
907
+ # @return [Integer]
908
+ #
909
+ # @!attribute [rw] next_token
910
+ # The token to retrieve the next set of results.
911
+ # @return [String]
912
+ #
913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListEnrollmentStatusesRequest AWS API Documentation
914
+ #
915
+ class ListEnrollmentStatusesRequest < Struct.new(
916
+ :account_id,
917
+ :include_organization_info,
918
+ :max_results,
919
+ :next_token)
920
+ SENSITIVE = []
921
+ include Aws::Structure
922
+ end
923
+
924
+ # @!attribute [rw] items
925
+ # The account enrollment statuses.
926
+ # @return [Array<Types::AccountEnrollmentStatus>]
927
+ #
928
+ # @!attribute [rw] next_token
929
+ # The token to retrieve the next set of results.
930
+ # @return [String]
931
+ #
932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListEnrollmentStatusesResponse AWS API Documentation
933
+ #
934
+ class ListEnrollmentStatusesResponse < Struct.new(
935
+ :items,
936
+ :next_token)
937
+ SENSITIVE = []
938
+ include Aws::Structure
939
+ end
940
+
941
+ # @!attribute [rw] filter
942
+ # Describes a filter that returns a more specific list of
943
+ # recommendations. Filters recommendations by different dimensions.
944
+ # @return [Types::Filter]
945
+ #
946
+ # @!attribute [rw] group_by
947
+ # The grouping of recommendations by a dimension.
948
+ # @return [String]
949
+ #
950
+ # @!attribute [rw] max_results
951
+ # The maximum number of recommendations that are returned for the
952
+ # request.
953
+ # @return [Integer]
954
+ #
955
+ # @!attribute [rw] next_token
956
+ # The token to retrieve the next set of results.
957
+ # @return [String]
958
+ #
959
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendationSummariesRequest AWS API Documentation
960
+ #
961
+ class ListRecommendationSummariesRequest < Struct.new(
962
+ :filter,
963
+ :group_by,
964
+ :max_results,
965
+ :next_token)
966
+ SENSITIVE = []
967
+ include Aws::Structure
968
+ end
969
+
970
+ # @!attribute [rw] currency_code
971
+ # The currency code used for the recommendation.
972
+ # @return [String]
973
+ #
974
+ # @!attribute [rw] estimated_total_deduped_savings
975
+ # The total overall savings for the aggregated view.
976
+ # @return [Float]
977
+ #
978
+ # @!attribute [rw] group_by
979
+ # The dimension used to group the recommendations by.
980
+ # @return [String]
981
+ #
982
+ # @!attribute [rw] items
983
+ # List of all savings recommendations.
984
+ # @return [Array<Types::RecommendationSummary>]
985
+ #
986
+ # @!attribute [rw] next_token
987
+ # The token to retrieve the next set of results.
988
+ # @return [String]
989
+ #
990
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendationSummariesResponse AWS API Documentation
991
+ #
992
+ class ListRecommendationSummariesResponse < Struct.new(
993
+ :currency_code,
994
+ :estimated_total_deduped_savings,
995
+ :group_by,
996
+ :items,
997
+ :next_token)
998
+ SENSITIVE = []
999
+ include Aws::Structure
1000
+ end
1001
+
1002
+ # @!attribute [rw] filter
1003
+ # The constraints that you want all returned recommendations to match.
1004
+ # @return [Types::Filter]
1005
+ #
1006
+ # @!attribute [rw] include_all_recommendations
1007
+ # List of all recommendations for a resource, or a single
1008
+ # recommendation if de-duped by `resourceId`.
1009
+ # @return [Boolean]
1010
+ #
1011
+ # @!attribute [rw] max_results
1012
+ # The maximum number of recommendations that are returned for the
1013
+ # request.
1014
+ # @return [Integer]
1015
+ #
1016
+ # @!attribute [rw] next_token
1017
+ # The token to retrieve the next set of results.
1018
+ # @return [String]
1019
+ #
1020
+ # @!attribute [rw] order_by
1021
+ # The ordering of recommendations by a dimension.
1022
+ # @return [Types::OrderBy]
1023
+ #
1024
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendationsRequest AWS API Documentation
1025
+ #
1026
+ class ListRecommendationsRequest < Struct.new(
1027
+ :filter,
1028
+ :include_all_recommendations,
1029
+ :max_results,
1030
+ :next_token,
1031
+ :order_by)
1032
+ SENSITIVE = []
1033
+ include Aws::Structure
1034
+ end
1035
+
1036
+ # @!attribute [rw] items
1037
+ # List of all savings recommendations.
1038
+ # @return [Array<Types::Recommendation>]
1039
+ #
1040
+ # @!attribute [rw] next_token
1041
+ # The token to retrieve the next set of results.
1042
+ # @return [String]
1043
+ #
1044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendationsResponse AWS API Documentation
1045
+ #
1046
+ class ListRecommendationsResponse < Struct.new(
1047
+ :items,
1048
+ :next_token)
1049
+ SENSITIVE = []
1050
+ include Aws::Structure
1051
+ end
1052
+
1053
+ # The OpenSearch reserved instances recommendation details.
1054
+ #
1055
+ # @!attribute [rw] configuration
1056
+ # The OpenSearch reserved instances configuration used for
1057
+ # recommendations.
1058
+ # @return [Types::OpenSearchReservedInstancesConfiguration]
1059
+ #
1060
+ # @!attribute [rw] cost_calculation
1061
+ # Cost impact of the purchase recommendation.
1062
+ # @return [Types::ReservedInstancesCostCalculation]
1063
+ #
1064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/OpenSearchReservedInstances AWS API Documentation
1065
+ #
1066
+ class OpenSearchReservedInstances < Struct.new(
1067
+ :configuration,
1068
+ :cost_calculation)
1069
+ SENSITIVE = []
1070
+ include Aws::Structure
1071
+ end
1072
+
1073
+ # The OpenSearch reserved instances configuration used for
1074
+ # recommendations.
1075
+ #
1076
+ # @!attribute [rw] account_scope
1077
+ # The account scope that you want your recommendations for.
1078
+ # @return [String]
1079
+ #
1080
+ # @!attribute [rw] current_generation
1081
+ # Determines whether the recommendation is for a current generation
1082
+ # instance.
1083
+ # @return [String]
1084
+ #
1085
+ # @!attribute [rw] instance_type
1086
+ # The type of instance that Amazon Web Services recommends.
1087
+ # @return [String]
1088
+ #
1089
+ # @!attribute [rw] monthly_recurring_cost
1090
+ # How much purchasing reserved instances costs you on a monthly basis.
1091
+ # @return [String]
1092
+ #
1093
+ # @!attribute [rw] normalized_units_to_purchase
1094
+ # The number of normalized units that Amazon Web Services recommends
1095
+ # that you purchase.
1096
+ # @return [String]
1097
+ #
1098
+ # @!attribute [rw] number_of_instances_to_purchase
1099
+ # The number of instances that Amazon Web Services recommends that you
1100
+ # purchase.
1101
+ # @return [String]
1102
+ #
1103
+ # @!attribute [rw] payment_option
1104
+ # The payment option for the commitment.
1105
+ # @return [String]
1106
+ #
1107
+ # @!attribute [rw] reserved_instances_region
1108
+ # The Amazon Web Services Region of the commitment.
1109
+ # @return [String]
1110
+ #
1111
+ # @!attribute [rw] service
1112
+ # The service that you want your recommendations for.
1113
+ # @return [String]
1114
+ #
1115
+ # @!attribute [rw] size_flex_eligible
1116
+ # Determines whether the recommendation is size flexible.
1117
+ # @return [Boolean]
1118
+ #
1119
+ # @!attribute [rw] term
1120
+ # The reserved instances recommendation term in years.
1121
+ # @return [String]
1122
+ #
1123
+ # @!attribute [rw] upfront_cost
1124
+ # How much purchasing this instance costs you upfront.
1125
+ # @return [String]
1126
+ #
1127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/OpenSearchReservedInstancesConfiguration AWS API Documentation
1128
+ #
1129
+ class OpenSearchReservedInstancesConfiguration < Struct.new(
1130
+ :account_scope,
1131
+ :current_generation,
1132
+ :instance_type,
1133
+ :monthly_recurring_cost,
1134
+ :normalized_units_to_purchase,
1135
+ :number_of_instances_to_purchase,
1136
+ :payment_option,
1137
+ :reserved_instances_region,
1138
+ :service,
1139
+ :size_flex_eligible,
1140
+ :term,
1141
+ :upfront_cost)
1142
+ SENSITIVE = []
1143
+ include Aws::Structure
1144
+ end
1145
+
1146
+ # Defines how rows will be sorted in the response.
1147
+ #
1148
+ # @!attribute [rw] dimension
1149
+ # Sorts by dimension values.
1150
+ # @return [String]
1151
+ #
1152
+ # @!attribute [rw] order
1153
+ # The order that's used to sort the data.
1154
+ # @return [String]
1155
+ #
1156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/OrderBy AWS API Documentation
1157
+ #
1158
+ class OrderBy < Struct.new(
1159
+ :dimension,
1160
+ :order)
1161
+ SENSITIVE = []
1162
+ include Aws::Structure
1163
+ end
1164
+
1165
+ # The RDS reserved instances recommendation details.
1166
+ #
1167
+ # @!attribute [rw] configuration
1168
+ # The RDS reserved instances configuration used for recommendations.
1169
+ # @return [Types::RdsReservedInstancesConfiguration]
1170
+ #
1171
+ # @!attribute [rw] cost_calculation
1172
+ # Cost impact of the purchase recommendation.
1173
+ # @return [Types::ReservedInstancesCostCalculation]
1174
+ #
1175
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/RdsReservedInstances AWS API Documentation
1176
+ #
1177
+ class RdsReservedInstances < Struct.new(
1178
+ :configuration,
1179
+ :cost_calculation)
1180
+ SENSITIVE = []
1181
+ include Aws::Structure
1182
+ end
1183
+
1184
+ # The RDS reserved instances configuration used for recommendations.
1185
+ #
1186
+ # @!attribute [rw] account_scope
1187
+ # The account scope that you want your recommendations for.
1188
+ # @return [String]
1189
+ #
1190
+ # @!attribute [rw] current_generation
1191
+ # Determines whether the recommendation is for a current generation
1192
+ # instance.
1193
+ # @return [String]
1194
+ #
1195
+ # @!attribute [rw] database_edition
1196
+ # The database edition that the recommended reservation supports.
1197
+ # @return [String]
1198
+ #
1199
+ # @!attribute [rw] database_engine
1200
+ # The database engine that the recommended reservation supports.
1201
+ # @return [String]
1202
+ #
1203
+ # @!attribute [rw] deployment_option
1204
+ # Determines whether the recommendation is for a reservation in a
1205
+ # single Availability Zone or a reservation with a backup in a second
1206
+ # Availability Zone.
1207
+ # @return [String]
1208
+ #
1209
+ # @!attribute [rw] instance_family
1210
+ # The instance family of the recommended reservation.
1211
+ # @return [String]
1212
+ #
1213
+ # @!attribute [rw] instance_type
1214
+ # The type of instance that Amazon Web Services recommends.
1215
+ # @return [String]
1216
+ #
1217
+ # @!attribute [rw] license_model
1218
+ # The license model that the recommended reservation supports.
1219
+ # @return [String]
1220
+ #
1221
+ # @!attribute [rw] monthly_recurring_cost
1222
+ # How much purchasing this instance costs you on a monthly basis.
1223
+ # @return [String]
1224
+ #
1225
+ # @!attribute [rw] normalized_units_to_purchase
1226
+ # The number of normalized units that Amazon Web Services recommends
1227
+ # that you purchase.
1228
+ # @return [String]
1229
+ #
1230
+ # @!attribute [rw] number_of_instances_to_purchase
1231
+ # The number of instances that Amazon Web Services recommends that you
1232
+ # purchase.
1233
+ # @return [String]
1234
+ #
1235
+ # @!attribute [rw] payment_option
1236
+ # The payment option for the commitment.
1237
+ # @return [String]
1238
+ #
1239
+ # @!attribute [rw] reserved_instances_region
1240
+ # The Amazon Web Services Region of the commitment.
1241
+ # @return [String]
1242
+ #
1243
+ # @!attribute [rw] service
1244
+ # The service that you want your recommendations for.
1245
+ # @return [String]
1246
+ #
1247
+ # @!attribute [rw] size_flex_eligible
1248
+ # Determines whether the recommendation is size flexible.
1249
+ # @return [Boolean]
1250
+ #
1251
+ # @!attribute [rw] term
1252
+ # The reserved instances recommendation term in years.
1253
+ # @return [String]
1254
+ #
1255
+ # @!attribute [rw] upfront_cost
1256
+ # How much purchasing this instance costs you upfront.
1257
+ # @return [String]
1258
+ #
1259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/RdsReservedInstancesConfiguration AWS API Documentation
1260
+ #
1261
+ class RdsReservedInstancesConfiguration < Struct.new(
1262
+ :account_scope,
1263
+ :current_generation,
1264
+ :database_edition,
1265
+ :database_engine,
1266
+ :deployment_option,
1267
+ :instance_family,
1268
+ :instance_type,
1269
+ :license_model,
1270
+ :monthly_recurring_cost,
1271
+ :normalized_units_to_purchase,
1272
+ :number_of_instances_to_purchase,
1273
+ :payment_option,
1274
+ :reserved_instances_region,
1275
+ :service,
1276
+ :size_flex_eligible,
1277
+ :term,
1278
+ :upfront_cost)
1279
+ SENSITIVE = []
1280
+ include Aws::Structure
1281
+ end
1282
+
1283
+ # Describes a recommendation.
1284
+ #
1285
+ # @!attribute [rw] account_id
1286
+ # The account that the recommendation is for.
1287
+ # @return [String]
1288
+ #
1289
+ # @!attribute [rw] action_type
1290
+ # The type of tasks that can be carried out by this action.
1291
+ # @return [String]
1292
+ #
1293
+ # @!attribute [rw] currency_code
1294
+ # The currency code used for the recommendation.
1295
+ # @return [String]
1296
+ #
1297
+ # @!attribute [rw] current_resource_summary
1298
+ # Describes the current resource.
1299
+ # @return [String]
1300
+ #
1301
+ # @!attribute [rw] current_resource_type
1302
+ # The current resource type.
1303
+ # @return [String]
1304
+ #
1305
+ # @!attribute [rw] estimated_monthly_cost
1306
+ # The estimated monthly cost for the recommendation.
1307
+ # @return [Float]
1308
+ #
1309
+ # @!attribute [rw] estimated_monthly_savings
1310
+ # The estimated monthly savings amount for the recommendation.
1311
+ # @return [Float]
1312
+ #
1313
+ # @!attribute [rw] estimated_savings_percentage
1314
+ # The estimated savings percentage relative to the total cost over the
1315
+ # cost calculation lookback period.
1316
+ # @return [Float]
1317
+ #
1318
+ # @!attribute [rw] implementation_effort
1319
+ # The effort required to implement the recommendation.
1320
+ # @return [String]
1321
+ #
1322
+ # @!attribute [rw] last_refresh_timestamp
1323
+ # The time when the recommendation was last generated.
1324
+ # @return [Time]
1325
+ #
1326
+ # @!attribute [rw] recommendation_id
1327
+ # The ID for the recommendation.
1328
+ # @return [String]
1329
+ #
1330
+ # @!attribute [rw] recommendation_lookback_period_in_days
1331
+ # The lookback period that's used to generate the recommendation.
1332
+ # @return [Integer]
1333
+ #
1334
+ # @!attribute [rw] recommended_resource_summary
1335
+ # Describes the recommended resource.
1336
+ # @return [String]
1337
+ #
1338
+ # @!attribute [rw] recommended_resource_type
1339
+ # The recommended resource type.
1340
+ # @return [String]
1341
+ #
1342
+ # @!attribute [rw] region
1343
+ # The Amazon Web Services Region of the resource.
1344
+ # @return [String]
1345
+ #
1346
+ # @!attribute [rw] resource_arn
1347
+ # The Amazon Resource Name (ARN) for the recommendation.
1348
+ # @return [String]
1349
+ #
1350
+ # @!attribute [rw] resource_id
1351
+ # The resource ID for the recommendation.
1352
+ # @return [String]
1353
+ #
1354
+ # @!attribute [rw] restart_needed
1355
+ # Whether or not implementing the recommendation requires a restart.
1356
+ # @return [Boolean]
1357
+ #
1358
+ # @!attribute [rw] rollback_possible
1359
+ # Whether or not implementing the recommendation can be rolled back.
1360
+ # @return [Boolean]
1361
+ #
1362
+ # @!attribute [rw] source
1363
+ # The source of the recommendation.
1364
+ # @return [String]
1365
+ #
1366
+ # @!attribute [rw] tags
1367
+ # A list of tags assigned to the recommendation.
1368
+ # @return [Array<Types::Tag>]
1369
+ #
1370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Recommendation AWS API Documentation
1371
+ #
1372
+ class Recommendation < Struct.new(
1373
+ :account_id,
1374
+ :action_type,
1375
+ :currency_code,
1376
+ :current_resource_summary,
1377
+ :current_resource_type,
1378
+ :estimated_monthly_cost,
1379
+ :estimated_monthly_savings,
1380
+ :estimated_savings_percentage,
1381
+ :implementation_effort,
1382
+ :last_refresh_timestamp,
1383
+ :recommendation_id,
1384
+ :recommendation_lookback_period_in_days,
1385
+ :recommended_resource_summary,
1386
+ :recommended_resource_type,
1387
+ :region,
1388
+ :resource_arn,
1389
+ :resource_id,
1390
+ :restart_needed,
1391
+ :rollback_possible,
1392
+ :source,
1393
+ :tags)
1394
+ SENSITIVE = []
1395
+ include Aws::Structure
1396
+ end
1397
+
1398
+ # The summary of rightsizing recommendations, including de-duped savings
1399
+ # from all types of recommendations.
1400
+ #
1401
+ # @!attribute [rw] estimated_monthly_savings
1402
+ # The estimated total savings resulting from modifications, on a
1403
+ # monthly basis.
1404
+ # @return [Float]
1405
+ #
1406
+ # @!attribute [rw] group
1407
+ # The grouping of recommendations.
1408
+ # @return [String]
1409
+ #
1410
+ # @!attribute [rw] recommendation_count
1411
+ # The total number of instance recommendations.
1412
+ # @return [Integer]
1413
+ #
1414
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/RecommendationSummary AWS API Documentation
1415
+ #
1416
+ class RecommendationSummary < Struct.new(
1417
+ :estimated_monthly_savings,
1418
+ :group,
1419
+ :recommendation_count)
1420
+ SENSITIVE = []
1421
+ include Aws::Structure
1422
+ end
1423
+
1424
+ # The Redshift reserved instances recommendation details.
1425
+ #
1426
+ # @!attribute [rw] configuration
1427
+ # The Redshift reserved instances configuration used for
1428
+ # recommendations.
1429
+ # @return [Types::RedshiftReservedInstancesConfiguration]
1430
+ #
1431
+ # @!attribute [rw] cost_calculation
1432
+ # Cost impact of the purchase recommendation.
1433
+ # @return [Types::ReservedInstancesCostCalculation]
1434
+ #
1435
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/RedshiftReservedInstances AWS API Documentation
1436
+ #
1437
+ class RedshiftReservedInstances < Struct.new(
1438
+ :configuration,
1439
+ :cost_calculation)
1440
+ SENSITIVE = []
1441
+ include Aws::Structure
1442
+ end
1443
+
1444
+ # The Redshift reserved instances configuration used for
1445
+ # recommendations.
1446
+ #
1447
+ # @!attribute [rw] account_scope
1448
+ # The account scope that you want your recommendations for.
1449
+ # @return [String]
1450
+ #
1451
+ # @!attribute [rw] current_generation
1452
+ # Determines whether the recommendation is for a current generation
1453
+ # instance.
1454
+ # @return [String]
1455
+ #
1456
+ # @!attribute [rw] instance_family
1457
+ # The instance family of the recommended reservation.
1458
+ # @return [String]
1459
+ #
1460
+ # @!attribute [rw] instance_type
1461
+ # The type of instance that Amazon Web Services recommends.
1462
+ # @return [String]
1463
+ #
1464
+ # @!attribute [rw] monthly_recurring_cost
1465
+ # How much purchasing reserved instances costs you on a monthly basis.
1466
+ # @return [String]
1467
+ #
1468
+ # @!attribute [rw] normalized_units_to_purchase
1469
+ # The number of normalized units that Amazon Web Services recommends
1470
+ # that you purchase.
1471
+ # @return [String]
1472
+ #
1473
+ # @!attribute [rw] number_of_instances_to_purchase
1474
+ # The number of instances that Amazon Web Services recommends that you
1475
+ # purchase.
1476
+ # @return [String]
1477
+ #
1478
+ # @!attribute [rw] payment_option
1479
+ # The payment option for the commitment.
1480
+ # @return [String]
1481
+ #
1482
+ # @!attribute [rw] reserved_instances_region
1483
+ # The Amazon Web Services Region of the commitment.
1484
+ # @return [String]
1485
+ #
1486
+ # @!attribute [rw] service
1487
+ # The service that you want your recommendations for.
1488
+ # @return [String]
1489
+ #
1490
+ # @!attribute [rw] size_flex_eligible
1491
+ # Determines whether the recommendation is size flexible.
1492
+ # @return [Boolean]
1493
+ #
1494
+ # @!attribute [rw] term
1495
+ # The reserved instances recommendation term in years.
1496
+ # @return [String]
1497
+ #
1498
+ # @!attribute [rw] upfront_cost
1499
+ # How much purchasing this instance costs you upfront.
1500
+ # @return [String]
1501
+ #
1502
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/RedshiftReservedInstancesConfiguration AWS API Documentation
1503
+ #
1504
+ class RedshiftReservedInstancesConfiguration < Struct.new(
1505
+ :account_scope,
1506
+ :current_generation,
1507
+ :instance_family,
1508
+ :instance_type,
1509
+ :monthly_recurring_cost,
1510
+ :normalized_units_to_purchase,
1511
+ :number_of_instances_to_purchase,
1512
+ :payment_option,
1513
+ :reserved_instances_region,
1514
+ :service,
1515
+ :size_flex_eligible,
1516
+ :term,
1517
+ :upfront_cost)
1518
+ SENSITIVE = []
1519
+ include Aws::Structure
1520
+ end
1521
+
1522
+ # Cost impact of the purchase recommendation.
1523
+ #
1524
+ # @!attribute [rw] pricing
1525
+ # Pricing details of the purchase recommendation.
1526
+ # @return [Types::ReservedInstancesPricing]
1527
+ #
1528
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ReservedInstancesCostCalculation AWS API Documentation
1529
+ #
1530
+ class ReservedInstancesCostCalculation < Struct.new(
1531
+ :pricing)
1532
+ SENSITIVE = []
1533
+ include Aws::Structure
1534
+ end
1535
+
1536
+ # Pricing details for your recommended reserved instance.
1537
+ #
1538
+ # @!attribute [rw] estimated_monthly_amortized_reservation_cost
1539
+ # The estimated cost of your recurring monthly fees for the
1540
+ # recommended reserved instance across the month.
1541
+ # @return [Float]
1542
+ #
1543
+ # @!attribute [rw] estimated_on_demand_cost
1544
+ # The remaining On-Demand cost estimated to not be covered by the
1545
+ # recommended reserved instance, over the length of the lookback
1546
+ # period.
1547
+ # @return [Float]
1548
+ #
1549
+ # @!attribute [rw] monthly_reservation_eligible_cost
1550
+ # The cost of paying for the recommended reserved instance monthly.
1551
+ # @return [Float]
1552
+ #
1553
+ # @!attribute [rw] savings_percentage
1554
+ # The savings percentage relative to the total On-Demand costs that
1555
+ # are associated with this instance.
1556
+ # @return [Float]
1557
+ #
1558
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ReservedInstancesPricing AWS API Documentation
1559
+ #
1560
+ class ReservedInstancesPricing < Struct.new(
1561
+ :estimated_monthly_amortized_reservation_cost,
1562
+ :estimated_on_demand_cost,
1563
+ :monthly_reservation_eligible_cost,
1564
+ :savings_percentage)
1565
+ SENSITIVE = []
1566
+ include Aws::Structure
1567
+ end
1568
+
1569
+ # Cost impact of the resource recommendation.
1570
+ #
1571
+ # @!attribute [rw] pricing
1572
+ # Pricing details of the resource recommendation.
1573
+ # @return [Types::ResourcePricing]
1574
+ #
1575
+ # @!attribute [rw] usages
1576
+ # Usage details of the resource recommendation.
1577
+ # @return [Array<Types::Usage>]
1578
+ #
1579
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ResourceCostCalculation AWS API Documentation
1580
+ #
1581
+ class ResourceCostCalculation < Struct.new(
1582
+ :pricing,
1583
+ :usages)
1584
+ SENSITIVE = []
1585
+ include Aws::Structure
1586
+ end
1587
+
1588
+ # Contains detailed information about the specified resource.
1589
+ #
1590
+ # @note ResourceDetails is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ResourceDetails corresponding to the set member.
1591
+ #
1592
+ # @!attribute [rw] compute_savings_plans
1593
+ # The Compute Savings Plans recommendation details.
1594
+ # @return [Types::ComputeSavingsPlans]
1595
+ #
1596
+ # @!attribute [rw] ebs_volume
1597
+ # The Amazon Elastic Block Store volume recommendation details.
1598
+ # @return [Types::EbsVolume]
1599
+ #
1600
+ # @!attribute [rw] ec2_auto_scaling_group
1601
+ # The EC2 Auto Scaling group recommendation details.
1602
+ # @return [Types::Ec2AutoScalingGroup]
1603
+ #
1604
+ # @!attribute [rw] ec2_instance
1605
+ # The EC2 instance recommendation details.
1606
+ # @return [Types::Ec2Instance]
1607
+ #
1608
+ # @!attribute [rw] ec2_instance_savings_plans
1609
+ # The EC2 instance Savings Plans recommendation details.
1610
+ # @return [Types::Ec2InstanceSavingsPlans]
1611
+ #
1612
+ # @!attribute [rw] ec2_reserved_instances
1613
+ # The EC2 reserved instances recommendation details.
1614
+ # @return [Types::Ec2ReservedInstances]
1615
+ #
1616
+ # @!attribute [rw] ecs_service
1617
+ # The ECS service recommendation details.
1618
+ # @return [Types::EcsService]
1619
+ #
1620
+ # @!attribute [rw] elasti_cache_reserved_instances
1621
+ # The ElastiCache reserved instances recommendation details.
1622
+ # @return [Types::ElastiCacheReservedInstances]
1623
+ #
1624
+ # @!attribute [rw] lambda_function
1625
+ # The Lambda function recommendation details.
1626
+ # @return [Types::LambdaFunction]
1627
+ #
1628
+ # @!attribute [rw] open_search_reserved_instances
1629
+ # The OpenSearch reserved instances recommendation details.
1630
+ # @return [Types::OpenSearchReservedInstances]
1631
+ #
1632
+ # @!attribute [rw] rds_reserved_instances
1633
+ # The RDS reserved instances recommendation details.
1634
+ # @return [Types::RdsReservedInstances]
1635
+ #
1636
+ # @!attribute [rw] redshift_reserved_instances
1637
+ # The Redshift reserved instances recommendation details.
1638
+ # @return [Types::RedshiftReservedInstances]
1639
+ #
1640
+ # @!attribute [rw] sage_maker_savings_plans
1641
+ # The SageMaker Savings Plans recommendation details.
1642
+ # @return [Types::SageMakerSavingsPlans]
1643
+ #
1644
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ResourceDetails AWS API Documentation
1645
+ #
1646
+ class ResourceDetails < Struct.new(
1647
+ :compute_savings_plans,
1648
+ :ebs_volume,
1649
+ :ec2_auto_scaling_group,
1650
+ :ec2_instance,
1651
+ :ec2_instance_savings_plans,
1652
+ :ec2_reserved_instances,
1653
+ :ecs_service,
1654
+ :elasti_cache_reserved_instances,
1655
+ :lambda_function,
1656
+ :open_search_reserved_instances,
1657
+ :rds_reserved_instances,
1658
+ :redshift_reserved_instances,
1659
+ :sage_maker_savings_plans,
1660
+ :unknown)
1661
+ SENSITIVE = []
1662
+ include Aws::Structure
1663
+ include Aws::Structure::Union
1664
+
1665
+ class ComputeSavingsPlans < ResourceDetails; end
1666
+ class EbsVolume < ResourceDetails; end
1667
+ class Ec2AutoScalingGroup < ResourceDetails; end
1668
+ class Ec2Instance < ResourceDetails; end
1669
+ class Ec2InstanceSavingsPlans < ResourceDetails; end
1670
+ class Ec2ReservedInstances < ResourceDetails; end
1671
+ class EcsService < ResourceDetails; end
1672
+ class ElastiCacheReservedInstances < ResourceDetails; end
1673
+ class LambdaFunction < ResourceDetails; end
1674
+ class OpenSearchReservedInstances < ResourceDetails; end
1675
+ class RdsReservedInstances < ResourceDetails; end
1676
+ class RedshiftReservedInstances < ResourceDetails; end
1677
+ class SageMakerSavingsPlans < ResourceDetails; end
1678
+ class Unknown < ResourceDetails; end
1679
+ end
1680
+
1681
+ # The specified Amazon Resource Name (ARN) in the request doesn't
1682
+ # exist.
1683
+ #
1684
+ # @!attribute [rw] message
1685
+ # @return [String]
1686
+ #
1687
+ # @!attribute [rw] resource_id
1688
+ # The identifier of the resource that was not found.
1689
+ # @return [String]
1690
+ #
1691
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ResourceNotFoundException AWS API Documentation
1692
+ #
1693
+ class ResourceNotFoundException < Struct.new(
1694
+ :message,
1695
+ :resource_id)
1696
+ SENSITIVE = []
1697
+ include Aws::Structure
1698
+ end
1699
+
1700
+ # Contains pricing information about the specified resource.
1701
+ #
1702
+ # @!attribute [rw] estimated_cost_after_discounts
1703
+ # The savings estimate incorporating all discounts with Amazon Web
1704
+ # Services, such as Reserved Instances and Savings Plans.
1705
+ # @return [Float]
1706
+ #
1707
+ # @!attribute [rw] estimated_cost_before_discounts
1708
+ # The savings estimate using Amazon Web Services public pricing
1709
+ # without incorporating any discounts.
1710
+ # @return [Float]
1711
+ #
1712
+ # @!attribute [rw] estimated_discounts
1713
+ # The estimated discounts for a recommendation.
1714
+ # @return [Types::EstimatedDiscounts]
1715
+ #
1716
+ # @!attribute [rw] estimated_net_unused_amortized_commitments
1717
+ # The estimated net unused amortized commitment for the
1718
+ # recommendation.
1719
+ # @return [Float]
1720
+ #
1721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ResourcePricing AWS API Documentation
1722
+ #
1723
+ class ResourcePricing < Struct.new(
1724
+ :estimated_cost_after_discounts,
1725
+ :estimated_cost_before_discounts,
1726
+ :estimated_discounts,
1727
+ :estimated_net_unused_amortized_commitments)
1728
+ SENSITIVE = []
1729
+ include Aws::Structure
1730
+ end
1731
+
1732
+ # The SageMaker Savings Plans recommendation details.
1733
+ #
1734
+ # @!attribute [rw] configuration
1735
+ # The SageMaker Savings Plans configuration used for recommendations.
1736
+ # @return [Types::SageMakerSavingsPlansConfiguration]
1737
+ #
1738
+ # @!attribute [rw] cost_calculation
1739
+ # Cost impact of the Savings Plans purchase recommendation.
1740
+ # @return [Types::SavingsPlansCostCalculation]
1741
+ #
1742
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/SageMakerSavingsPlans AWS API Documentation
1743
+ #
1744
+ class SageMakerSavingsPlans < Struct.new(
1745
+ :configuration,
1746
+ :cost_calculation)
1747
+ SENSITIVE = []
1748
+ include Aws::Structure
1749
+ end
1750
+
1751
+ # The SageMaker Savings Plans configuration used for recommendations.
1752
+ #
1753
+ # @!attribute [rw] account_scope
1754
+ # The account scope that you want your recommendations for.
1755
+ # @return [String]
1756
+ #
1757
+ # @!attribute [rw] hourly_commitment
1758
+ # The hourly commitment for the Savings Plans type.
1759
+ # @return [String]
1760
+ #
1761
+ # @!attribute [rw] payment_option
1762
+ # The payment option for the commitment.
1763
+ # @return [String]
1764
+ #
1765
+ # @!attribute [rw] term
1766
+ # The Savings Plans recommendation term in years.
1767
+ # @return [String]
1768
+ #
1769
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/SageMakerSavingsPlansConfiguration AWS API Documentation
1770
+ #
1771
+ class SageMakerSavingsPlansConfiguration < Struct.new(
1772
+ :account_scope,
1773
+ :hourly_commitment,
1774
+ :payment_option,
1775
+ :term)
1776
+ SENSITIVE = []
1777
+ include Aws::Structure
1778
+ end
1779
+
1780
+ # Cost impact of the purchase recommendation.
1781
+ #
1782
+ # @!attribute [rw] pricing
1783
+ # Pricing details of the purchase recommendation.
1784
+ # @return [Types::SavingsPlansPricing]
1785
+ #
1786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/SavingsPlansCostCalculation AWS API Documentation
1787
+ #
1788
+ class SavingsPlansCostCalculation < Struct.new(
1789
+ :pricing)
1790
+ SENSITIVE = []
1791
+ include Aws::Structure
1792
+ end
1793
+
1794
+ # Pricing information about a Savings Plan.
1795
+ #
1796
+ # @!attribute [rw] estimated_monthly_commitment
1797
+ # Estimated monthly commitment for the Savings Plan.
1798
+ # @return [Float]
1799
+ #
1800
+ # @!attribute [rw] estimated_on_demand_cost
1801
+ # Estimated On-Demand cost you will pay after buying the Savings Plan.
1802
+ # @return [Float]
1803
+ #
1804
+ # @!attribute [rw] monthly_savings_plans_eligible_cost
1805
+ # The cost of paying for the recommended Savings Plan monthly.
1806
+ # @return [Float]
1807
+ #
1808
+ # @!attribute [rw] savings_percentage
1809
+ # Estimated savings as a percentage of your overall costs after buying
1810
+ # the Savings Plan.
1811
+ # @return [Float]
1812
+ #
1813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/SavingsPlansPricing AWS API Documentation
1814
+ #
1815
+ class SavingsPlansPricing < Struct.new(
1816
+ :estimated_monthly_commitment,
1817
+ :estimated_on_demand_cost,
1818
+ :monthly_savings_plans_eligible_cost,
1819
+ :savings_percentage)
1820
+ SENSITIVE = []
1821
+ include Aws::Structure
1822
+ end
1823
+
1824
+ # The storage configuration used for recommendations.
1825
+ #
1826
+ # @!attribute [rw] size_in_gb
1827
+ # The storage volume.
1828
+ # @return [Float]
1829
+ #
1830
+ # @!attribute [rw] type
1831
+ # The storage type.
1832
+ # @return [String]
1833
+ #
1834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/StorageConfiguration AWS API Documentation
1835
+ #
1836
+ class StorageConfiguration < Struct.new(
1837
+ :size_in_gb,
1838
+ :type)
1839
+ SENSITIVE = []
1840
+ include Aws::Structure
1841
+ end
1842
+
1843
+ # The tag structure that contains a tag key and value.
1844
+ #
1845
+ # @!attribute [rw] key
1846
+ # The key that's associated with the tag.
1847
+ # @return [String]
1848
+ #
1849
+ # @!attribute [rw] value
1850
+ # The value that's associated with the tag.
1851
+ # @return [String]
1852
+ #
1853
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Tag AWS API Documentation
1854
+ #
1855
+ class Tag < Struct.new(
1856
+ :key,
1857
+ :value)
1858
+ SENSITIVE = []
1859
+ include Aws::Structure
1860
+ end
1861
+
1862
+ # The request was denied due to request throttling.
1863
+ #
1864
+ # @!attribute [rw] message
1865
+ # @return [String]
1866
+ #
1867
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ThrottlingException AWS API Documentation
1868
+ #
1869
+ class ThrottlingException < Struct.new(
1870
+ :message)
1871
+ SENSITIVE = []
1872
+ include Aws::Structure
1873
+ end
1874
+
1875
+ # @!attribute [rw] include_member_accounts
1876
+ # Indicates whether to enroll member accounts of the organization if
1877
+ # the account is the management account.
1878
+ # @return [Boolean]
1879
+ #
1880
+ # @!attribute [rw] status
1881
+ # Sets the account status.
1882
+ # @return [String]
1883
+ #
1884
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdateEnrollmentStatusRequest AWS API Documentation
1885
+ #
1886
+ class UpdateEnrollmentStatusRequest < Struct.new(
1887
+ :include_member_accounts,
1888
+ :status)
1889
+ SENSITIVE = []
1890
+ include Aws::Structure
1891
+ end
1892
+
1893
+ # @!attribute [rw] status
1894
+ # The enrollment status of the account.
1895
+ # @return [String]
1896
+ #
1897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdateEnrollmentStatusResponse AWS API Documentation
1898
+ #
1899
+ class UpdateEnrollmentStatusResponse < Struct.new(
1900
+ :status)
1901
+ SENSITIVE = []
1902
+ include Aws::Structure
1903
+ end
1904
+
1905
+ # @!attribute [rw] member_account_discount_visibility
1906
+ # Sets the "member account discount visibility" preference.
1907
+ # @return [String]
1908
+ #
1909
+ # @!attribute [rw] savings_estimation_mode
1910
+ # Sets the "savings estimation mode" preference.
1911
+ # @return [String]
1912
+ #
1913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdatePreferencesRequest AWS API Documentation
1914
+ #
1915
+ class UpdatePreferencesRequest < Struct.new(
1916
+ :member_account_discount_visibility,
1917
+ :savings_estimation_mode)
1918
+ SENSITIVE = []
1919
+ include Aws::Structure
1920
+ end
1921
+
1922
+ # @!attribute [rw] member_account_discount_visibility
1923
+ # Shows the status of the "member account discount visibility"
1924
+ # preference.
1925
+ # @return [String]
1926
+ #
1927
+ # @!attribute [rw] savings_estimation_mode
1928
+ # Shows the status of the "savings estimation mode" preference.
1929
+ # @return [String]
1930
+ #
1931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdatePreferencesResponse AWS API Documentation
1932
+ #
1933
+ class UpdatePreferencesResponse < Struct.new(
1934
+ :member_account_discount_visibility,
1935
+ :savings_estimation_mode)
1936
+ SENSITIVE = []
1937
+ include Aws::Structure
1938
+ end
1939
+
1940
+ # Details about the usage.
1941
+ #
1942
+ # @!attribute [rw] operation
1943
+ # The operation value.
1944
+ # @return [String]
1945
+ #
1946
+ # @!attribute [rw] product_code
1947
+ # The product code.
1948
+ # @return [String]
1949
+ #
1950
+ # @!attribute [rw] unit
1951
+ # The usage unit.
1952
+ # @return [String]
1953
+ #
1954
+ # @!attribute [rw] usage_amount
1955
+ # The usage amount.
1956
+ # @return [Float]
1957
+ #
1958
+ # @!attribute [rw] usage_type
1959
+ # The usage type.
1960
+ # @return [String]
1961
+ #
1962
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Usage AWS API Documentation
1963
+ #
1964
+ class Usage < Struct.new(
1965
+ :operation,
1966
+ :product_code,
1967
+ :unit,
1968
+ :usage_amount,
1969
+ :usage_type)
1970
+ SENSITIVE = []
1971
+ include Aws::Structure
1972
+ end
1973
+
1974
+ # The input fails to satisfy the constraints specified by an Amazon Web
1975
+ # Services service.
1976
+ #
1977
+ # @!attribute [rw] fields
1978
+ # The list of fields that are invalid.
1979
+ # @return [Array<Types::ValidationExceptionDetail>]
1980
+ #
1981
+ # @!attribute [rw] message
1982
+ # @return [String]
1983
+ #
1984
+ # @!attribute [rw] reason
1985
+ # The reason for the validation exception.
1986
+ # @return [String]
1987
+ #
1988
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ValidationException AWS API Documentation
1989
+ #
1990
+ class ValidationException < Struct.new(
1991
+ :fields,
1992
+ :message,
1993
+ :reason)
1994
+ SENSITIVE = []
1995
+ include Aws::Structure
1996
+ end
1997
+
1998
+ # The input failed to meet the constraints specified by the Amazon Web
1999
+ # Services service in a specified field.
2000
+ #
2001
+ # @!attribute [rw] field_name
2002
+ # The field name where the invalid entry was detected.
2003
+ # @return [String]
2004
+ #
2005
+ # @!attribute [rw] message
2006
+ # A message with the reason for the validation exception error.
2007
+ # @return [String]
2008
+ #
2009
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ValidationExceptionDetail AWS API Documentation
2010
+ #
2011
+ class ValidationExceptionDetail < Struct.new(
2012
+ :field_name,
2013
+ :message)
2014
+ SENSITIVE = []
2015
+ include Aws::Structure
2016
+ end
2017
+
2018
+ end
2019
+ end