aws-sdk-computeoptimizer 1.26.0 → 1.30.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.
@@ -30,7 +30,12 @@ module Aws::ComputeOptimizer
30
30
  CpuVendorArchitecture = Shapes::StringShape.new(name: 'CpuVendorArchitecture')
31
31
  CpuVendorArchitectures = Shapes::ListShape.new(name: 'CpuVendorArchitectures')
32
32
  CreationTimestamp = Shapes::TimestampShape.new(name: 'CreationTimestamp')
33
+ Currency = Shapes::StringShape.new(name: 'Currency')
33
34
  CurrentInstanceType = Shapes::StringShape.new(name: 'CurrentInstanceType')
35
+ CurrentPerformanceRisk = Shapes::StringShape.new(name: 'CurrentPerformanceRisk')
36
+ CurrentPerformanceRiskRatings = Shapes::StructureShape.new(name: 'CurrentPerformanceRiskRatings')
37
+ DeleteRecommendationPreferencesRequest = Shapes::StructureShape.new(name: 'DeleteRecommendationPreferencesRequest')
38
+ DeleteRecommendationPreferencesResponse = Shapes::StructureShape.new(name: 'DeleteRecommendationPreferencesResponse')
34
39
  DescribeRecommendationExportJobsRequest = Shapes::StructureShape.new(name: 'DescribeRecommendationExportJobsRequest')
35
40
  DescribeRecommendationExportJobsResponse = Shapes::StructureShape.new(name: 'DescribeRecommendationExportJobsResponse')
36
41
  DesiredCapacity = Shapes::IntegerShape.new(name: 'DesiredCapacity')
@@ -44,10 +49,13 @@ module Aws::ComputeOptimizer
44
49
  EBSMetricName = Shapes::StringShape.new(name: 'EBSMetricName')
45
50
  EBSUtilizationMetric = Shapes::StructureShape.new(name: 'EBSUtilizationMetric')
46
51
  EBSUtilizationMetrics = Shapes::ListShape.new(name: 'EBSUtilizationMetrics')
52
+ EffectiveRecommendationPreferences = Shapes::StructureShape.new(name: 'EffectiveRecommendationPreferences')
53
+ EnhancedInfrastructureMetrics = Shapes::StringShape.new(name: 'EnhancedInfrastructureMetrics')
47
54
  EnrollmentFilter = Shapes::StructureShape.new(name: 'EnrollmentFilter')
48
55
  EnrollmentFilterName = Shapes::StringShape.new(name: 'EnrollmentFilterName')
49
56
  EnrollmentFilters = Shapes::ListShape.new(name: 'EnrollmentFilters')
50
57
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
58
+ EstimatedMonthlySavings = Shapes::StructureShape.new(name: 'EstimatedMonthlySavings')
51
59
  ExportAutoScalingGroupRecommendationsRequest = Shapes::StructureShape.new(name: 'ExportAutoScalingGroupRecommendationsRequest')
52
60
  ExportAutoScalingGroupRecommendationsResponse = Shapes::StructureShape.new(name: 'ExportAutoScalingGroupRecommendationsResponse')
53
61
  ExportDestination = Shapes::StructureShape.new(name: 'ExportDestination')
@@ -85,6 +93,8 @@ module Aws::ComputeOptimizer
85
93
  GetEC2InstanceRecommendationsResponse = Shapes::StructureShape.new(name: 'GetEC2InstanceRecommendationsResponse')
86
94
  GetEC2RecommendationProjectedMetricsRequest = Shapes::StructureShape.new(name: 'GetEC2RecommendationProjectedMetricsRequest')
87
95
  GetEC2RecommendationProjectedMetricsResponse = Shapes::StructureShape.new(name: 'GetEC2RecommendationProjectedMetricsResponse')
96
+ GetEffectiveRecommendationPreferencesRequest = Shapes::StructureShape.new(name: 'GetEffectiveRecommendationPreferencesRequest')
97
+ GetEffectiveRecommendationPreferencesResponse = Shapes::StructureShape.new(name: 'GetEffectiveRecommendationPreferencesResponse')
88
98
  GetEnrollmentStatusRequest = Shapes::StructureShape.new(name: 'GetEnrollmentStatusRequest')
89
99
  GetEnrollmentStatusResponse = Shapes::StructureShape.new(name: 'GetEnrollmentStatusResponse')
90
100
  GetEnrollmentStatusesForOrganizationRequest = Shapes::StructureShape.new(name: 'GetEnrollmentStatusesForOrganizationRequest')
@@ -93,10 +103,16 @@ module Aws::ComputeOptimizer
93
103
  GetLambdaFunctionRecommendationsResponse = Shapes::StructureShape.new(name: 'GetLambdaFunctionRecommendationsResponse')
94
104
  GetRecommendationError = Shapes::StructureShape.new(name: 'GetRecommendationError')
95
105
  GetRecommendationErrors = Shapes::ListShape.new(name: 'GetRecommendationErrors')
106
+ GetRecommendationPreferencesRequest = Shapes::StructureShape.new(name: 'GetRecommendationPreferencesRequest')
107
+ GetRecommendationPreferencesResponse = Shapes::StructureShape.new(name: 'GetRecommendationPreferencesResponse')
96
108
  GetRecommendationSummariesRequest = Shapes::StructureShape.new(name: 'GetRecommendationSummariesRequest')
97
109
  GetRecommendationSummariesResponse = Shapes::StructureShape.new(name: 'GetRecommendationSummariesResponse')
110
+ High = Shapes::IntegerShape.new(name: 'High')
98
111
  Identifier = Shapes::StringShape.new(name: 'Identifier')
99
112
  IncludeMemberAccounts = Shapes::BooleanShape.new(name: 'IncludeMemberAccounts')
113
+ InferredWorkloadType = Shapes::StringShape.new(name: 'InferredWorkloadType')
114
+ InferredWorkloadTypes = Shapes::ListShape.new(name: 'InferredWorkloadTypes')
115
+ InferredWorkloadTypesPreference = Shapes::StringShape.new(name: 'InferredWorkloadTypesPreference')
100
116
  InstanceArn = Shapes::StringShape.new(name: 'InstanceArn')
101
117
  InstanceArns = Shapes::ListShape.new(name: 'InstanceArns')
102
118
  InstanceName = Shapes::StringShape.new(name: 'InstanceName')
@@ -136,8 +152,10 @@ module Aws::ComputeOptimizer
136
152
  LastUpdatedTimestamp = Shapes::TimestampShape.new(name: 'LastUpdatedTimestamp')
137
153
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
138
154
  LookBackPeriodInDays = Shapes::FloatShape.new(name: 'LookBackPeriodInDays')
155
+ Low = Shapes::IntegerShape.new(name: 'Low')
139
156
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
140
157
  MaxSize = Shapes::IntegerShape.new(name: 'MaxSize')
158
+ Medium = Shapes::IntegerShape.new(name: 'Medium')
141
159
  MemberAccountsEnrolled = Shapes::BooleanShape.new(name: 'MemberAccountsEnrolled')
142
160
  MemorySize = Shapes::IntegerShape.new(name: 'MemorySize')
143
161
  Message = Shapes::StringShape.new(name: 'Message')
@@ -146,6 +164,7 @@ module Aws::ComputeOptimizer
146
164
  MetricStatistic = Shapes::StringShape.new(name: 'MetricStatistic')
147
165
  MetricValue = Shapes::FloatShape.new(name: 'MetricValue')
148
166
  MetricValues = Shapes::ListShape.new(name: 'MetricValues')
167
+ MigrationEffort = Shapes::StringShape.new(name: 'MigrationEffort')
149
168
  MinSize = Shapes::IntegerShape.new(name: 'MinSize')
150
169
  MissingAuthenticationToken = Shapes::StructureShape.new(name: 'MissingAuthenticationToken')
151
170
  NextToken = Shapes::StringShape.new(name: 'NextToken')
@@ -159,13 +178,19 @@ module Aws::ComputeOptimizer
159
178
  ProjectedMetric = Shapes::StructureShape.new(name: 'ProjectedMetric')
160
179
  ProjectedMetrics = Shapes::ListShape.new(name: 'ProjectedMetrics')
161
180
  ProjectedUtilizationMetrics = Shapes::ListShape.new(name: 'ProjectedUtilizationMetrics')
181
+ PutRecommendationPreferencesRequest = Shapes::StructureShape.new(name: 'PutRecommendationPreferencesRequest')
182
+ PutRecommendationPreferencesResponse = Shapes::StructureShape.new(name: 'PutRecommendationPreferencesResponse')
162
183
  Rank = Shapes::IntegerShape.new(name: 'Rank')
163
184
  ReasonCodeSummaries = Shapes::ListShape.new(name: 'ReasonCodeSummaries')
164
185
  ReasonCodeSummary = Shapes::StructureShape.new(name: 'ReasonCodeSummary')
165
186
  RecommendationExportJob = Shapes::StructureShape.new(name: 'RecommendationExportJob')
166
187
  RecommendationExportJobs = Shapes::ListShape.new(name: 'RecommendationExportJobs')
167
188
  RecommendationOptions = Shapes::ListShape.new(name: 'RecommendationOptions')
189
+ RecommendationPreferenceName = Shapes::StringShape.new(name: 'RecommendationPreferenceName')
190
+ RecommendationPreferenceNames = Shapes::ListShape.new(name: 'RecommendationPreferenceNames')
168
191
  RecommendationPreferences = Shapes::StructureShape.new(name: 'RecommendationPreferences')
192
+ RecommendationPreferencesDetail = Shapes::StructureShape.new(name: 'RecommendationPreferencesDetail')
193
+ RecommendationPreferencesDetails = Shapes::ListShape.new(name: 'RecommendationPreferencesDetails')
169
194
  RecommendationSource = Shapes::StructureShape.new(name: 'RecommendationSource')
170
195
  RecommendationSourceArn = Shapes::StringShape.new(name: 'RecommendationSourceArn')
171
196
  RecommendationSourceType = Shapes::StringShape.new(name: 'RecommendationSourceType')
@@ -175,10 +200,16 @@ module Aws::ComputeOptimizer
175
200
  RecommendedInstanceType = Shapes::StringShape.new(name: 'RecommendedInstanceType')
176
201
  RecommendedOptionProjectedMetric = Shapes::StructureShape.new(name: 'RecommendedOptionProjectedMetric')
177
202
  RecommendedOptionProjectedMetrics = Shapes::ListShape.new(name: 'RecommendedOptionProjectedMetrics')
203
+ ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
178
204
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
179
205
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
180
206
  S3Destination = Shapes::StructureShape.new(name: 'S3Destination')
181
207
  S3DestinationConfig = Shapes::StructureShape.new(name: 'S3DestinationConfig')
208
+ SavingsOpportunity = Shapes::StructureShape.new(name: 'SavingsOpportunity')
209
+ SavingsOpportunityPercentage = Shapes::FloatShape.new(name: 'SavingsOpportunityPercentage')
210
+ Scope = Shapes::StructureShape.new(name: 'Scope')
211
+ ScopeName = Shapes::StringShape.new(name: 'ScopeName')
212
+ ScopeValue = Shapes::StringShape.new(name: 'ScopeValue')
182
213
  ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
183
214
  Status = Shapes::StringShape.new(name: 'Status')
184
215
  StatusReason = Shapes::StringShape.new(name: 'StatusReason')
@@ -192,6 +223,8 @@ module Aws::ComputeOptimizer
192
223
  UpdateEnrollmentStatusResponse = Shapes::StructureShape.new(name: 'UpdateEnrollmentStatusResponse')
193
224
  UtilizationMetric = Shapes::StructureShape.new(name: 'UtilizationMetric')
194
225
  UtilizationMetrics = Shapes::ListShape.new(name: 'UtilizationMetrics')
226
+ Value = Shapes::FloatShape.new(name: 'Value')
227
+ VeryLow = Shapes::IntegerShape.new(name: 'VeryLow')
195
228
  VolumeArn = Shapes::StringShape.new(name: 'VolumeArn')
196
229
  VolumeArns = Shapes::ListShape.new(name: 'VolumeArns')
197
230
  VolumeBaselineIOPS = Shapes::IntegerShape.new(name: 'VolumeBaselineIOPS')
@@ -236,12 +269,17 @@ module Aws::ComputeOptimizer
236
269
  AutoScalingGroupRecommendation.add_member(:current_configuration, Shapes::ShapeRef.new(shape: AutoScalingGroupConfiguration, location_name: "currentConfiguration"))
237
270
  AutoScalingGroupRecommendation.add_member(:recommendation_options, Shapes::ShapeRef.new(shape: AutoScalingGroupRecommendationOptions, location_name: "recommendationOptions"))
238
271
  AutoScalingGroupRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
272
+ AutoScalingGroupRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
273
+ AutoScalingGroupRecommendation.add_member(:effective_recommendation_preferences, Shapes::ShapeRef.new(shape: EffectiveRecommendationPreferences, location_name: "effectiveRecommendationPreferences"))
274
+ AutoScalingGroupRecommendation.add_member(:inferred_workload_types, Shapes::ShapeRef.new(shape: InferredWorkloadTypes, location_name: "inferredWorkloadTypes"))
239
275
  AutoScalingGroupRecommendation.struct_class = Types::AutoScalingGroupRecommendation
240
276
 
241
277
  AutoScalingGroupRecommendationOption.add_member(:configuration, Shapes::ShapeRef.new(shape: AutoScalingGroupConfiguration, location_name: "configuration"))
242
278
  AutoScalingGroupRecommendationOption.add_member(:projected_utilization_metrics, Shapes::ShapeRef.new(shape: ProjectedUtilizationMetrics, location_name: "projectedUtilizationMetrics"))
243
279
  AutoScalingGroupRecommendationOption.add_member(:performance_risk, Shapes::ShapeRef.new(shape: PerformanceRisk, location_name: "performanceRisk"))
244
280
  AutoScalingGroupRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
281
+ AutoScalingGroupRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
282
+ AutoScalingGroupRecommendationOption.add_member(:migration_effort, Shapes::ShapeRef.new(shape: MigrationEffort, location_name: "migrationEffort"))
245
283
  AutoScalingGroupRecommendationOption.struct_class = Types::AutoScalingGroupRecommendationOption
246
284
 
247
285
  AutoScalingGroupRecommendationOptions.member = Shapes::ShapeRef.new(shape: AutoScalingGroupRecommendationOption)
@@ -250,6 +288,19 @@ module Aws::ComputeOptimizer
250
288
 
251
289
  CpuVendorArchitectures.member = Shapes::ShapeRef.new(shape: CpuVendorArchitecture)
252
290
 
291
+ CurrentPerformanceRiskRatings.add_member(:high, Shapes::ShapeRef.new(shape: High, location_name: "high"))
292
+ CurrentPerformanceRiskRatings.add_member(:medium, Shapes::ShapeRef.new(shape: Medium, location_name: "medium"))
293
+ CurrentPerformanceRiskRatings.add_member(:low, Shapes::ShapeRef.new(shape: Low, location_name: "low"))
294
+ CurrentPerformanceRiskRatings.add_member(:very_low, Shapes::ShapeRef.new(shape: VeryLow, location_name: "veryLow"))
295
+ CurrentPerformanceRiskRatings.struct_class = Types::CurrentPerformanceRiskRatings
296
+
297
+ DeleteRecommendationPreferencesRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
298
+ DeleteRecommendationPreferencesRequest.add_member(:scope, Shapes::ShapeRef.new(shape: Scope, location_name: "scope"))
299
+ DeleteRecommendationPreferencesRequest.add_member(:recommendation_preference_names, Shapes::ShapeRef.new(shape: RecommendationPreferenceNames, required: true, location_name: "recommendationPreferenceNames"))
300
+ DeleteRecommendationPreferencesRequest.struct_class = Types::DeleteRecommendationPreferencesRequest
301
+
302
+ DeleteRecommendationPreferencesResponse.struct_class = Types::DeleteRecommendationPreferencesResponse
303
+
253
304
  DescribeRecommendationExportJobsRequest.add_member(:job_ids, Shapes::ShapeRef.new(shape: JobIds, location_name: "jobIds"))
254
305
  DescribeRecommendationExportJobsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: JobFilters, location_name: "filters"))
255
306
  DescribeRecommendationExportJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
@@ -273,12 +324,21 @@ module Aws::ComputeOptimizer
273
324
 
274
325
  EBSUtilizationMetrics.member = Shapes::ShapeRef.new(shape: EBSUtilizationMetric)
275
326
 
327
+ EffectiveRecommendationPreferences.add_member(:cpu_vendor_architectures, Shapes::ShapeRef.new(shape: CpuVendorArchitectures, location_name: "cpuVendorArchitectures"))
328
+ EffectiveRecommendationPreferences.add_member(:enhanced_infrastructure_metrics, Shapes::ShapeRef.new(shape: EnhancedInfrastructureMetrics, location_name: "enhancedInfrastructureMetrics"))
329
+ EffectiveRecommendationPreferences.add_member(:inferred_workload_types, Shapes::ShapeRef.new(shape: InferredWorkloadTypesPreference, location_name: "inferredWorkloadTypes"))
330
+ EffectiveRecommendationPreferences.struct_class = Types::EffectiveRecommendationPreferences
331
+
276
332
  EnrollmentFilter.add_member(:name, Shapes::ShapeRef.new(shape: EnrollmentFilterName, location_name: "name"))
277
333
  EnrollmentFilter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValues, location_name: "values"))
278
334
  EnrollmentFilter.struct_class = Types::EnrollmentFilter
279
335
 
280
336
  EnrollmentFilters.member = Shapes::ShapeRef.new(shape: EnrollmentFilter)
281
337
 
338
+ EstimatedMonthlySavings.add_member(:currency, Shapes::ShapeRef.new(shape: Currency, location_name: "currency"))
339
+ EstimatedMonthlySavings.add_member(:value, Shapes::ShapeRef.new(shape: Value, location_name: "value"))
340
+ EstimatedMonthlySavings.struct_class = Types::EstimatedMonthlySavings
341
+
282
342
  ExportAutoScalingGroupRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
283
343
  ExportAutoScalingGroupRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: Filters, location_name: "filters"))
284
344
  ExportAutoScalingGroupRecommendationsRequest.add_member(:fields_to_export, Shapes::ShapeRef.new(shape: ExportableAutoScalingGroupFields, location_name: "fieldsToExport"))
@@ -399,6 +459,12 @@ module Aws::ComputeOptimizer
399
459
  GetEC2RecommendationProjectedMetricsResponse.add_member(:recommended_option_projected_metrics, Shapes::ShapeRef.new(shape: RecommendedOptionProjectedMetrics, location_name: "recommendedOptionProjectedMetrics"))
400
460
  GetEC2RecommendationProjectedMetricsResponse.struct_class = Types::GetEC2RecommendationProjectedMetricsResponse
401
461
 
462
+ GetEffectiveRecommendationPreferencesRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "resourceArn"))
463
+ GetEffectiveRecommendationPreferencesRequest.struct_class = Types::GetEffectiveRecommendationPreferencesRequest
464
+
465
+ GetEffectiveRecommendationPreferencesResponse.add_member(:enhanced_infrastructure_metrics, Shapes::ShapeRef.new(shape: EnhancedInfrastructureMetrics, location_name: "enhancedInfrastructureMetrics"))
466
+ GetEffectiveRecommendationPreferencesResponse.struct_class = Types::GetEffectiveRecommendationPreferencesResponse
467
+
402
468
  GetEnrollmentStatusRequest.struct_class = Types::GetEnrollmentStatusRequest
403
469
 
404
470
  GetEnrollmentStatusResponse.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "status"))
@@ -435,6 +501,16 @@ module Aws::ComputeOptimizer
435
501
 
436
502
  GetRecommendationErrors.member = Shapes::ShapeRef.new(shape: GetRecommendationError)
437
503
 
504
+ GetRecommendationPreferencesRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
505
+ GetRecommendationPreferencesRequest.add_member(:scope, Shapes::ShapeRef.new(shape: Scope, location_name: "scope"))
506
+ GetRecommendationPreferencesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
507
+ GetRecommendationPreferencesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
508
+ GetRecommendationPreferencesRequest.struct_class = Types::GetRecommendationPreferencesRequest
509
+
510
+ GetRecommendationPreferencesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
511
+ GetRecommendationPreferencesResponse.add_member(:recommendation_preferences_details, Shapes::ShapeRef.new(shape: RecommendationPreferencesDetails, location_name: "recommendationPreferencesDetails"))
512
+ GetRecommendationPreferencesResponse.struct_class = Types::GetRecommendationPreferencesResponse
513
+
438
514
  GetRecommendationSummariesRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
439
515
  GetRecommendationSummariesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
440
516
  GetRecommendationSummariesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
@@ -444,6 +520,8 @@ module Aws::ComputeOptimizer
444
520
  GetRecommendationSummariesResponse.add_member(:recommendation_summaries, Shapes::ShapeRef.new(shape: RecommendationSummaries, location_name: "recommendationSummaries"))
445
521
  GetRecommendationSummariesResponse.struct_class = Types::GetRecommendationSummariesResponse
446
522
 
523
+ InferredWorkloadTypes.member = Shapes::ShapeRef.new(shape: InferredWorkloadType)
524
+
447
525
  InstanceArns.member = Shapes::ShapeRef.new(shape: InstanceArn)
448
526
 
449
527
  InstanceRecommendation.add_member(:instance_arn, Shapes::ShapeRef.new(shape: InstanceArn, location_name: "instanceArn"))
@@ -457,6 +535,9 @@ module Aws::ComputeOptimizer
457
535
  InstanceRecommendation.add_member(:recommendation_options, Shapes::ShapeRef.new(shape: RecommendationOptions, location_name: "recommendationOptions"))
458
536
  InstanceRecommendation.add_member(:recommendation_sources, Shapes::ShapeRef.new(shape: RecommendationSources, location_name: "recommendationSources"))
459
537
  InstanceRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
538
+ InstanceRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
539
+ InstanceRecommendation.add_member(:effective_recommendation_preferences, Shapes::ShapeRef.new(shape: EffectiveRecommendationPreferences, location_name: "effectiveRecommendationPreferences"))
540
+ InstanceRecommendation.add_member(:inferred_workload_types, Shapes::ShapeRef.new(shape: InferredWorkloadTypes, location_name: "inferredWorkloadTypes"))
460
541
  InstanceRecommendation.struct_class = Types::InstanceRecommendation
461
542
 
462
543
  InstanceRecommendationFindingReasonCodes.member = Shapes::ShapeRef.new(shape: InstanceRecommendationFindingReasonCode)
@@ -466,6 +547,8 @@ module Aws::ComputeOptimizer
466
547
  InstanceRecommendationOption.add_member(:platform_differences, Shapes::ShapeRef.new(shape: PlatformDifferences, location_name: "platformDifferences"))
467
548
  InstanceRecommendationOption.add_member(:performance_risk, Shapes::ShapeRef.new(shape: PerformanceRisk, location_name: "performanceRisk"))
468
549
  InstanceRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
550
+ InstanceRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
551
+ InstanceRecommendationOption.add_member(:migration_effort, Shapes::ShapeRef.new(shape: MigrationEffort, location_name: "migrationEffort"))
469
552
  InstanceRecommendationOption.struct_class = Types::InstanceRecommendationOption
470
553
 
471
554
  InstanceRecommendations.member = Shapes::ShapeRef.new(shape: InstanceRecommendation)
@@ -494,6 +577,7 @@ module Aws::ComputeOptimizer
494
577
  LambdaFunctionMemoryRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
495
578
  LambdaFunctionMemoryRecommendationOption.add_member(:memory_size, Shapes::ShapeRef.new(shape: MemorySize, location_name: "memorySize"))
496
579
  LambdaFunctionMemoryRecommendationOption.add_member(:projected_utilization_metrics, Shapes::ShapeRef.new(shape: LambdaFunctionMemoryProjectedMetrics, location_name: "projectedUtilizationMetrics"))
580
+ LambdaFunctionMemoryRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
497
581
  LambdaFunctionMemoryRecommendationOption.struct_class = Types::LambdaFunctionMemoryRecommendationOption
498
582
 
499
583
  LambdaFunctionMemoryRecommendationOptions.member = Shapes::ShapeRef.new(shape: LambdaFunctionMemoryRecommendationOption)
@@ -509,6 +593,7 @@ module Aws::ComputeOptimizer
509
593
  LambdaFunctionRecommendation.add_member(:finding, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFinding, location_name: "finding"))
510
594
  LambdaFunctionRecommendation.add_member(:finding_reason_codes, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFindingReasonCodes, location_name: "findingReasonCodes"))
511
595
  LambdaFunctionRecommendation.add_member(:memory_size_recommendation_options, Shapes::ShapeRef.new(shape: LambdaFunctionMemoryRecommendationOptions, location_name: "memorySizeRecommendationOptions"))
596
+ LambdaFunctionRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
512
597
  LambdaFunctionRecommendation.struct_class = Types::LambdaFunctionRecommendation
513
598
 
514
599
  LambdaFunctionRecommendationFilter.add_member(:name, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFilterName, location_name: "name"))
@@ -550,6 +635,14 @@ module Aws::ComputeOptimizer
550
635
 
551
636
  ProjectedUtilizationMetrics.member = Shapes::ShapeRef.new(shape: UtilizationMetric)
552
637
 
638
+ PutRecommendationPreferencesRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
639
+ PutRecommendationPreferencesRequest.add_member(:scope, Shapes::ShapeRef.new(shape: Scope, location_name: "scope"))
640
+ PutRecommendationPreferencesRequest.add_member(:enhanced_infrastructure_metrics, Shapes::ShapeRef.new(shape: EnhancedInfrastructureMetrics, location_name: "enhancedInfrastructureMetrics"))
641
+ PutRecommendationPreferencesRequest.add_member(:inferred_workload_types, Shapes::ShapeRef.new(shape: InferredWorkloadTypesPreference, location_name: "inferredWorkloadTypes"))
642
+ PutRecommendationPreferencesRequest.struct_class = Types::PutRecommendationPreferencesRequest
643
+
644
+ PutRecommendationPreferencesResponse.struct_class = Types::PutRecommendationPreferencesResponse
645
+
553
646
  ReasonCodeSummaries.member = Shapes::ShapeRef.new(shape: ReasonCodeSummary)
554
647
 
555
648
  ReasonCodeSummary.add_member(:name, Shapes::ShapeRef.new(shape: FindingReasonCode, location_name: "name"))
@@ -569,9 +662,19 @@ module Aws::ComputeOptimizer
569
662
 
570
663
  RecommendationOptions.member = Shapes::ShapeRef.new(shape: InstanceRecommendationOption)
571
664
 
665
+ RecommendationPreferenceNames.member = Shapes::ShapeRef.new(shape: RecommendationPreferenceName)
666
+
572
667
  RecommendationPreferences.add_member(:cpu_vendor_architectures, Shapes::ShapeRef.new(shape: CpuVendorArchitectures, location_name: "cpuVendorArchitectures"))
573
668
  RecommendationPreferences.struct_class = Types::RecommendationPreferences
574
669
 
670
+ RecommendationPreferencesDetail.add_member(:scope, Shapes::ShapeRef.new(shape: Scope, location_name: "scope"))
671
+ RecommendationPreferencesDetail.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "resourceType"))
672
+ RecommendationPreferencesDetail.add_member(:enhanced_infrastructure_metrics, Shapes::ShapeRef.new(shape: EnhancedInfrastructureMetrics, location_name: "enhancedInfrastructureMetrics"))
673
+ RecommendationPreferencesDetail.add_member(:inferred_workload_types, Shapes::ShapeRef.new(shape: InferredWorkloadTypesPreference, location_name: "inferredWorkloadTypes"))
674
+ RecommendationPreferencesDetail.struct_class = Types::RecommendationPreferencesDetail
675
+
676
+ RecommendationPreferencesDetails.member = Shapes::ShapeRef.new(shape: RecommendationPreferencesDetail)
677
+
575
678
  RecommendationSource.add_member(:recommendation_source_arn, Shapes::ShapeRef.new(shape: RecommendationSourceArn, location_name: "recommendationSourceArn"))
576
679
  RecommendationSource.add_member(:recommendation_source_type, Shapes::ShapeRef.new(shape: RecommendationSourceType, location_name: "recommendationSourceType"))
577
680
  RecommendationSource.struct_class = Types::RecommendationSource
@@ -583,6 +686,8 @@ module Aws::ComputeOptimizer
583
686
  RecommendationSummary.add_member(:summaries, Shapes::ShapeRef.new(shape: Summaries, location_name: "summaries"))
584
687
  RecommendationSummary.add_member(:recommendation_resource_type, Shapes::ShapeRef.new(shape: RecommendationSourceType, location_name: "recommendationResourceType"))
585
688
  RecommendationSummary.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
689
+ RecommendationSummary.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
690
+ RecommendationSummary.add_member(:current_performance_risk_ratings, Shapes::ShapeRef.new(shape: CurrentPerformanceRiskRatings, location_name: "currentPerformanceRiskRatings"))
586
691
  RecommendationSummary.struct_class = Types::RecommendationSummary
587
692
 
588
693
  RecommendedOptionProjectedMetric.add_member(:recommended_instance_type, Shapes::ShapeRef.new(shape: RecommendedInstanceType, location_name: "recommendedInstanceType"))
@@ -604,6 +709,14 @@ module Aws::ComputeOptimizer
604
709
  S3DestinationConfig.add_member(:key_prefix, Shapes::ShapeRef.new(shape: DestinationKeyPrefix, location_name: "keyPrefix"))
605
710
  S3DestinationConfig.struct_class = Types::S3DestinationConfig
606
711
 
712
+ SavingsOpportunity.add_member(:savings_opportunity_percentage, Shapes::ShapeRef.new(shape: SavingsOpportunityPercentage, location_name: "savingsOpportunityPercentage"))
713
+ SavingsOpportunity.add_member(:estimated_monthly_savings, Shapes::ShapeRef.new(shape: EstimatedMonthlySavings, location_name: "estimatedMonthlySavings"))
714
+ SavingsOpportunity.struct_class = Types::SavingsOpportunity
715
+
716
+ Scope.add_member(:name, Shapes::ShapeRef.new(shape: ScopeName, location_name: "name"))
717
+ Scope.add_member(:value, Shapes::ShapeRef.new(shape: ScopeValue, location_name: "value"))
718
+ Scope.struct_class = Types::Scope
719
+
607
720
  ServiceUnavailableException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
608
721
  ServiceUnavailableException.struct_class = Types::ServiceUnavailableException
609
722
 
@@ -652,11 +765,13 @@ module Aws::ComputeOptimizer
652
765
  VolumeRecommendation.add_member(:look_back_period_in_days, Shapes::ShapeRef.new(shape: LookBackPeriodInDays, location_name: "lookBackPeriodInDays"))
653
766
  VolumeRecommendation.add_member(:volume_recommendation_options, Shapes::ShapeRef.new(shape: VolumeRecommendationOptions, location_name: "volumeRecommendationOptions"))
654
767
  VolumeRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
768
+ VolumeRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
655
769
  VolumeRecommendation.struct_class = Types::VolumeRecommendation
656
770
 
657
771
  VolumeRecommendationOption.add_member(:configuration, Shapes::ShapeRef.new(shape: VolumeConfiguration, location_name: "configuration"))
658
772
  VolumeRecommendationOption.add_member(:performance_risk, Shapes::ShapeRef.new(shape: PerformanceRisk, location_name: "performanceRisk"))
659
773
  VolumeRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
774
+ VolumeRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
660
775
  VolumeRecommendationOption.struct_class = Types::VolumeRecommendationOption
661
776
 
662
777
  VolumeRecommendationOptions.member = Shapes::ShapeRef.new(shape: VolumeRecommendationOption)
@@ -682,6 +797,22 @@ module Aws::ComputeOptimizer
682
797
  "uid" => "compute-optimizer-2019-11-01",
683
798
  }
684
799
 
800
+ api.add_operation(:delete_recommendation_preferences, Seahorse::Model::Operation.new.tap do |o|
801
+ o.name = "DeleteRecommendationPreferences"
802
+ o.http_method = "POST"
803
+ o.http_request_uri = "/"
804
+ o.input = Shapes::ShapeRef.new(shape: DeleteRecommendationPreferencesRequest)
805
+ o.output = Shapes::ShapeRef.new(shape: DeleteRecommendationPreferencesResponse)
806
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
807
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
808
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
809
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
810
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
811
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
812
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
813
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
814
+ end)
815
+
685
816
  api.add_operation(:describe_recommendation_export_jobs, Seahorse::Model::Operation.new.tap do |o|
686
817
  o.name = "DescribeRecommendationExportJobs"
687
818
  o.http_method = "POST"
@@ -826,6 +957,22 @@ module Aws::ComputeOptimizer
826
957
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
827
958
  end)
828
959
 
960
+ api.add_operation(:get_effective_recommendation_preferences, Seahorse::Model::Operation.new.tap do |o|
961
+ o.name = "GetEffectiveRecommendationPreferences"
962
+ o.http_method = "POST"
963
+ o.http_request_uri = "/"
964
+ o.input = Shapes::ShapeRef.new(shape: GetEffectiveRecommendationPreferencesRequest)
965
+ o.output = Shapes::ShapeRef.new(shape: GetEffectiveRecommendationPreferencesResponse)
966
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
967
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
968
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
969
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
970
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
971
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
972
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
973
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
974
+ end)
975
+
829
976
  api.add_operation(:get_enrollment_status, Seahorse::Model::Operation.new.tap do |o|
830
977
  o.name = "GetEnrollmentStatus"
831
978
  o.http_method = "POST"
@@ -870,6 +1017,22 @@ module Aws::ComputeOptimizer
870
1017
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
871
1018
  end)
872
1019
 
1020
+ api.add_operation(:get_recommendation_preferences, Seahorse::Model::Operation.new.tap do |o|
1021
+ o.name = "GetRecommendationPreferences"
1022
+ o.http_method = "POST"
1023
+ o.http_request_uri = "/"
1024
+ o.input = Shapes::ShapeRef.new(shape: GetRecommendationPreferencesRequest)
1025
+ o.output = Shapes::ShapeRef.new(shape: GetRecommendationPreferencesResponse)
1026
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
1027
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1028
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1029
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1030
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1031
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1032
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
1033
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1034
+ end)
1035
+
873
1036
  api.add_operation(:get_recommendation_summaries, Seahorse::Model::Operation.new.tap do |o|
874
1037
  o.name = "GetRecommendationSummaries"
875
1038
  o.http_method = "POST"
@@ -885,6 +1048,22 @@ module Aws::ComputeOptimizer
885
1048
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
886
1049
  end)
887
1050
 
1051
+ api.add_operation(:put_recommendation_preferences, Seahorse::Model::Operation.new.tap do |o|
1052
+ o.name = "PutRecommendationPreferences"
1053
+ o.http_method = "POST"
1054
+ o.http_request_uri = "/"
1055
+ o.input = Shapes::ShapeRef.new(shape: PutRecommendationPreferencesRequest)
1056
+ o.output = Shapes::ShapeRef.new(shape: PutRecommendationPreferencesResponse)
1057
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
1058
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1059
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1060
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1061
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1062
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1063
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
1064
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1065
+ end)
1066
+
888
1067
  api.add_operation(:update_enrollment_status, Seahorse::Model::Operation.new.tap do |o|
889
1068
  o.name = "UpdateEnrollmentStatus"
890
1069
  o.http_method = "POST"