@aws-sdk/client-cost-explorer 3.696.0 → 3.699.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.
Files changed (28) hide show
  1. package/README.md +24 -0
  2. package/dist-cjs/index.js +323 -37
  3. package/dist-es/CostExplorer.js +6 -0
  4. package/dist-es/commands/GetCommitmentPurchaseAnalysisCommand.js +22 -0
  5. package/dist-es/commands/ListCommitmentPurchaseAnalysesCommand.js +22 -0
  6. package/dist-es/commands/StartCommitmentPurchaseAnalysisCommand.js +22 -0
  7. package/dist-es/commands/index.js +3 -0
  8. package/dist-es/models/models_0.js +54 -25
  9. package/dist-es/protocols/Aws_json1_1.js +206 -5
  10. package/dist-types/CostExplorer.d.ts +22 -0
  11. package/dist-types/CostExplorerClient.d.ts +5 -2
  12. package/dist-types/commands/GetAnomaliesCommand.d.ts +4 -1
  13. package/dist-types/commands/GetCommitmentPurchaseAnalysisCommand.d.ts +145 -0
  14. package/dist-types/commands/ListCommitmentPurchaseAnalysesCommand.d.ts +120 -0
  15. package/dist-types/commands/StartCommitmentPurchaseAnalysisCommand.d.ts +112 -0
  16. package/dist-types/commands/StartSavingsPlansPurchaseRecommendationGenerationCommand.d.ts +1 -1
  17. package/dist-types/commands/index.d.ts +3 -0
  18. package/dist-types/models/models_0.d.ts +597 -122
  19. package/dist-types/protocols/Aws_json1_1.d.ts +27 -0
  20. package/dist-types/ts3.4/CostExplorer.d.ts +52 -0
  21. package/dist-types/ts3.4/CostExplorerClient.d.ts +18 -0
  22. package/dist-types/ts3.4/commands/GetCommitmentPurchaseAnalysisCommand.d.ts +51 -0
  23. package/dist-types/ts3.4/commands/ListCommitmentPurchaseAnalysesCommand.d.ts +51 -0
  24. package/dist-types/ts3.4/commands/StartCommitmentPurchaseAnalysisCommand.d.ts +51 -0
  25. package/dist-types/ts3.4/commands/index.d.ts +3 -0
  26. package/dist-types/ts3.4/models/models_0.d.ts +170 -41
  27. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +36 -0
  28. package/package.json +4 -4
@@ -12,6 +12,418 @@ export declare const AccountScope: {
12
12
  * @public
13
13
  */
14
14
  export type AccountScope = (typeof AccountScope)[keyof typeof AccountScope];
15
+ /**
16
+ * <p>Contains the hourly metrics for the given recommendation over the lookback period.
17
+ * </p>
18
+ * @public
19
+ */
20
+ export interface RecommendationDetailHourlyMetrics {
21
+ /**
22
+ * <p>The period of time that you want the usage and costs for.</p>
23
+ * @public
24
+ */
25
+ StartTime?: string | undefined;
26
+ /**
27
+ * <p>The remaining On-Demand cost estimated to not be covered by the recommended Savings
28
+ * Plan, over the length of the lookback period.</p>
29
+ * @public
30
+ */
31
+ EstimatedOnDemandCost?: string | undefined;
32
+ /**
33
+ * <p>The current amount of Savings Plans eligible usage that the Savings Plan
34
+ * covered.</p>
35
+ * @public
36
+ */
37
+ CurrentCoverage?: string | undefined;
38
+ /**
39
+ * <p>The estimated coverage amount based on the recommended Savings Plan.</p>
40
+ * @public
41
+ */
42
+ EstimatedCoverage?: string | undefined;
43
+ /**
44
+ * <p>The estimated utilization for the recommended Savings Plan.</p>
45
+ * @public
46
+ */
47
+ EstimatedNewCommitmentUtilization?: string | undefined;
48
+ }
49
+ /**
50
+ * <p>Details about the Savings Plans purchase analysis.</p>
51
+ * @public
52
+ */
53
+ export interface SavingsPlansPurchaseAnalysisDetails {
54
+ /**
55
+ * <p>The currency code used for the analysis.</p>
56
+ * @public
57
+ */
58
+ CurrencyCode?: string | undefined;
59
+ /**
60
+ * <p>The lookback period in hours that's used to generate the analysis.</p>
61
+ * @public
62
+ */
63
+ LookbackPeriodInHours?: string | undefined;
64
+ /**
65
+ * <p>The average value of hourly coverage over the lookback period.</p>
66
+ * @public
67
+ */
68
+ CurrentAverageCoverage?: string | undefined;
69
+ /**
70
+ * <p>The average value of hourly On-Demand spend over the lookback period.</p>
71
+ * @public
72
+ */
73
+ CurrentAverageHourlyOnDemandSpend?: string | undefined;
74
+ /**
75
+ * <p>The highest value of hourly On-Demand spend over the lookback period.</p>
76
+ * @public
77
+ */
78
+ CurrentMaximumHourlyOnDemandSpend?: string | undefined;
79
+ /**
80
+ * <p>The lowest value of hourly On-Demand spend over the lookback period.</p>
81
+ * @public
82
+ */
83
+ CurrentMinimumHourlyOnDemandSpend?: string | undefined;
84
+ /**
85
+ * <p>The current total On-Demand spend over the lookback period.</p>
86
+ * @public
87
+ */
88
+ CurrentOnDemandSpend?: string | undefined;
89
+ /**
90
+ * <p>The existing hourly commitment for the Savings Plan type.</p>
91
+ * @public
92
+ */
93
+ ExistingHourlyCommitment?: string | undefined;
94
+ /**
95
+ * <p>The recommended or custom hourly commitment.</p>
96
+ * @public
97
+ */
98
+ HourlyCommitmentToPurchase?: string | undefined;
99
+ /**
100
+ * <p>The estimated coverage of the Savings Plan.</p>
101
+ * @public
102
+ */
103
+ EstimatedAverageCoverage?: string | undefined;
104
+ /**
105
+ * <p>The estimated utilization of the Savings Plan.</p>
106
+ * @public
107
+ */
108
+ EstimatedAverageUtilization?: string | undefined;
109
+ /**
110
+ * <p>The estimated monthly savings amount based on the Savings Plan.</p>
111
+ * @public
112
+ */
113
+ EstimatedMonthlySavingsAmount?: string | undefined;
114
+ /**
115
+ * <p>The remaining On-Demand cost estimated to not be covered by the Savings Plan over the
116
+ * length of the lookback period.</p>
117
+ * @public
118
+ */
119
+ EstimatedOnDemandCost?: string | undefined;
120
+ /**
121
+ * <p>The estimated On-Demand cost you expect with no additional commitment based on your
122
+ * usage of the selected time period and the Savings Plan you own.</p>
123
+ * @public
124
+ */
125
+ EstimatedOnDemandCostWithCurrentCommitment?: string | undefined;
126
+ /**
127
+ * <p>The estimated return on investment that's based on the Savings Plan and estimated
128
+ * savings. This is calculated as estimatedSavingsAmount/estimatedSPCost*100.</p>
129
+ * @public
130
+ */
131
+ EstimatedROI?: string | undefined;
132
+ /**
133
+ * <p>The estimated savings amount that's based on the Savings Plan over the length of the
134
+ * lookback period.</p>
135
+ * @public
136
+ */
137
+ EstimatedSavingsAmount?: string | undefined;
138
+ /**
139
+ * <p>The estimated savings percentage relative to the total cost over the cost calculation
140
+ * lookback period.</p>
141
+ * @public
142
+ */
143
+ EstimatedSavingsPercentage?: string | undefined;
144
+ /**
145
+ * <p>The estimated cost of the Savings Plan over the length of the lookback period.</p>
146
+ * @public
147
+ */
148
+ EstimatedCommitmentCost?: string | undefined;
149
+ /**
150
+ * <p>The date and time of the last hour that went into the analysis.</p>
151
+ * @public
152
+ */
153
+ LatestUsageTimestamp?: string | undefined;
154
+ /**
155
+ * <p>The upfront cost of the Savings Plan based on the selected payment option.</p>
156
+ * @public
157
+ */
158
+ UpfrontCost?: string | undefined;
159
+ /**
160
+ * <p>Additional metadata that might be applicable to the commitment.</p>
161
+ * @public
162
+ */
163
+ AdditionalMetadata?: string | undefined;
164
+ /**
165
+ * <p>The related hourly cost, coverage, and utilization metrics over the lookback
166
+ * period.</p>
167
+ * @public
168
+ */
169
+ MetricsOverLookbackPeriod?: RecommendationDetailHourlyMetrics[] | undefined;
170
+ }
171
+ /**
172
+ * <p>Details about the analysis.</p>
173
+ * @public
174
+ */
175
+ export interface AnalysisDetails {
176
+ /**
177
+ * <p>Details about the Savings Plans purchase analysis.</p>
178
+ * @public
179
+ */
180
+ SavingsPlansPurchaseAnalysisDetails?: SavingsPlansPurchaseAnalysisDetails | undefined;
181
+ }
182
+ /**
183
+ * <p>The requested analysis can't be found.</p>
184
+ * @public
185
+ */
186
+ export declare class AnalysisNotFoundException extends __BaseException {
187
+ readonly name: "AnalysisNotFoundException";
188
+ readonly $fault: "client";
189
+ Message?: string | undefined;
190
+ /**
191
+ * @internal
192
+ */
193
+ constructor(opts: __ExceptionOptionType<AnalysisNotFoundException, __BaseException>);
194
+ }
195
+ /**
196
+ * @public
197
+ * @enum
198
+ */
199
+ export declare const AnalysisStatus: {
200
+ readonly FAILED: "FAILED";
201
+ readonly PROCESSING: "PROCESSING";
202
+ readonly SUCCEEDED: "SUCCEEDED";
203
+ };
204
+ /**
205
+ * @public
206
+ */
207
+ export type AnalysisStatus = (typeof AnalysisStatus)[keyof typeof AnalysisStatus];
208
+ /**
209
+ * @public
210
+ * @enum
211
+ */
212
+ export declare const AnalysisType: {
213
+ readonly CUSTOM_COMMITMENT: "CUSTOM_COMMITMENT";
214
+ readonly MAX_SAVINGS: "MAX_SAVINGS";
215
+ };
216
+ /**
217
+ * @public
218
+ */
219
+ export type AnalysisType = (typeof AnalysisType)[keyof typeof AnalysisType];
220
+ /**
221
+ * <p>The time period of the request. </p>
222
+ * @public
223
+ */
224
+ export interface DateInterval {
225
+ /**
226
+ * <p>The beginning of the time period. The start date is inclusive. For example, if
227
+ * <code>start</code> is <code>2017-01-01</code>, Amazon Web Services retrieves cost and
228
+ * usage data starting at <code>2017-01-01</code> up to the end date. The start date must
229
+ * be equal to or no later than the current date to avoid a validation error.</p>
230
+ * @public
231
+ */
232
+ Start: string | undefined;
233
+ /**
234
+ * <p>The end of the time period. The end date is exclusive. For example, if
235
+ * <code>end</code> is <code>2017-05-01</code>, Amazon Web Services retrieves cost and
236
+ * usage data from the start date up to, but not including, <code>2017-05-01</code>.</p>
237
+ * @public
238
+ */
239
+ End: string | undefined;
240
+ }
241
+ /**
242
+ * @public
243
+ * @enum
244
+ */
245
+ export declare const PaymentOption: {
246
+ readonly ALL_UPFRONT: "ALL_UPFRONT";
247
+ readonly HEAVY_UTILIZATION: "HEAVY_UTILIZATION";
248
+ readonly LIGHT_UTILIZATION: "LIGHT_UTILIZATION";
249
+ readonly MEDIUM_UTILIZATION: "MEDIUM_UTILIZATION";
250
+ readonly NO_UPFRONT: "NO_UPFRONT";
251
+ readonly PARTIAL_UPFRONT: "PARTIAL_UPFRONT";
252
+ };
253
+ /**
254
+ * @public
255
+ */
256
+ export type PaymentOption = (typeof PaymentOption)[keyof typeof PaymentOption];
257
+ /**
258
+ * @public
259
+ * @enum
260
+ */
261
+ export declare const SupportedSavingsPlansType: {
262
+ readonly COMPUTE_SP: "COMPUTE_SP";
263
+ readonly EC2_INSTANCE_SP: "EC2_INSTANCE_SP";
264
+ readonly SAGEMAKER_SP: "SAGEMAKER_SP";
265
+ };
266
+ /**
267
+ * @public
268
+ */
269
+ export type SupportedSavingsPlansType = (typeof SupportedSavingsPlansType)[keyof typeof SupportedSavingsPlansType];
270
+ /**
271
+ * @public
272
+ * @enum
273
+ */
274
+ export declare const TermInYears: {
275
+ readonly ONE_YEAR: "ONE_YEAR";
276
+ readonly THREE_YEARS: "THREE_YEARS";
277
+ };
278
+ /**
279
+ * @public
280
+ */
281
+ export type TermInYears = (typeof TermInYears)[keyof typeof TermInYears];
282
+ /**
283
+ * <p>The Savings Plans commitment details.</p>
284
+ * @public
285
+ */
286
+ export interface SavingsPlans {
287
+ /**
288
+ * <p>The payment option for the Savings Plans commitment.</p>
289
+ * @public
290
+ */
291
+ PaymentOption?: PaymentOption | undefined;
292
+ /**
293
+ * <p>The Savings Plans type.</p>
294
+ * @public
295
+ */
296
+ SavingsPlansType?: SupportedSavingsPlansType | undefined;
297
+ /**
298
+ * <p>The Region associated with the Savings Plans commitment.</p>
299
+ * @public
300
+ */
301
+ Region?: string | undefined;
302
+ /**
303
+ * <p>The instance family of the Savings Plans commitment.</p>
304
+ * @public
305
+ */
306
+ InstanceFamily?: string | undefined;
307
+ /**
308
+ * <p>The term that you want the Savings Plans commitment for.</p>
309
+ * @public
310
+ */
311
+ TermInYears?: TermInYears | undefined;
312
+ /**
313
+ * <p>The Savings Plans commitment.</p>
314
+ * @public
315
+ */
316
+ SavingsPlansCommitment?: number | undefined;
317
+ /**
318
+ * <p>The unique ID that's used to distinguish Savings Plans commitments from one
319
+ * another.</p>
320
+ * @public
321
+ */
322
+ OfferingId?: string | undefined;
323
+ }
324
+ /**
325
+ * <p>The configuration for the Savings Plans purchase analysis.</p>
326
+ * @public
327
+ */
328
+ export interface SavingsPlansPurchaseAnalysisConfiguration {
329
+ /**
330
+ * <p>The account scope that you want your analysis for.</p>
331
+ * @public
332
+ */
333
+ AccountScope?: AccountScope | undefined;
334
+ /**
335
+ * <p>The account that the analysis is for.</p>
336
+ * @public
337
+ */
338
+ AccountId?: string | undefined;
339
+ /**
340
+ * <p>The type of analysis.</p>
341
+ * @public
342
+ */
343
+ AnalysisType: AnalysisType | undefined;
344
+ /**
345
+ * <p>Savings Plans to include in the analysis.</p>
346
+ * @public
347
+ */
348
+ SavingsPlansToAdd: SavingsPlans[] | undefined;
349
+ /**
350
+ * <p>Savings Plans to exclude from the analysis.</p>
351
+ * @public
352
+ */
353
+ SavingsPlansToExclude?: string[] | undefined;
354
+ /**
355
+ * <p>The time period associated with the analysis.</p>
356
+ * @public
357
+ */
358
+ LookBackTimePeriod: DateInterval | undefined;
359
+ }
360
+ /**
361
+ * <p>The configuration for the commitment purchase analysis.</p>
362
+ * @public
363
+ */
364
+ export interface CommitmentPurchaseAnalysisConfiguration {
365
+ /**
366
+ * <p>The configuration for the Savings Plans purchase analysis.</p>
367
+ * @public
368
+ */
369
+ SavingsPlansPurchaseAnalysisConfiguration?: SavingsPlansPurchaseAnalysisConfiguration | undefined;
370
+ }
371
+ /**
372
+ * @public
373
+ * @enum
374
+ */
375
+ export declare const ErrorCode: {
376
+ readonly INTERNAL_FAILURE: "INTERNAL_FAILURE";
377
+ readonly INVALID_ACCOUNT_ID: "INVALID_ACCOUNT_ID";
378
+ readonly INVALID_SAVINGS_PLANS_TO_ADD: "INVALID_SAVINGS_PLANS_TO_ADD";
379
+ readonly INVALID_SAVINGS_PLANS_TO_EXCLUDE: "INVALID_SAVINGS_PLANS_TO_EXCLUDE";
380
+ readonly NO_USAGE_FOUND: "NO_USAGE_FOUND";
381
+ };
382
+ /**
383
+ * @public
384
+ */
385
+ export type ErrorCode = (typeof ErrorCode)[keyof typeof ErrorCode];
386
+ /**
387
+ * <p>A summary of the analysis.</p>
388
+ * @public
389
+ */
390
+ export interface AnalysisSummary {
391
+ /**
392
+ * <p>The estimated time for when the analysis will complete.</p>
393
+ * @public
394
+ */
395
+ EstimatedCompletionTime?: string | undefined;
396
+ /**
397
+ * <p>The completion time of the analysis.</p>
398
+ * @public
399
+ */
400
+ AnalysisCompletionTime?: string | undefined;
401
+ /**
402
+ * <p>The start time of the analysis.</p>
403
+ * @public
404
+ */
405
+ AnalysisStartedTime?: string | undefined;
406
+ /**
407
+ * <p>The status of the analysis.</p>
408
+ * @public
409
+ */
410
+ AnalysisStatus?: AnalysisStatus | undefined;
411
+ /**
412
+ * <p>The error code used for the analysis.</p>
413
+ * @public
414
+ */
415
+ ErrorCode?: ErrorCode | undefined;
416
+ /**
417
+ * <p>The analysis ID that's associated with the commitment purchase analysis.</p>
418
+ * @public
419
+ */
420
+ AnalysisId?: string | undefined;
421
+ /**
422
+ * <p>The configuration for the commitment purchase analysis.</p>
423
+ * @public
424
+ */
425
+ CommitmentPurchaseAnalysisConfiguration?: CommitmentPurchaseAnalysisConfiguration | undefined;
426
+ }
15
427
  /**
16
428
  * <p>Quantifies the anomaly. The higher score means that it's more anomalous. </p>
17
429
  * @public
@@ -79,14 +491,27 @@ export interface Impact {
79
491
  TotalImpactPercentage?: number | undefined;
80
492
  }
81
493
  /**
82
- * <p>The combination of Amazon Web Servicesservice, linked account, linked account name,
83
- * Region, and usage type where a cost anomaly is observed. The linked account name will
84
- * only be available when the account name can be identified.</p>
494
+ * <p>The dollar value of the root cause.</p>
495
+ * @public
496
+ */
497
+ export interface RootCauseImpact {
498
+ /**
499
+ * <p>The dollar amount that this root cause contributed to the anomaly's
500
+ * TotalImpact.</p>
501
+ * @public
502
+ */
503
+ Contribution: number | undefined;
504
+ }
505
+ /**
506
+ * <p>The combination of Amazon Web Services service, linked account, linked account name,
507
+ * Region, and usage type where a cost anomaly is observed, along with the dollar and
508
+ * percentage amount of the anomaly impact. The linked account name will only be available
509
+ * when the account name can be identified.</p>
85
510
  * @public
86
511
  */
87
512
  export interface RootCause {
88
513
  /**
89
- * <p>The Amazon Web Servicesservice name that's associated with the cost anomaly. </p>
514
+ * <p>The Amazon Web Services service name that's associated with the cost anomaly. </p>
90
515
  * @public
91
516
  */
92
517
  Service?: string | undefined;
@@ -100,16 +525,21 @@ export interface RootCause {
100
525
  * @public
101
526
  */
102
527
  LinkedAccount?: string | undefined;
528
+ /**
529
+ * <p>The member account name value that's associated with the cost anomaly.</p>
530
+ * @public
531
+ */
532
+ LinkedAccountName?: string | undefined;
103
533
  /**
104
534
  * <p>The <code>UsageType</code> value that's associated with the cost anomaly. </p>
105
535
  * @public
106
536
  */
107
537
  UsageType?: string | undefined;
108
538
  /**
109
- * <p>The member account name value that's associated with the cost anomaly.</p>
539
+ * <p>The dollar impact for the root cause.</p>
110
540
  * @public
111
541
  */
112
- LinkedAccountName?: string | undefined;
542
+ Impact?: RootCauseImpact | undefined;
113
543
  }
114
544
  /**
115
545
  * <p>An unusual cost pattern. This consists of the detailed metadata and the current status
@@ -133,7 +563,7 @@ export interface Anomaly {
133
563
  */
134
564
  AnomalyEndDate?: string | undefined;
135
565
  /**
136
- * <p>The dimension for the anomaly (for example, an Amazon Web Servicesservice in a service
566
+ * <p>The dimension for the anomaly (for example, an Amazon Web Services service in a service
137
567
  * monitor). </p>
138
568
  * @public
139
569
  */
@@ -1018,45 +1448,79 @@ export interface GetApproximateUsageRecordsRequest {
1018
1448
  ApproximationDimension: ApproximationDimension | undefined;
1019
1449
  }
1020
1450
  /**
1021
- * <p>The time period of the request. </p>
1022
1451
  * @public
1023
1452
  */
1024
- export interface DateInterval {
1453
+ export interface GetApproximateUsageRecordsResponse {
1025
1454
  /**
1026
- * <p>The beginning of the time period. The start date is inclusive. For example, if
1027
- * <code>start</code> is <code>2017-01-01</code>, Amazon Web Services retrieves cost and
1028
- * usage data starting at <code>2017-01-01</code> up to the end date. The start date must
1029
- * be equal to or no later than the current date to avoid a validation error.</p>
1455
+ * <p>The service metadata for the service or services in the response.</p>
1030
1456
  * @public
1031
1457
  */
1032
- Start: string | undefined;
1458
+ Services?: Record<string, number> | undefined;
1033
1459
  /**
1034
- * <p>The end of the time period. The end date is exclusive. For example, if
1035
- * <code>end</code> is <code>2017-05-01</code>, Amazon Web Services retrieves cost and
1036
- * usage data from the start date up to, but not including, <code>2017-05-01</code>.</p>
1460
+ * <p>The total number of usage records for all services in the services list.</p>
1037
1461
  * @public
1038
1462
  */
1039
- End: string | undefined;
1463
+ TotalRecords?: number | undefined;
1464
+ /**
1465
+ * <p>The lookback period that's used for the estimation.</p>
1466
+ * @public
1467
+ */
1468
+ LookbackPeriod?: DateInterval | undefined;
1040
1469
  }
1041
1470
  /**
1042
1471
  * @public
1043
1472
  */
1044
- export interface GetApproximateUsageRecordsResponse {
1473
+ export interface GetCommitmentPurchaseAnalysisRequest {
1045
1474
  /**
1046
- * <p>The service metadata for the service or services in the response.</p>
1475
+ * <p>The analysis ID that's associated with the commitment purchase analysis.</p>
1047
1476
  * @public
1048
1477
  */
1049
- Services?: Record<string, number> | undefined;
1478
+ AnalysisId: string | undefined;
1479
+ }
1480
+ /**
1481
+ * @public
1482
+ */
1483
+ export interface GetCommitmentPurchaseAnalysisResponse {
1050
1484
  /**
1051
- * <p>The total number of usage records for all services in the services list.</p>
1485
+ * <p>The estimated time for when the analysis will complete.</p>
1052
1486
  * @public
1053
1487
  */
1054
- TotalRecords?: number | undefined;
1488
+ EstimatedCompletionTime: string | undefined;
1055
1489
  /**
1056
- * <p>The lookback period that's used for the estimation.</p>
1490
+ * <p>The completion time of the analysis.</p>
1057
1491
  * @public
1058
1492
  */
1059
- LookbackPeriod?: DateInterval | undefined;
1493
+ AnalysisCompletionTime?: string | undefined;
1494
+ /**
1495
+ * <p>The start time of the analysis.</p>
1496
+ * @public
1497
+ */
1498
+ AnalysisStartedTime: string | undefined;
1499
+ /**
1500
+ * <p>The analysis ID that's associated with the commitment purchase analysis.</p>
1501
+ * @public
1502
+ */
1503
+ AnalysisId: string | undefined;
1504
+ /**
1505
+ * <p>The status of the analysis.</p>
1506
+ * @public
1507
+ */
1508
+ AnalysisStatus: AnalysisStatus | undefined;
1509
+ /**
1510
+ * <p>The error code used for the analysis.</p>
1511
+ * @public
1512
+ */
1513
+ ErrorCode?: ErrorCode | undefined;
1514
+ /**
1515
+ * <p>Details about the analysis.</p>
1516
+ * @public
1517
+ */
1518
+ AnalysisDetails?: AnalysisDetails | undefined;
1519
+ /**
1520
+ * <p>The configuration for the commitment purchase analysis.</p>
1521
+ * @public
1522
+ */
1523
+ CommitmentPurchaseAnalysisConfiguration: CommitmentPurchaseAnalysisConfiguration | undefined;
1060
1524
  }
1061
1525
  /**
1062
1526
  * <p>The requested report expired. Update the date interval and try again.</p>
@@ -1700,22 +2164,6 @@ export declare const LookbackPeriodInDays: {
1700
2164
  * @public
1701
2165
  */
1702
2166
  export type LookbackPeriodInDays = (typeof LookbackPeriodInDays)[keyof typeof LookbackPeriodInDays];
1703
- /**
1704
- * @public
1705
- * @enum
1706
- */
1707
- export declare const PaymentOption: {
1708
- readonly ALL_UPFRONT: "ALL_UPFRONT";
1709
- readonly HEAVY_UTILIZATION: "HEAVY_UTILIZATION";
1710
- readonly LIGHT_UTILIZATION: "LIGHT_UTILIZATION";
1711
- readonly MEDIUM_UTILIZATION: "MEDIUM_UTILIZATION";
1712
- readonly NO_UPFRONT: "NO_UPFRONT";
1713
- readonly PARTIAL_UPFRONT: "PARTIAL_UPFRONT";
1714
- };
1715
- /**
1716
- * @public
1717
- */
1718
- export type PaymentOption = (typeof PaymentOption)[keyof typeof PaymentOption];
1719
2167
  /**
1720
2168
  * @public
1721
2169
  * @enum
@@ -1753,18 +2201,6 @@ export interface ServiceSpecification {
1753
2201
  */
1754
2202
  EC2Specification?: EC2Specification | undefined;
1755
2203
  }
1756
- /**
1757
- * @public
1758
- * @enum
1759
- */
1760
- export declare const TermInYears: {
1761
- readonly ONE_YEAR: "ONE_YEAR";
1762
- readonly THREE_YEARS: "THREE_YEARS";
1763
- };
1764
- /**
1765
- * @public
1766
- */
1767
- export type TermInYears = (typeof TermInYears)[keyof typeof TermInYears];
1768
2204
  /**
1769
2205
  * <p>Information about a recommendation, such as the timestamp for when Amazon Web Services
1770
2206
  * made a specific recommendation.</p>
@@ -2081,6 +2517,7 @@ export interface DynamoDBCapacityDetails {
2081
2517
  }
2082
2518
  /**
2083
2519
  * <p>Details about the reservations that Amazon Web Services recommends that you
2520
+ *
2084
2521
  * purchase.</p>
2085
2522
  * @public
2086
2523
  */
@@ -2161,20 +2598,20 @@ export interface ReservationPurchaseRecommendationDetail {
2161
2598
  */
2162
2599
  AverageNormalizedUnitsUsedPerHour?: string | undefined;
2163
2600
  /**
2164
- * <p>The average utilization of your recommendations. Amazon Web Services uses this to
2165
- * calculate your recommended reservation purchases.</p>
2601
+ * <p>The average utilization of your instances. Amazon Web Services uses this to calculate
2602
+ * your recommended reservation purchases.</p>
2166
2603
  * @public
2167
2604
  */
2168
2605
  AverageUtilization?: string | undefined;
2169
2606
  /**
2170
- * <p>How long Amazon Web Services estimates that it takes for this recommendation to start
2171
- * saving you money, in months.</p>
2607
+ * <p>How long Amazon Web Services estimates that it takes for this instance to start saving
2608
+ * you money, in months.</p>
2172
2609
  * @public
2173
2610
  */
2174
2611
  EstimatedBreakEvenInMonths?: string | undefined;
2175
2612
  /**
2176
2613
  * <p>The currency code that Amazon Web Services used to calculate the costs for this
2177
- * recommendation.</p>
2614
+ * instance.</p>
2178
2615
  * @public
2179
2616
  */
2180
2617
  CurrencyCode?: string | undefined;
@@ -2203,44 +2640,52 @@ export interface ReservationPurchaseRecommendationDetail {
2203
2640
  */
2204
2641
  EstimatedReservationCostForLookbackPeriod?: string | undefined;
2205
2642
  /**
2206
- * <p>How much purchasing this recommendation costs you upfront.</p>
2643
+ * <p>How much purchasing this instance costs you upfront.</p>
2207
2644
  * @public
2208
2645
  */
2209
2646
  UpfrontCost?: string | undefined;
2210
2647
  /**
2211
- * <p>How much purchasing this recommendation costs you on a monthly basis.</p>
2648
+ * <p>How much purchasing this instance costs you on a monthly basis.</p>
2212
2649
  * @public
2213
2650
  */
2214
2651
  RecurringStandardMonthlyCost?: string | undefined;
2215
2652
  /**
2216
2653
  * <p>Details about the reservations that Amazon Web Services recommends that you
2654
+ *
2217
2655
  * purchase.</p>
2218
2656
  * @public
2219
2657
  */
2220
2658
  ReservedCapacityDetails?: ReservedCapacityDetails | undefined;
2221
2659
  /**
2222
2660
  * <p>The number of reserved capacity units that Amazon Web Services recommends that you
2661
+ *
2223
2662
  * purchase.</p>
2224
2663
  * @public
2225
2664
  */
2226
2665
  RecommendedNumberOfCapacityUnitsToPurchase?: string | undefined;
2227
2666
  /**
2228
2667
  * <p>The minimum number of provisioned capacity units that you used in an hour during the
2668
+ *
2229
2669
  * historical period. Amazon Web Services uses this to calculate your recommended
2670
+ *
2230
2671
  * reservation purchases.</p>
2231
2672
  * @public
2232
2673
  */
2233
2674
  MinimumNumberOfCapacityUnitsUsedPerHour?: string | undefined;
2234
2675
  /**
2235
2676
  * <p>The maximum number of provisioned capacity units that you used in an hour during the
2677
+ *
2236
2678
  * historical period. Amazon Web Services uses this to calculate your recommended
2679
+ *
2237
2680
  * reservation purchases.</p>
2238
2681
  * @public
2239
2682
  */
2240
2683
  MaximumNumberOfCapacityUnitsUsedPerHour?: string | undefined;
2241
2684
  /**
2242
2685
  * <p>The average number of provisioned capacity units that you used in an hour during the
2686
+ *
2243
2687
  * historical period. Amazon Web Services uses this to calculate your recommended
2688
+ *
2244
2689
  * reservation purchases.</p>
2245
2690
  * @public
2246
2691
  */
@@ -3067,53 +3512,6 @@ export interface GetSavingsPlanPurchaseRecommendationDetailsRequest {
3067
3512
  */
3068
3513
  RecommendationDetailId: string | undefined;
3069
3514
  }
3070
- /**
3071
- * <p>Contains the hourly metrics for the given recommendation over the lookback period.
3072
- * </p>
3073
- * @public
3074
- */
3075
- export interface RecommendationDetailHourlyMetrics {
3076
- /**
3077
- * <p>The period of time that you want the usage and costs for.</p>
3078
- * @public
3079
- */
3080
- StartTime?: string | undefined;
3081
- /**
3082
- * <p>The remaining On-Demand cost estimated to not be covered by the recommended Savings
3083
- * Plan, over the length of the lookback period.</p>
3084
- * @public
3085
- */
3086
- EstimatedOnDemandCost?: string | undefined;
3087
- /**
3088
- * <p>The current amount of Savings Plans eligible usage that the Savings Plan
3089
- * covered.</p>
3090
- * @public
3091
- */
3092
- CurrentCoverage?: string | undefined;
3093
- /**
3094
- * <p>The estimated coverage amount based on the recommended Savings Plan.</p>
3095
- * @public
3096
- */
3097
- EstimatedCoverage?: string | undefined;
3098
- /**
3099
- * <p>The estimated utilization for the recommended Savings Plan.</p>
3100
- * @public
3101
- */
3102
- EstimatedNewCommitmentUtilization?: string | undefined;
3103
- }
3104
- /**
3105
- * @public
3106
- * @enum
3107
- */
3108
- export declare const SupportedSavingsPlansType: {
3109
- readonly COMPUTE_SP: "COMPUTE_SP";
3110
- readonly EC2_INSTANCE_SP: "EC2_INSTANCE_SP";
3111
- readonly SAGEMAKER_SP: "SAGEMAKER_SP";
3112
- };
3113
- /**
3114
- * @public
3115
- */
3116
- export type SupportedSavingsPlansType = (typeof SupportedSavingsPlansType)[keyof typeof SupportedSavingsPlansType];
3117
3515
  /**
3118
3516
  * <p>The details and metrics for the given recommendation.</p>
3119
3517
  * @public
@@ -3933,6 +4331,46 @@ export declare class UnresolvableUsageUnitException extends __BaseException {
3933
4331
  */
3934
4332
  constructor(opts: __ExceptionOptionType<UnresolvableUsageUnitException, __BaseException>);
3935
4333
  }
4334
+ /**
4335
+ * @public
4336
+ */
4337
+ export interface ListCommitmentPurchaseAnalysesRequest {
4338
+ /**
4339
+ * <p>The status of the analysis.</p>
4340
+ * @public
4341
+ */
4342
+ AnalysisStatus?: AnalysisStatus | undefined;
4343
+ /**
4344
+ * <p>The token to retrieve the next set of results.</p>
4345
+ * @public
4346
+ */
4347
+ NextPageToken?: string | undefined;
4348
+ /**
4349
+ * <p>The number of analyses that you want returned in a single response object.</p>
4350
+ * @public
4351
+ */
4352
+ PageSize?: number | undefined;
4353
+ /**
4354
+ * <p>The analysis IDs associated with the commitment purchase analyses.</p>
4355
+ * @public
4356
+ */
4357
+ AnalysisIds?: string[] | undefined;
4358
+ }
4359
+ /**
4360
+ * @public
4361
+ */
4362
+ export interface ListCommitmentPurchaseAnalysesResponse {
4363
+ /**
4364
+ * <p>The list of analyses.</p>
4365
+ * @public
4366
+ */
4367
+ AnalysisSummaryList?: AnalysisSummary[] | undefined;
4368
+ /**
4369
+ * <p>The token to retrieve the next set of results.</p>
4370
+ * @public
4371
+ */
4372
+ NextPageToken?: string | undefined;
4373
+ }
3936
4374
  /**
3937
4375
  * @public
3938
4376
  */
@@ -4360,6 +4798,49 @@ export interface ProvideAnomalyFeedbackResponse {
4360
4798
  */
4361
4799
  AnomalyId: string | undefined;
4362
4800
  }
4801
+ /**
4802
+ * <p>A request to generate a recommendation or analysis is already in progress.</p>
4803
+ * @public
4804
+ */
4805
+ export declare class GenerationExistsException extends __BaseException {
4806
+ readonly name: "GenerationExistsException";
4807
+ readonly $fault: "client";
4808
+ Message?: string | undefined;
4809
+ /**
4810
+ * @internal
4811
+ */
4812
+ constructor(opts: __ExceptionOptionType<GenerationExistsException, __BaseException>);
4813
+ }
4814
+ /**
4815
+ * @public
4816
+ */
4817
+ export interface StartCommitmentPurchaseAnalysisRequest {
4818
+ /**
4819
+ * <p>The configuration for the commitment purchase analysis.</p>
4820
+ * @public
4821
+ */
4822
+ CommitmentPurchaseAnalysisConfiguration: CommitmentPurchaseAnalysisConfiguration | undefined;
4823
+ }
4824
+ /**
4825
+ * @public
4826
+ */
4827
+ export interface StartCommitmentPurchaseAnalysisResponse {
4828
+ /**
4829
+ * <p>The analysis ID that's associated with the commitment purchase analysis.</p>
4830
+ * @public
4831
+ */
4832
+ AnalysisId: string | undefined;
4833
+ /**
4834
+ * <p>The start time of the analysis.</p>
4835
+ * @public
4836
+ */
4837
+ AnalysisStartedTime: string | undefined;
4838
+ /**
4839
+ * <p>The estimated time for when the analysis will complete.</p>
4840
+ * @public
4841
+ */
4842
+ EstimatedCompletionTime: string | undefined;
4843
+ }
4363
4844
  /**
4364
4845
  * <p>
4365
4846
  * A request to backfill is already in progress. Once the previous request is complete, you can create another request.
@@ -4398,19 +4879,6 @@ export interface StartCostAllocationTagBackfillResponse {
4398
4879
  */
4399
4880
  BackfillRequest?: CostAllocationTagBackfillRequest | undefined;
4400
4881
  }
4401
- /**
4402
- * <p>A request to generate a recommendation is already in progress.</p>
4403
- * @public
4404
- */
4405
- export declare class GenerationExistsException extends __BaseException {
4406
- readonly name: "GenerationExistsException";
4407
- readonly $fault: "client";
4408
- Message?: string | undefined;
4409
- /**
4410
- * @internal
4411
- */
4412
- constructor(opts: __ExceptionOptionType<GenerationExistsException, __BaseException>);
4413
- }
4414
4882
  /**
4415
4883
  * @public
4416
4884
  */
@@ -5711,9 +6179,9 @@ export interface GetDimensionValuesRequest {
5711
6179
  * <li>
5712
6180
  * <p>BILLING_ENTITY - The Amazon Web Services seller that your account is with. Possible
5713
6181
  * values are the following:</p>
5714
- * <p>- Amazon Web Services(Amazon Web Services): The entity that sells Amazon Web Servicesservices.</p>
6182
+ * <p>- Amazon Web Services(Amazon Web Services): The entity that sells Amazon Web Services services.</p>
5715
6183
  * <p>- AISPL (Amazon Internet Services Pvt. Ltd.): The local Indian entity that's an acting
5716
- * reseller for Amazon Web Servicesservices in India.</p>
6184
+ * reseller for Amazon Web Services services in India.</p>
5717
6185
  * <p>- Amazon Web Services Marketplace: The entity that supports the sale of solutions that are built on
5718
6186
  * Amazon Web Services by third-party software providers.</p>
5719
6187
  * </li>
@@ -6508,6 +6976,13 @@ export interface GetReservationUtilizationRequest {
6508
6976
  * </li>
6509
6977
  * <li>
6510
6978
  * <p>SERVICE</p>
6979
+ * <note>
6980
+ * <p>If not specified, the <code>SERVICE</code> filter defaults to Amazon Elastic
6981
+ * Compute Cloud - Compute. Supported values for <code>SERVICE</code> are Amazon Elastic
6982
+ * Compute Cloud - Compute, Amazon Relational Database Service, Amazon ElastiCache, Amazon
6983
+ * Redshift, and Amazon Elasticsearch Service. The value for the <code>SERVICE</code>
6984
+ * filter should not exceed "1".</p>
6985
+ * </note>
6511
6986
  * </li>
6512
6987
  * <li>
6513
6988
  * <p>SCOPE</p>