aws-sdk-computeoptimizer 1.3.0 → 1.4.1

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.
@@ -23,9 +23,26 @@ module Aws::ComputeOptimizer
23
23
  AutoScalingGroupRecommendationOptions = Shapes::ListShape.new(name: 'AutoScalingGroupRecommendationOptions')
24
24
  AutoScalingGroupRecommendations = Shapes::ListShape.new(name: 'AutoScalingGroupRecommendations')
25
25
  Code = Shapes::StringShape.new(name: 'Code')
26
+ CreationTimestamp = Shapes::TimestampShape.new(name: 'CreationTimestamp')
26
27
  CurrentInstanceType = Shapes::StringShape.new(name: 'CurrentInstanceType')
28
+ DescribeRecommendationExportJobsRequest = Shapes::StructureShape.new(name: 'DescribeRecommendationExportJobsRequest')
29
+ DescribeRecommendationExportJobsResponse = Shapes::StructureShape.new(name: 'DescribeRecommendationExportJobsResponse')
27
30
  DesiredCapacity = Shapes::IntegerShape.new(name: 'DesiredCapacity')
31
+ DestinationBucket = Shapes::StringShape.new(name: 'DestinationBucket')
32
+ DestinationKey = Shapes::StringShape.new(name: 'DestinationKey')
33
+ DestinationKeyPrefix = Shapes::StringShape.new(name: 'DestinationKeyPrefix')
28
34
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
35
+ ExportAutoScalingGroupRecommendationsRequest = Shapes::StructureShape.new(name: 'ExportAutoScalingGroupRecommendationsRequest')
36
+ ExportAutoScalingGroupRecommendationsResponse = Shapes::StructureShape.new(name: 'ExportAutoScalingGroupRecommendationsResponse')
37
+ ExportDestination = Shapes::StructureShape.new(name: 'ExportDestination')
38
+ ExportEC2InstanceRecommendationsRequest = Shapes::StructureShape.new(name: 'ExportEC2InstanceRecommendationsRequest')
39
+ ExportEC2InstanceRecommendationsResponse = Shapes::StructureShape.new(name: 'ExportEC2InstanceRecommendationsResponse')
40
+ ExportableAutoScalingGroupField = Shapes::StringShape.new(name: 'ExportableAutoScalingGroupField')
41
+ ExportableAutoScalingGroupFields = Shapes::ListShape.new(name: 'ExportableAutoScalingGroupFields')
42
+ ExportableInstanceField = Shapes::StringShape.new(name: 'ExportableInstanceField')
43
+ ExportableInstanceFields = Shapes::ListShape.new(name: 'ExportableInstanceFields')
44
+ FailureReason = Shapes::StringShape.new(name: 'FailureReason')
45
+ FileFormat = Shapes::StringShape.new(name: 'FileFormat')
29
46
  Filter = Shapes::StructureShape.new(name: 'Filter')
30
47
  FilterName = Shapes::StringShape.new(name: 'FilterName')
31
48
  FilterValue = Shapes::StringShape.new(name: 'FilterValue')
@@ -55,12 +72,21 @@ module Aws::ComputeOptimizer
55
72
  InstanceType = Shapes::StringShape.new(name: 'InstanceType')
56
73
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
57
74
  InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException')
75
+ JobFilter = Shapes::StructureShape.new(name: 'JobFilter')
76
+ JobFilterName = Shapes::StringShape.new(name: 'JobFilterName')
77
+ JobFilters = Shapes::ListShape.new(name: 'JobFilters')
78
+ JobId = Shapes::StringShape.new(name: 'JobId')
79
+ JobIds = Shapes::ListShape.new(name: 'JobIds')
80
+ JobStatus = Shapes::StringShape.new(name: 'JobStatus')
58
81
  LastRefreshTimestamp = Shapes::TimestampShape.new(name: 'LastRefreshTimestamp')
82
+ LastUpdatedTimestamp = Shapes::TimestampShape.new(name: 'LastUpdatedTimestamp')
83
+ LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
59
84
  LookBackPeriodInDays = Shapes::FloatShape.new(name: 'LookBackPeriodInDays')
60
85
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
61
86
  MaxSize = Shapes::IntegerShape.new(name: 'MaxSize')
62
87
  MemberAccountsEnrolled = Shapes::BooleanShape.new(name: 'MemberAccountsEnrolled')
63
88
  Message = Shapes::StringShape.new(name: 'Message')
89
+ MetadataKey = Shapes::StringShape.new(name: 'MetadataKey')
64
90
  MetricName = Shapes::StringShape.new(name: 'MetricName')
65
91
  MetricStatistic = Shapes::StringShape.new(name: 'MetricStatistic')
66
92
  MetricValue = Shapes::FloatShape.new(name: 'MetricValue')
@@ -75,6 +101,8 @@ module Aws::ComputeOptimizer
75
101
  ProjectedMetrics = Shapes::ListShape.new(name: 'ProjectedMetrics')
76
102
  ProjectedUtilizationMetrics = Shapes::ListShape.new(name: 'ProjectedUtilizationMetrics')
77
103
  Rank = Shapes::IntegerShape.new(name: 'Rank')
104
+ RecommendationExportJob = Shapes::StructureShape.new(name: 'RecommendationExportJob')
105
+ RecommendationExportJobs = Shapes::ListShape.new(name: 'RecommendationExportJobs')
78
106
  RecommendationOptions = Shapes::ListShape.new(name: 'RecommendationOptions')
79
107
  RecommendationSource = Shapes::StructureShape.new(name: 'RecommendationSource')
80
108
  RecommendationSourceArn = Shapes::StringShape.new(name: 'RecommendationSourceArn')
@@ -86,6 +114,9 @@ module Aws::ComputeOptimizer
86
114
  RecommendedOptionProjectedMetric = Shapes::StructureShape.new(name: 'RecommendedOptionProjectedMetric')
87
115
  RecommendedOptionProjectedMetrics = Shapes::ListShape.new(name: 'RecommendedOptionProjectedMetrics')
88
116
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
117
+ ResourceType = Shapes::StringShape.new(name: 'ResourceType')
118
+ S3Destination = Shapes::StructureShape.new(name: 'S3Destination')
119
+ S3DestinationConfig = Shapes::StructureShape.new(name: 'S3DestinationConfig')
89
120
  ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
90
121
  Status = Shapes::StringShape.new(name: 'Status')
91
122
  StatusReason = Shapes::StringShape.new(name: 'StatusReason')
@@ -134,6 +165,47 @@ module Aws::ComputeOptimizer
134
165
 
135
166
  AutoScalingGroupRecommendations.member = Shapes::ShapeRef.new(shape: AutoScalingGroupRecommendation)
136
167
 
168
+ DescribeRecommendationExportJobsRequest.add_member(:job_ids, Shapes::ShapeRef.new(shape: JobIds, location_name: "jobIds"))
169
+ DescribeRecommendationExportJobsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: JobFilters, location_name: "filters"))
170
+ DescribeRecommendationExportJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
171
+ DescribeRecommendationExportJobsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
172
+ DescribeRecommendationExportJobsRequest.struct_class = Types::DescribeRecommendationExportJobsRequest
173
+
174
+ DescribeRecommendationExportJobsResponse.add_member(:recommendation_export_jobs, Shapes::ShapeRef.new(shape: RecommendationExportJobs, location_name: "recommendationExportJobs"))
175
+ DescribeRecommendationExportJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
176
+ DescribeRecommendationExportJobsResponse.struct_class = Types::DescribeRecommendationExportJobsResponse
177
+
178
+ ExportAutoScalingGroupRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
179
+ ExportAutoScalingGroupRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: Filters, location_name: "filters"))
180
+ ExportAutoScalingGroupRecommendationsRequest.add_member(:fields_to_export, Shapes::ShapeRef.new(shape: ExportableAutoScalingGroupFields, location_name: "fieldsToExport"))
181
+ ExportAutoScalingGroupRecommendationsRequest.add_member(:s3_destination_config, Shapes::ShapeRef.new(shape: S3DestinationConfig, required: true, location_name: "s3DestinationConfig"))
182
+ ExportAutoScalingGroupRecommendationsRequest.add_member(:file_format, Shapes::ShapeRef.new(shape: FileFormat, location_name: "fileFormat"))
183
+ ExportAutoScalingGroupRecommendationsRequest.add_member(:include_member_accounts, Shapes::ShapeRef.new(shape: IncludeMemberAccounts, location_name: "includeMemberAccounts"))
184
+ ExportAutoScalingGroupRecommendationsRequest.struct_class = Types::ExportAutoScalingGroupRecommendationsRequest
185
+
186
+ ExportAutoScalingGroupRecommendationsResponse.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
187
+ ExportAutoScalingGroupRecommendationsResponse.add_member(:s3_destination, Shapes::ShapeRef.new(shape: S3Destination, location_name: "s3Destination"))
188
+ ExportAutoScalingGroupRecommendationsResponse.struct_class = Types::ExportAutoScalingGroupRecommendationsResponse
189
+
190
+ ExportDestination.add_member(:s3, Shapes::ShapeRef.new(shape: S3Destination, location_name: "s3"))
191
+ ExportDestination.struct_class = Types::ExportDestination
192
+
193
+ ExportEC2InstanceRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
194
+ ExportEC2InstanceRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: Filters, location_name: "filters"))
195
+ ExportEC2InstanceRecommendationsRequest.add_member(:fields_to_export, Shapes::ShapeRef.new(shape: ExportableInstanceFields, location_name: "fieldsToExport"))
196
+ ExportEC2InstanceRecommendationsRequest.add_member(:s3_destination_config, Shapes::ShapeRef.new(shape: S3DestinationConfig, required: true, location_name: "s3DestinationConfig"))
197
+ ExportEC2InstanceRecommendationsRequest.add_member(:file_format, Shapes::ShapeRef.new(shape: FileFormat, location_name: "fileFormat"))
198
+ ExportEC2InstanceRecommendationsRequest.add_member(:include_member_accounts, Shapes::ShapeRef.new(shape: IncludeMemberAccounts, location_name: "includeMemberAccounts"))
199
+ ExportEC2InstanceRecommendationsRequest.struct_class = Types::ExportEC2InstanceRecommendationsRequest
200
+
201
+ ExportEC2InstanceRecommendationsResponse.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
202
+ ExportEC2InstanceRecommendationsResponse.add_member(:s3_destination, Shapes::ShapeRef.new(shape: S3Destination, location_name: "s3Destination"))
203
+ ExportEC2InstanceRecommendationsResponse.struct_class = Types::ExportEC2InstanceRecommendationsResponse
204
+
205
+ ExportableAutoScalingGroupFields.member = Shapes::ShapeRef.new(shape: ExportableAutoScalingGroupField)
206
+
207
+ ExportableInstanceFields.member = Shapes::ShapeRef.new(shape: ExportableInstanceField)
208
+
137
209
  Filter.add_member(:name, Shapes::ShapeRef.new(shape: FilterName, location_name: "name"))
138
210
  Filter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValues, location_name: "values"))
139
211
  Filter.struct_class = Types::Filter
@@ -227,6 +299,17 @@ module Aws::ComputeOptimizer
227
299
  InvalidParameterValueException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
228
300
  InvalidParameterValueException.struct_class = Types::InvalidParameterValueException
229
301
 
302
+ JobFilter.add_member(:name, Shapes::ShapeRef.new(shape: JobFilterName, location_name: "name"))
303
+ JobFilter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValues, location_name: "values"))
304
+ JobFilter.struct_class = Types::JobFilter
305
+
306
+ JobFilters.member = Shapes::ShapeRef.new(shape: JobFilter)
307
+
308
+ JobIds.member = Shapes::ShapeRef.new(shape: JobId)
309
+
310
+ LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
311
+ LimitExceededException.struct_class = Types::LimitExceededException
312
+
230
313
  MetricValues.member = Shapes::ShapeRef.new(shape: MetricValue)
231
314
 
232
315
  MissingAuthenticationToken.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
@@ -244,6 +327,17 @@ module Aws::ComputeOptimizer
244
327
 
245
328
  ProjectedUtilizationMetrics.member = Shapes::ShapeRef.new(shape: UtilizationMetric)
246
329
 
330
+ RecommendationExportJob.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
331
+ RecommendationExportJob.add_member(:destination, Shapes::ShapeRef.new(shape: ExportDestination, location_name: "destination"))
332
+ RecommendationExportJob.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "resourceType"))
333
+ RecommendationExportJob.add_member(:status, Shapes::ShapeRef.new(shape: JobStatus, location_name: "status"))
334
+ RecommendationExportJob.add_member(:creation_timestamp, Shapes::ShapeRef.new(shape: CreationTimestamp, location_name: "creationTimestamp"))
335
+ RecommendationExportJob.add_member(:last_updated_timestamp, Shapes::ShapeRef.new(shape: LastUpdatedTimestamp, location_name: "lastUpdatedTimestamp"))
336
+ RecommendationExportJob.add_member(:failure_reason, Shapes::ShapeRef.new(shape: FailureReason, location_name: "failureReason"))
337
+ RecommendationExportJob.struct_class = Types::RecommendationExportJob
338
+
339
+ RecommendationExportJobs.member = Shapes::ShapeRef.new(shape: RecommendationExportJob)
340
+
247
341
  RecommendationOptions.member = Shapes::ShapeRef.new(shape: InstanceRecommendationOption)
248
342
 
249
343
  RecommendationSource.add_member(:recommendation_source_arn, Shapes::ShapeRef.new(shape: RecommendationSourceArn, location_name: "recommendationSourceArn"))
@@ -269,6 +363,15 @@ module Aws::ComputeOptimizer
269
363
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
270
364
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
271
365
 
366
+ S3Destination.add_member(:bucket, Shapes::ShapeRef.new(shape: DestinationBucket, location_name: "bucket"))
367
+ S3Destination.add_member(:key, Shapes::ShapeRef.new(shape: DestinationKey, location_name: "key"))
368
+ S3Destination.add_member(:metadata_key, Shapes::ShapeRef.new(shape: MetadataKey, location_name: "metadataKey"))
369
+ S3Destination.struct_class = Types::S3Destination
370
+
371
+ S3DestinationConfig.add_member(:bucket, Shapes::ShapeRef.new(shape: DestinationBucket, location_name: "bucket"))
372
+ S3DestinationConfig.add_member(:key_prefix, Shapes::ShapeRef.new(shape: DestinationKeyPrefix, location_name: "keyPrefix"))
373
+ S3DestinationConfig.struct_class = Types::S3DestinationConfig
374
+
272
375
  ServiceUnavailableException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
273
376
  ServiceUnavailableException.struct_class = Types::ServiceUnavailableException
274
377
 
@@ -317,6 +420,54 @@ module Aws::ComputeOptimizer
317
420
  "uid" => "compute-optimizer-2019-11-01",
318
421
  }
319
422
 
423
+ api.add_operation(:describe_recommendation_export_jobs, Seahorse::Model::Operation.new.tap do |o|
424
+ o.name = "DescribeRecommendationExportJobs"
425
+ o.http_method = "POST"
426
+ o.http_request_uri = "/"
427
+ o.input = Shapes::ShapeRef.new(shape: DescribeRecommendationExportJobsRequest)
428
+ o.output = Shapes::ShapeRef.new(shape: DescribeRecommendationExportJobsResponse)
429
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
430
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
431
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
432
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
433
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
434
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
435
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
436
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
437
+ end)
438
+
439
+ api.add_operation(:export_auto_scaling_group_recommendations, Seahorse::Model::Operation.new.tap do |o|
440
+ o.name = "ExportAutoScalingGroupRecommendations"
441
+ o.http_method = "POST"
442
+ o.http_request_uri = "/"
443
+ o.input = Shapes::ShapeRef.new(shape: ExportAutoScalingGroupRecommendationsRequest)
444
+ o.output = Shapes::ShapeRef.new(shape: ExportAutoScalingGroupRecommendationsResponse)
445
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
446
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
447
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
448
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
449
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
450
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
451
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
452
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
453
+ end)
454
+
455
+ api.add_operation(:export_ec2_instance_recommendations, Seahorse::Model::Operation.new.tap do |o|
456
+ o.name = "ExportEC2InstanceRecommendations"
457
+ o.http_method = "POST"
458
+ o.http_request_uri = "/"
459
+ o.input = Shapes::ShapeRef.new(shape: ExportEC2InstanceRecommendationsRequest)
460
+ o.output = Shapes::ShapeRef.new(shape: ExportEC2InstanceRecommendationsResponse)
461
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
462
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
463
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
464
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
465
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
466
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
467
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
468
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
469
+ end)
470
+
320
471
  api.add_operation(:get_auto_scaling_group_recommendations, Seahorse::Model::Operation.new.tap do |o|
321
472
  o.name = "GetAutoScalingGroupRecommendations"
322
473
  o.http_method = "POST"
@@ -28,6 +28,7 @@ module Aws::ComputeOptimizer
28
28
  # * {AccessDeniedException}
29
29
  # * {InternalServerException}
30
30
  # * {InvalidParameterValueException}
31
+ # * {LimitExceededException}
31
32
  # * {MissingAuthenticationToken}
32
33
  # * {OptInRequiredException}
33
34
  # * {ResourceNotFoundException}
@@ -85,6 +86,21 @@ module Aws::ComputeOptimizer
85
86
  end
86
87
  end
87
88
 
89
+ class LimitExceededException < ServiceError
90
+
91
+ # @param [Seahorse::Client::RequestContext] context
92
+ # @param [String] message
93
+ # @param [Aws::ComputeOptimizer::Types::LimitExceededException] data
94
+ def initialize(context, message, data = Aws::EmptyStructure.new)
95
+ super(context, message, data)
96
+ end
97
+
98
+ # @return [String]
99
+ def message
100
+ @message || @data[:message]
101
+ end
102
+ end
103
+
88
104
  class MissingAuthenticationToken < ServiceError
89
105
 
90
106
  # @param [Seahorse::Client::RequestContext] context
@@ -166,6 +166,332 @@ module Aws::ComputeOptimizer
166
166
  include Aws::Structure
167
167
  end
168
168
 
169
+ # @note When making an API call, you may pass DescribeRecommendationExportJobsRequest
170
+ # data as a hash:
171
+ #
172
+ # {
173
+ # job_ids: ["JobId"],
174
+ # filters: [
175
+ # {
176
+ # name: "ResourceType", # accepts ResourceType, JobStatus
177
+ # values: ["FilterValue"],
178
+ # },
179
+ # ],
180
+ # next_token: "NextToken",
181
+ # max_results: 1,
182
+ # }
183
+ #
184
+ # @!attribute [rw] job_ids
185
+ # The identification numbers of the export jobs to return.
186
+ #
187
+ # An export job ID is returned when you create an export using the
188
+ # `ExportAutoScalingGroupRecommendations` or
189
+ # `ExportEC2InstanceRecommendations` actions.
190
+ #
191
+ # All export jobs created in the last seven days are returned if this
192
+ # parameter is omitted.
193
+ # @return [Array<String>]
194
+ #
195
+ # @!attribute [rw] filters
196
+ # An array of objects that describe a filter to return a more specific
197
+ # list of export jobs.
198
+ # @return [Array<Types::JobFilter>]
199
+ #
200
+ # @!attribute [rw] next_token
201
+ # The token to advance to the next page of export jobs.
202
+ # @return [String]
203
+ #
204
+ # @!attribute [rw] max_results
205
+ # The maximum number of export jobs to return with a single request.
206
+ #
207
+ # To retrieve the remaining results, make another request with the
208
+ # returned `NextToken` value.
209
+ # @return [Integer]
210
+ #
211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/DescribeRecommendationExportJobsRequest AWS API Documentation
212
+ #
213
+ class DescribeRecommendationExportJobsRequest < Struct.new(
214
+ :job_ids,
215
+ :filters,
216
+ :next_token,
217
+ :max_results)
218
+ include Aws::Structure
219
+ end
220
+
221
+ # @!attribute [rw] recommendation_export_jobs
222
+ # An array of objects that describe recommendation export jobs.
223
+ # @return [Array<Types::RecommendationExportJob>]
224
+ #
225
+ # @!attribute [rw] next_token
226
+ # The token to use to advance to the next page of export jobs.
227
+ #
228
+ # This value is null when there are no more pages of export jobs to
229
+ # return.
230
+ # @return [String]
231
+ #
232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/DescribeRecommendationExportJobsResponse AWS API Documentation
233
+ #
234
+ class DescribeRecommendationExportJobsResponse < Struct.new(
235
+ :recommendation_export_jobs,
236
+ :next_token)
237
+ include Aws::Structure
238
+ end
239
+
240
+ # @note When making an API call, you may pass ExportAutoScalingGroupRecommendationsRequest
241
+ # data as a hash:
242
+ #
243
+ # {
244
+ # account_ids: ["AccountId"],
245
+ # filters: [
246
+ # {
247
+ # name: "Finding", # accepts Finding, RecommendationSourceType
248
+ # values: ["FilterValue"],
249
+ # },
250
+ # ],
251
+ # fields_to_export: ["AccountId"], # accepts AccountId, AutoScalingGroupArn, AutoScalingGroupName, Finding, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, LookbackPeriodInDays, CurrentConfigurationInstanceType, CurrentConfigurationDesiredCapacity, CurrentConfigurationMinSize, CurrentConfigurationMaxSize, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsConfigurationInstanceType, RecommendationOptionsConfigurationDesiredCapacity, RecommendationOptionsConfigurationMinSize, RecommendationOptionsConfigurationMaxSize, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, LastRefreshTimestamp
252
+ # s3_destination_config: { # required
253
+ # bucket: "DestinationBucket",
254
+ # key_prefix: "DestinationKeyPrefix",
255
+ # },
256
+ # file_format: "Csv", # accepts Csv
257
+ # include_member_accounts: false,
258
+ # }
259
+ #
260
+ # @!attribute [rw] account_ids
261
+ # The IDs of the AWS accounts for which to export Auto Scaling group
262
+ # recommendations.
263
+ #
264
+ # If your account is the master account of an organization, use this
265
+ # parameter to specify the member accounts for which you want to
266
+ # export recommendations.
267
+ #
268
+ # This parameter cannot be specified together with the include member
269
+ # accounts parameter. The parameters are mutually exclusive.
270
+ #
271
+ # Recommendations for member accounts are not included in the export
272
+ # if this parameter, or the include member accounts parameter, is
273
+ # omitted.
274
+ #
275
+ # You can specify multiple account IDs per request.
276
+ # @return [Array<String>]
277
+ #
278
+ # @!attribute [rw] filters
279
+ # An array of objects that describe a filter to export a more specific
280
+ # set of Auto Scaling group recommendations.
281
+ # @return [Array<Types::Filter>]
282
+ #
283
+ # @!attribute [rw] fields_to_export
284
+ # The recommendations data to include in the export file.
285
+ # @return [Array<String>]
286
+ #
287
+ # @!attribute [rw] s3_destination_config
288
+ # An object to specify the destination Amazon Simple Storage Service
289
+ # (Amazon S3) bucket name and key prefix for the export job.
290
+ #
291
+ # You must create the destination Amazon S3 bucket for your
292
+ # recommendations export before you create the export job. Compute
293
+ # Optimizer does not create the S3 bucket for you. After you create
294
+ # the S3 bucket, ensure that it has the required permission policy to
295
+ # allow Compute Optimizer to write the export file to it. If you plan
296
+ # to specify an object prefix when you create the export job, you must
297
+ # include the object prefix in the policy that you add to the S3
298
+ # bucket. For more information, see [Amazon S3 Bucket Policy for
299
+ # Compute Optimizer][1] in the *Compute Optimizer user guide*.
300
+ #
301
+ #
302
+ #
303
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/create-s3-bucket-policy-for-compute-optimizer.html
304
+ # @return [Types::S3DestinationConfig]
305
+ #
306
+ # @!attribute [rw] file_format
307
+ # The format of the export file.
308
+ #
309
+ # The only export file format currently supported is `Csv`.
310
+ # @return [String]
311
+ #
312
+ # @!attribute [rw] include_member_accounts
313
+ # Indicates whether to include recommendations for resources in all
314
+ # member accounts of the organization if your account is the master
315
+ # account of an organization.
316
+ #
317
+ # The member accounts must also be opted in to Compute Optimizer.
318
+ #
319
+ # Recommendations for member accounts of the organization are not
320
+ # included in the export file if this parameter is omitted.
321
+ #
322
+ # This parameter cannot be specified together with the account IDs
323
+ # parameter. The parameters are mutually exclusive.
324
+ #
325
+ # Recommendations for member accounts are not included in the export
326
+ # if this parameter, or the account IDs parameter, is omitted.
327
+ # @return [Boolean]
328
+ #
329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ExportAutoScalingGroupRecommendationsRequest AWS API Documentation
330
+ #
331
+ class ExportAutoScalingGroupRecommendationsRequest < Struct.new(
332
+ :account_ids,
333
+ :filters,
334
+ :fields_to_export,
335
+ :s3_destination_config,
336
+ :file_format,
337
+ :include_member_accounts)
338
+ include Aws::Structure
339
+ end
340
+
341
+ # @!attribute [rw] job_id
342
+ # The identification number of the export job.
343
+ #
344
+ # Use the `DescribeRecommendationExportJobs` action, and specify the
345
+ # job ID to view the status of an export job.
346
+ # @return [String]
347
+ #
348
+ # @!attribute [rw] s3_destination
349
+ # An object that describes the destination Amazon S3 bucket of a
350
+ # recommendations export file.
351
+ # @return [Types::S3Destination]
352
+ #
353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ExportAutoScalingGroupRecommendationsResponse AWS API Documentation
354
+ #
355
+ class ExportAutoScalingGroupRecommendationsResponse < Struct.new(
356
+ :job_id,
357
+ :s3_destination)
358
+ include Aws::Structure
359
+ end
360
+
361
+ # Describes the destination of the recommendations export and metadata
362
+ # files.
363
+ #
364
+ # @!attribute [rw] s3
365
+ # An object that describes the destination Amazon Simple Storage
366
+ # Service (Amazon S3) bucket name and object keys of a recommendations
367
+ # export file, and its associated metadata file.
368
+ # @return [Types::S3Destination]
369
+ #
370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ExportDestination AWS API Documentation
371
+ #
372
+ class ExportDestination < Struct.new(
373
+ :s3)
374
+ include Aws::Structure
375
+ end
376
+
377
+ # @note When making an API call, you may pass ExportEC2InstanceRecommendationsRequest
378
+ # data as a hash:
379
+ #
380
+ # {
381
+ # account_ids: ["AccountId"],
382
+ # filters: [
383
+ # {
384
+ # name: "Finding", # accepts Finding, RecommendationSourceType
385
+ # values: ["FilterValue"],
386
+ # },
387
+ # ],
388
+ # fields_to_export: ["AccountId"], # accepts AccountId, InstanceArn, InstanceName, Finding, LookbackPeriodInDays, CurrentInstanceType, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsInstanceType, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationsSourcesRecommendationSourceArn, RecommendationsSourcesRecommendationSourceType, LastRefreshTimestamp
389
+ # s3_destination_config: { # required
390
+ # bucket: "DestinationBucket",
391
+ # key_prefix: "DestinationKeyPrefix",
392
+ # },
393
+ # file_format: "Csv", # accepts Csv
394
+ # include_member_accounts: false,
395
+ # }
396
+ #
397
+ # @!attribute [rw] account_ids
398
+ # The IDs of the AWS accounts for which to export instance
399
+ # recommendations.
400
+ #
401
+ # If your account is the master account of an organization, use this
402
+ # parameter to specify the member accounts for which you want to
403
+ # export recommendations.
404
+ #
405
+ # This parameter cannot be specified together with the include member
406
+ # accounts parameter. The parameters are mutually exclusive.
407
+ #
408
+ # Recommendations for member accounts are not included in the export
409
+ # if this parameter, or the include member accounts parameter, is
410
+ # omitted.
411
+ #
412
+ # You can specify multiple account IDs per request.
413
+ # @return [Array<String>]
414
+ #
415
+ # @!attribute [rw] filters
416
+ # An array of objects that describe a filter to export a more specific
417
+ # set of instance recommendations.
418
+ # @return [Array<Types::Filter>]
419
+ #
420
+ # @!attribute [rw] fields_to_export
421
+ # The recommendations data to include in the export file.
422
+ # @return [Array<String>]
423
+ #
424
+ # @!attribute [rw] s3_destination_config
425
+ # An object to specify the destination Amazon Simple Storage Service
426
+ # (Amazon S3) bucket name and key prefix for the export job.
427
+ #
428
+ # You must create the destination Amazon S3 bucket for your
429
+ # recommendations export before you create the export job. Compute
430
+ # Optimizer does not create the S3 bucket for you. After you create
431
+ # the S3 bucket, ensure that it has the required permission policy to
432
+ # allow Compute Optimizer to write the export file to it. If you plan
433
+ # to specify an object prefix when you create the export job, you must
434
+ # include the object prefix in the policy that you add to the S3
435
+ # bucket. For more information, see [Amazon S3 Bucket Policy for
436
+ # Compute Optimizer][1] in the *Compute Optimizer user guide*.
437
+ #
438
+ #
439
+ #
440
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/create-s3-bucket-policy-for-compute-optimizer.html
441
+ # @return [Types::S3DestinationConfig]
442
+ #
443
+ # @!attribute [rw] file_format
444
+ # The format of the export file.
445
+ #
446
+ # The only export file format currently supported is `Csv`.
447
+ # @return [String]
448
+ #
449
+ # @!attribute [rw] include_member_accounts
450
+ # Indicates whether to include recommendations for resources in all
451
+ # member accounts of the organization if your account is the master
452
+ # account of an organization.
453
+ #
454
+ # The member accounts must also be opted in to Compute Optimizer.
455
+ #
456
+ # Recommendations for member accounts of the organization are not
457
+ # included in the export file if this parameter is omitted.
458
+ #
459
+ # Recommendations for member accounts are not included in the export
460
+ # if this parameter, or the account IDs parameter, is omitted.
461
+ # @return [Boolean]
462
+ #
463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ExportEC2InstanceRecommendationsRequest AWS API Documentation
464
+ #
465
+ class ExportEC2InstanceRecommendationsRequest < Struct.new(
466
+ :account_ids,
467
+ :filters,
468
+ :fields_to_export,
469
+ :s3_destination_config,
470
+ :file_format,
471
+ :include_member_accounts)
472
+ include Aws::Structure
473
+ end
474
+
475
+ # @!attribute [rw] job_id
476
+ # The identification number of the export job.
477
+ #
478
+ # Use the `DescribeRecommendationExportJobs` action, and specify the
479
+ # job ID to view the status of an export job.
480
+ # @return [String]
481
+ #
482
+ # @!attribute [rw] s3_destination
483
+ # An object that describes the destination Amazon S3 bucket of a
484
+ # recommendations export file.
485
+ # @return [Types::S3Destination]
486
+ #
487
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ExportEC2InstanceRecommendationsResponse AWS API Documentation
488
+ #
489
+ class ExportEC2InstanceRecommendationsResponse < Struct.new(
490
+ :job_id,
491
+ :s3_destination)
492
+ include Aws::Structure
493
+ end
494
+
169
495
  # Describes a filter that returns a more specific list of
170
496
  # recommendations.
171
497
  #
@@ -180,27 +506,27 @@ module Aws::ComputeOptimizer
180
506
  # @!attribute [rw] name
181
507
  # The name of the filter.
182
508
  #
183
- # Specify `Finding` to filter the results to a specific findings
184
- # classification.
509
+ # Specify `Finding` to return recommendations with a specific findings
510
+ # classification (e.g., `Overprovisioned`).
185
511
  #
186
- # Specify `RecommendationSourceType` to filter the results to a
187
- # specific resource type.
512
+ # Specify `RecommendationSourceType` to return recommendations of a
513
+ # specific resource type (e.g., `AutoScalingGroup`).
188
514
  # @return [String]
189
515
  #
190
516
  # @!attribute [rw] values
191
517
  # The value of the filter.
192
518
  #
193
- # If you specify the `name` parameter as `Finding`, and you're
519
+ # If you specify the `name` parameter as `Finding`, and you request
194
520
  # recommendations for an *instance*, then the valid values are
195
521
  # `Underprovisioned`, `Overprovisioned`, `NotOptimized`, or
196
522
  # `Optimized`.
197
523
  #
198
- # If you specify the `name` parameter as `Finding`, and you're
524
+ # If you specify the `name` parameter as `Finding`, and you request
199
525
  # recommendations for an *Auto Scaling group*, then the valid values
200
526
  # are `Optimized`, or `NotOptimized`.
201
527
  #
202
528
  # If you specify the `name` parameter as `RecommendationSourceType`,
203
- # then the valid values are `EC2Instance`, or `AutoScalingGroup`.
529
+ # then the valid values are `Ec2Instance`, or `AutoScalingGroup`.
204
530
  # @return [Array<String>]
205
531
  #
206
532
  # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/Filter AWS API Documentation
@@ -228,9 +554,13 @@ module Aws::ComputeOptimizer
228
554
  # }
229
555
  #
230
556
  # @!attribute [rw] account_ids
231
- # The AWS account IDs for which to return Auto Scaling group
557
+ # The IDs of the AWS accounts for which to return Auto Scaling group
232
558
  # recommendations.
233
559
  #
560
+ # If your account is the master account of an organization, use this
561
+ # parameter to specify the member accounts for which you want to
562
+ # return Auto Scaling group recommendations.
563
+ #
234
564
  # Only one account ID can be specified per request.
235
565
  # @return [Array<String>]
236
566
  #
@@ -246,9 +576,9 @@ module Aws::ComputeOptimizer
246
576
  #
247
577
  # @!attribute [rw] max_results
248
578
  # The maximum number of Auto Scaling group recommendations to return
249
- # with a single call.
579
+ # with a single request.
250
580
  #
251
- # To retrieve the remaining results, make another call with the
581
+ # To retrieve the remaining results, make another request with the
252
582
  # returned `NextToken` value.
253
583
  # @return [Integer]
254
584
  #
@@ -324,9 +654,9 @@ module Aws::ComputeOptimizer
324
654
  #
325
655
  # @!attribute [rw] max_results
326
656
  # The maximum number of instance recommendations to return with a
327
- # single call.
657
+ # single request.
328
658
  #
329
- # To retrieve the remaining results, make another call with the
659
+ # To retrieve the remaining results, make another request with the
330
660
  # returned `NextToken` value.
331
661
  # @return [Integer]
332
662
  #
@@ -336,7 +666,12 @@ module Aws::ComputeOptimizer
336
666
  # @return [Array<Types::Filter>]
337
667
  #
338
668
  # @!attribute [rw] account_ids
339
- # The AWS account IDs for which to return instance recommendations.
669
+ # The IDs of the AWS accounts for which to return instance
670
+ # recommendations.
671
+ #
672
+ # If your account is the master account of an organization, use this
673
+ # parameter to specify the member accounts for which you want to
674
+ # return instance recommendations.
340
675
  #
341
676
  # Only one account ID can be specified per request.
342
677
  # @return [Array<String>]
@@ -503,7 +838,12 @@ module Aws::ComputeOptimizer
503
838
  # }
504
839
  #
505
840
  # @!attribute [rw] account_ids
506
- # The AWS account IDs for which to return recommendation summaries.
841
+ # The IDs of the AWS accounts for which to return recommendation
842
+ # summaries.
843
+ #
844
+ # If your account is the master account of an organization, use this
845
+ # parameter to specify the member accounts for which you want to
846
+ # return recommendation summaries.
507
847
  #
508
848
  # Only one account ID can be specified per request.
509
849
  # @return [Array<String>]
@@ -514,9 +854,9 @@ module Aws::ComputeOptimizer
514
854
  #
515
855
  # @!attribute [rw] max_results
516
856
  # The maximum number of recommendation summaries to return with a
517
- # single call.
857
+ # single request.
518
858
  #
519
- # To retrieve the remaining results, make another call with the
859
+ # To retrieve the remaining results, make another request with the
520
860
  # returned `NextToken` value.
521
861
  # @return [Integer]
522
862
  #
@@ -556,7 +896,7 @@ module Aws::ComputeOptimizer
556
896
  # @return [String]
557
897
  #
558
898
  # @!attribute [rw] account_id
559
- # The AWS account ID of the instance recommendation.
899
+ # The AWS account ID of the instance.
560
900
  # @return [String]
561
901
  #
562
902
  # @!attribute [rw] instance_name
@@ -677,8 +1017,7 @@ module Aws::ComputeOptimizer
677
1017
  include Aws::Structure
678
1018
  end
679
1019
 
680
- # The request processing has failed because of an unknown error,
681
- # exception, or failure.
1020
+ # An internal error has occurred. Try your call again.
682
1021
  #
683
1022
  # @!attribute [rw] message
684
1023
  # @return [String]
@@ -702,6 +1041,60 @@ module Aws::ComputeOptimizer
702
1041
  include Aws::Structure
703
1042
  end
704
1043
 
1044
+ # Describes a filter that returns a more specific list of recommendation
1045
+ # export jobs.
1046
+ #
1047
+ # This filter is used with the `DescribeRecommendationExportJobs`
1048
+ # action.
1049
+ #
1050
+ # @note When making an API call, you may pass JobFilter
1051
+ # data as a hash:
1052
+ #
1053
+ # {
1054
+ # name: "ResourceType", # accepts ResourceType, JobStatus
1055
+ # values: ["FilterValue"],
1056
+ # }
1057
+ #
1058
+ # @!attribute [rw] name
1059
+ # The name of the filter.
1060
+ #
1061
+ # Specify `ResourceType` to return export jobs of a specific resource
1062
+ # type (e.g., `Ec2Instance`).
1063
+ #
1064
+ # Specify `JobStatus` to return export jobs with a specific status
1065
+ # (e.g, `Complete`).
1066
+ # @return [String]
1067
+ #
1068
+ # @!attribute [rw] values
1069
+ # The value of the filter.
1070
+ #
1071
+ # If you specify the `name` parameter as `ResourceType`, the valid
1072
+ # values are `Ec2Instance` or `AutoScalingGroup`.
1073
+ #
1074
+ # If you specify the `name` parameter as `JobStatus`, the valid values
1075
+ # are `Queued`, `InProgress`, `Complete`, or `Failed`.
1076
+ # @return [Array<String>]
1077
+ #
1078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/JobFilter AWS API Documentation
1079
+ #
1080
+ class JobFilter < Struct.new(
1081
+ :name,
1082
+ :values)
1083
+ include Aws::Structure
1084
+ end
1085
+
1086
+ # The request exceeds a limit of the service.
1087
+ #
1088
+ # @!attribute [rw] message
1089
+ # @return [String]
1090
+ #
1091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LimitExceededException AWS API Documentation
1092
+ #
1093
+ class LimitExceededException < Struct.new(
1094
+ :message)
1095
+ include Aws::Structure
1096
+ end
1097
+
705
1098
  # The request must contain either a valid (registered) AWS access key ID
706
1099
  # or X.509 certificate.
707
1100
  #
@@ -715,7 +1108,7 @@ module Aws::ComputeOptimizer
715
1108
  include Aws::Structure
716
1109
  end
717
1110
 
718
- # You must opt in to the service to perform this action.
1111
+ # The account is not opted in to AWS Compute Optimizer.
719
1112
  #
720
1113
  # @!attribute [rw] message
721
1114
  # @return [String]
@@ -761,6 +1154,56 @@ module Aws::ComputeOptimizer
761
1154
  include Aws::Structure
762
1155
  end
763
1156
 
1157
+ # Describes a recommendation export job.
1158
+ #
1159
+ # Use the `DescribeRecommendationExportJobs` action to view your
1160
+ # recommendation export jobs.
1161
+ #
1162
+ # Use the `ExportAutoScalingGroupRecommendations` or
1163
+ # `ExportEC2InstanceRecommendations` actions to request an export of
1164
+ # your recommendations.
1165
+ #
1166
+ # @!attribute [rw] job_id
1167
+ # The identification number of the export job.
1168
+ # @return [String]
1169
+ #
1170
+ # @!attribute [rw] destination
1171
+ # An object that describes the destination of the export file.
1172
+ # @return [Types::ExportDestination]
1173
+ #
1174
+ # @!attribute [rw] resource_type
1175
+ # The resource type of the exported recommendations.
1176
+ # @return [String]
1177
+ #
1178
+ # @!attribute [rw] status
1179
+ # The status of the export job.
1180
+ # @return [String]
1181
+ #
1182
+ # @!attribute [rw] creation_timestamp
1183
+ # The timestamp of when the export job was created.
1184
+ # @return [Time]
1185
+ #
1186
+ # @!attribute [rw] last_updated_timestamp
1187
+ # The timestamp of when the export job was last updated.
1188
+ # @return [Time]
1189
+ #
1190
+ # @!attribute [rw] failure_reason
1191
+ # The reason for an export job failure.
1192
+ # @return [String]
1193
+ #
1194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/RecommendationExportJob AWS API Documentation
1195
+ #
1196
+ class RecommendationExportJob < Struct.new(
1197
+ :job_id,
1198
+ :destination,
1199
+ :resource_type,
1200
+ :status,
1201
+ :creation_timestamp,
1202
+ :last_updated_timestamp,
1203
+ :failure_reason)
1204
+ include Aws::Structure
1205
+ end
1206
+
764
1207
  # Describes the source of a recommendation, such as an Amazon EC2
765
1208
  # instance or Auto Scaling group.
766
1209
  #
@@ -833,7 +1276,7 @@ module Aws::ComputeOptimizer
833
1276
  include Aws::Structure
834
1277
  end
835
1278
 
836
- # The specified resource was not found.
1279
+ # A resource that is required for the action doesn't exist.
837
1280
  #
838
1281
  # @!attribute [rw] message
839
1282
  # @return [String]
@@ -845,6 +1288,80 @@ module Aws::ComputeOptimizer
845
1288
  include Aws::Structure
846
1289
  end
847
1290
 
1291
+ # Describes the destination Amazon Simple Storage Service (Amazon S3)
1292
+ # bucket name and object keys of a recommendations export file, and its
1293
+ # associated metadata file.
1294
+ #
1295
+ # @!attribute [rw] bucket
1296
+ # The name of the Amazon S3 bucket used as the destination of an
1297
+ # export file.
1298
+ # @return [String]
1299
+ #
1300
+ # @!attribute [rw] key
1301
+ # The Amazon S3 bucket key of an export file.
1302
+ #
1303
+ # The key uniquely identifies the object, or export file, in the S3
1304
+ # bucket.
1305
+ # @return [String]
1306
+ #
1307
+ # @!attribute [rw] metadata_key
1308
+ # The Amazon S3 bucket key of a metadata file.
1309
+ #
1310
+ # The key uniquely identifies the object, or metadata file, in the S3
1311
+ # bucket.
1312
+ # @return [String]
1313
+ #
1314
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/S3Destination AWS API Documentation
1315
+ #
1316
+ class S3Destination < Struct.new(
1317
+ :bucket,
1318
+ :key,
1319
+ :metadata_key)
1320
+ include Aws::Structure
1321
+ end
1322
+
1323
+ # Describes the destination Amazon Simple Storage Service (Amazon S3)
1324
+ # bucket name and key prefix for a recommendations export job.
1325
+ #
1326
+ # You must create the destination Amazon S3 bucket for your
1327
+ # recommendations export before you create the export job. Compute
1328
+ # Optimizer does not create the S3 bucket for you. After you create the
1329
+ # S3 bucket, ensure that it has the required permission policy to allow
1330
+ # Compute Optimizer to write the export file to it. If you plan to
1331
+ # specify an object prefix when you create the export job, you must
1332
+ # include the object prefix in the policy that you add to the S3 bucket.
1333
+ # For more information, see [Amazon S3 Bucket Policy for Compute
1334
+ # Optimizer][1] in the *Compute Optimizer user guide*.
1335
+ #
1336
+ #
1337
+ #
1338
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/create-s3-bucket-policy-for-compute-optimizer.html
1339
+ #
1340
+ # @note When making an API call, you may pass S3DestinationConfig
1341
+ # data as a hash:
1342
+ #
1343
+ # {
1344
+ # bucket: "DestinationBucket",
1345
+ # key_prefix: "DestinationKeyPrefix",
1346
+ # }
1347
+ #
1348
+ # @!attribute [rw] bucket
1349
+ # The name of the Amazon S3 bucket to use as the destination for an
1350
+ # export job.
1351
+ # @return [String]
1352
+ #
1353
+ # @!attribute [rw] key_prefix
1354
+ # The Amazon S3 bucket prefix for an export job.
1355
+ # @return [String]
1356
+ #
1357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/S3DestinationConfig AWS API Documentation
1358
+ #
1359
+ class S3DestinationConfig < Struct.new(
1360
+ :bucket,
1361
+ :key_prefix)
1362
+ include Aws::Structure
1363
+ end
1364
+
848
1365
  # The request has failed due to a temporary failure of the server.
849
1366
  #
850
1367
  # @!attribute [rw] message
@@ -875,7 +1392,7 @@ module Aws::ComputeOptimizer
875
1392
  include Aws::Structure
876
1393
  end
877
1394
 
878
- # The limit on the number of requests per second was exceeded.
1395
+ # The request was denied due to request throttling.
879
1396
  #
880
1397
  # @!attribute [rw] message
881
1398
  # @return [String]
@@ -903,8 +1420,8 @@ module Aws::ComputeOptimizer
903
1420
  # @return [String]
904
1421
  #
905
1422
  # @!attribute [rw] include_member_accounts
906
- # Indicates whether to enroll member accounts within the organization,
907
- # if the account is a master account of an organization.
1423
+ # Indicates whether to enroll member accounts of the organization if
1424
+ # the your account is the master account of an organization.
908
1425
  # @return [Boolean]
909
1426
  #
910
1427
  # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/UpdateEnrollmentStatusRequest AWS API Documentation