Cost Optimization Hub 2022-07-26
- Client: Aws\CostOptimizationHub\CostOptimizationHubClient
- Service ID: cost-optimization-hub
- Version: 2022-07-26
This page describes the parameters and results for the operations of the Cost Optimization Hub (2022-07-26), and shows how to use the Aws\CostOptimizationHub\CostOptimizationHubClient object to call the described operations. This documentation is specific to the 2022-07-26 API version of the service.
Operation Summary
Each of the following operations can be created from a client using
$client->getCommand('CommandName')
, where "CommandName" is the
name of one of the following operations. Note: a command is a value that
encapsulates an operation and the parameters used to create an HTTP request.
You can also create and send a command immediately using the magic methods
available on a client object: $client->commandName(/* parameters */)
.
You can send the command asynchronously (returning a promise) by appending the
word "Async" to the operation name: $client->commandNameAsync(/* parameters */)
.
- GetPreferences ( array $params = [] )
- Returns a set of preferences for an account in order to add account-specific preferences into the service.
- GetRecommendation ( array $params = [] )
- Returns both the current and recommended resource configuration and the estimated cost impact for a recommendation.
- ListEnrollmentStatuses ( array $params = [] )
- Retrieves the enrollment status for an account.
- ListRecommendationSummaries ( array $params = [] )
- Returns a concise representation of savings estimates for resources.
- ListRecommendations ( array $params = [] )
- Returns a list of recommendations.
- UpdateEnrollmentStatus ( array $params = [] )
- Updates the enrollment (opt in and opt out) status of an account to the Cost Optimization Hub service.
- UpdatePreferences ( array $params = [] )
- Updates a set of preferences for an account in order to add account-specific preferences into the service.
Paginators
Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:
Operations
GetPreferences
$result = $client->getPreferences
([/* ... */]); $promise = $client->getPreferencesAsync
([/* ... */]);
Returns a set of preferences for an account in order to add account-specific preferences into the service. These preferences impact how the savings associated with recommendations are presented—estimated savings after discounts or estimated savings before discounts, for example.
Parameter Syntax
$result = $client->getPreferences([ ]);
Parameter Details
Members
Result Syntax
[ 'memberAccountDiscountVisibility' => 'All|None', 'savingsEstimationMode' => 'BeforeDiscounts|AfterDiscounts', ]
Result Details
Members
- memberAccountDiscountVisibility
-
- Type: string
Retrieves the status of the "member account discount visibility" preference.
- savingsEstimationMode
-
- Type: string
Retrieves the status of the "savings estimation mode" preference.
Errors
- ValidationException:
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- InternalServerException:
An error on the server occurred during the processing of your request. Try again later.
- AccessDeniedException:
You are not authorized to use this operation with the given parameters.
- ThrottlingException:
The request was denied due to request throttling.
GetRecommendation
$result = $client->getRecommendation
([/* ... */]); $promise = $client->getRecommendationAsync
([/* ... */]);
Returns both the current and recommended resource configuration and the estimated cost impact for a recommendation.
The recommendationId
is only valid for up to a maximum of 24 hours as recommendations are refreshed daily. To retrieve the recommendationId
, use the ListRecommendations
API.
Parameter Syntax
$result = $client->getRecommendation([ 'recommendationId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- recommendationId
-
- Required: Yes
- Type: string
The ID for the recommendation.
Result Syntax
[ 'accountId' => '<string>', 'actionType' => 'Rightsize|Stop|Upgrade|PurchaseSavingsPlans|PurchaseReservedInstances|MigrateToGraviton|Delete', 'costCalculationLookbackPeriodInDays' => <integer>, 'currencyCode' => '<string>', 'currentResourceDetails' => [ 'computeSavingsPlans' => [ 'configuration' => [ 'accountScope' => '<string>', 'hourlyCommitment' => '<string>', 'paymentOption' => '<string>', 'term' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyCommitment' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlySavingsPlansEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'ebsVolume' => [ 'configuration' => [ 'attachmentState' => '<string>', 'performance' => [ 'iops' => <float>, 'throughput' => <float>, ], 'storage' => [ 'sizeInGb' => <float>, 'type' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'ec2AutoScalingGroup' => [ 'configuration' => [ 'instance' => [ 'type' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'ec2Instance' => [ 'configuration' => [ 'instance' => [ 'type' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'ec2InstanceSavingsPlans' => [ 'configuration' => [ 'accountScope' => '<string>', 'hourlyCommitment' => '<string>', 'instanceFamily' => '<string>', 'paymentOption' => '<string>', 'savingsPlansRegion' => '<string>', 'term' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyCommitment' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlySavingsPlansEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'ec2ReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'offeringClass' => '<string>', 'paymentOption' => '<string>', 'platform' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'tenancy' => '<string>', 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'ecsService' => [ 'configuration' => [ 'compute' => [ 'architecture' => '<string>', 'memorySizeInMB' => <integer>, 'platform' => '<string>', 'vCpu' => <float>, ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'elastiCacheReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'lambdaFunction' => [ 'configuration' => [ 'compute' => [ 'architecture' => '<string>', 'memorySizeInMB' => <integer>, 'platform' => '<string>', 'vCpu' => <float>, ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'openSearchReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'rdsDbInstance' => [ 'configuration' => [ 'instance' => [ 'dbInstanceClass' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'rdsDbInstanceStorage' => [ 'configuration' => [ 'allocatedStorageInGb' => <float>, 'iops' => <float>, 'storageThroughput' => <float>, 'storageType' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'rdsReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'databaseEdition' => '<string>', 'databaseEngine' => '<string>', 'deploymentOption' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'licenseModel' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'redshiftReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'sageMakerSavingsPlans' => [ 'configuration' => [ 'accountScope' => '<string>', 'hourlyCommitment' => '<string>', 'paymentOption' => '<string>', 'term' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyCommitment' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlySavingsPlansEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], ], 'currentResourceType' => 'Ec2Instance|LambdaFunction|EbsVolume|EcsService|Ec2AutoScalingGroup|Ec2InstanceSavingsPlans|ComputeSavingsPlans|SageMakerSavingsPlans|Ec2ReservedInstances|RdsReservedInstances|OpenSearchReservedInstances|RedshiftReservedInstances|ElastiCacheReservedInstances|RdsDbInstanceStorage|RdsDbInstance', 'estimatedMonthlyCost' => <float>, 'estimatedMonthlySavings' => <float>, 'estimatedSavingsOverCostCalculationLookbackPeriod' => <float>, 'estimatedSavingsPercentage' => <float>, 'implementationEffort' => 'VeryLow|Low|Medium|High|VeryHigh', 'lastRefreshTimestamp' => <DateTime>, 'recommendationId' => '<string>', 'recommendationLookbackPeriodInDays' => <integer>, 'recommendedResourceDetails' => [ 'computeSavingsPlans' => [ 'configuration' => [ 'accountScope' => '<string>', 'hourlyCommitment' => '<string>', 'paymentOption' => '<string>', 'term' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyCommitment' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlySavingsPlansEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'ebsVolume' => [ 'configuration' => [ 'attachmentState' => '<string>', 'performance' => [ 'iops' => <float>, 'throughput' => <float>, ], 'storage' => [ 'sizeInGb' => <float>, 'type' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'ec2AutoScalingGroup' => [ 'configuration' => [ 'instance' => [ 'type' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'ec2Instance' => [ 'configuration' => [ 'instance' => [ 'type' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'ec2InstanceSavingsPlans' => [ 'configuration' => [ 'accountScope' => '<string>', 'hourlyCommitment' => '<string>', 'instanceFamily' => '<string>', 'paymentOption' => '<string>', 'savingsPlansRegion' => '<string>', 'term' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyCommitment' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlySavingsPlansEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'ec2ReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'offeringClass' => '<string>', 'paymentOption' => '<string>', 'platform' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'tenancy' => '<string>', 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'ecsService' => [ 'configuration' => [ 'compute' => [ 'architecture' => '<string>', 'memorySizeInMB' => <integer>, 'platform' => '<string>', 'vCpu' => <float>, ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'elastiCacheReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'lambdaFunction' => [ 'configuration' => [ 'compute' => [ 'architecture' => '<string>', 'memorySizeInMB' => <integer>, 'platform' => '<string>', 'vCpu' => <float>, ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'openSearchReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'rdsDbInstance' => [ 'configuration' => [ 'instance' => [ 'dbInstanceClass' => '<string>', ], ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'rdsDbInstanceStorage' => [ 'configuration' => [ 'allocatedStorageInGb' => <float>, 'iops' => <float>, 'storageThroughput' => <float>, 'storageType' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedCostAfterDiscounts' => <float>, 'estimatedCostBeforeDiscounts' => <float>, 'estimatedDiscounts' => [ 'otherDiscount' => <float>, 'reservedInstancesDiscount' => <float>, 'savingsPlansDiscount' => <float>, ], 'estimatedNetUnusedAmortizedCommitments' => <float>, ], 'usages' => [ [ 'operation' => '<string>', 'productCode' => '<string>', 'unit' => '<string>', 'usageAmount' => <float>, 'usageType' => '<string>', ], // ... ], ], ], 'rdsReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'databaseEdition' => '<string>', 'databaseEngine' => '<string>', 'deploymentOption' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'licenseModel' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'redshiftReservedInstances' => [ 'configuration' => [ 'accountScope' => '<string>', 'currentGeneration' => '<string>', 'instanceFamily' => '<string>', 'instanceType' => '<string>', 'monthlyRecurringCost' => '<string>', 'normalizedUnitsToPurchase' => '<string>', 'numberOfInstancesToPurchase' => '<string>', 'paymentOption' => '<string>', 'reservedInstancesRegion' => '<string>', 'service' => '<string>', 'sizeFlexEligible' => true || false, 'term' => '<string>', 'upfrontCost' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyAmortizedReservationCost' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlyReservationEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], 'sageMakerSavingsPlans' => [ 'configuration' => [ 'accountScope' => '<string>', 'hourlyCommitment' => '<string>', 'paymentOption' => '<string>', 'term' => '<string>', ], 'costCalculation' => [ 'pricing' => [ 'estimatedMonthlyCommitment' => <float>, 'estimatedOnDemandCost' => <float>, 'monthlySavingsPlansEligibleCost' => <float>, 'savingsPercentage' => <float>, ], ], ], ], 'recommendedResourceType' => 'Ec2Instance|LambdaFunction|EbsVolume|EcsService|Ec2AutoScalingGroup|Ec2InstanceSavingsPlans|ComputeSavingsPlans|SageMakerSavingsPlans|Ec2ReservedInstances|RdsReservedInstances|OpenSearchReservedInstances|RedshiftReservedInstances|ElastiCacheReservedInstances|RdsDbInstanceStorage|RdsDbInstance', 'region' => '<string>', 'resourceArn' => '<string>', 'resourceId' => '<string>', 'restartNeeded' => true || false, 'rollbackPossible' => true || false, 'source' => 'ComputeOptimizer|CostExplorer', 'tags' => [ [ 'key' => '<string>', 'value' => '<string>', ], // ... ], ]
Result Details
Members
- accountId
-
- Type: string
The account that the recommendation is for.
- actionType
-
- Type: string
The type of action you can take by adopting the recommendation.
- costCalculationLookbackPeriodInDays
-
- Type: int
The lookback period used to calculate cost impact for a recommendation.
- currencyCode
-
- Type: string
The currency code used for the recommendation.
- currentResourceDetails
-
- Type: ResourceDetails structure
The details for the resource.
- currentResourceType
-
- Type: string
The type of resource.
- estimatedMonthlyCost
-
- Type: double
The estimated monthly cost of the current resource. For Reserved Instances and Savings Plans, it refers to the cost for eligible usage.
- estimatedMonthlySavings
-
- Type: double
The estimated monthly savings amount for the recommendation.
- estimatedSavingsOverCostCalculationLookbackPeriod
-
- Type: double
The estimated savings amount over the lookback period used to calculate cost impact for a recommendation.
- estimatedSavingsPercentage
-
- Type: double
The estimated savings percentage relative to the total cost over the cost calculation lookback period.
- implementationEffort
-
- Type: string
The effort required to implement the recommendation.
- lastRefreshTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The time when the recommendation was last generated.
- recommendationId
-
- Type: string
The ID for the recommendation.
- recommendationLookbackPeriodInDays
-
- Type: int
The lookback period that's used to generate the recommendation.
- recommendedResourceDetails
-
- Type: ResourceDetails structure
The details about the recommended resource.
- recommendedResourceType
-
- Type: string
The resource type of the recommendation.
- region
-
- Type: string
The Amazon Web Services Region of the resource.
- resourceArn
-
- Type: string
The Amazon Resource Name (ARN) of the resource.
- resourceId
-
- Type: string
The unique identifier for the resource. This is the same as the Amazon Resource Name (ARN), if available.
- restartNeeded
-
- Type: boolean
Whether or not implementing the recommendation requires a restart.
- rollbackPossible
-
- Type: boolean
Whether or not implementing the recommendation can be rolled back.
- source
-
- Type: string
The source of the recommendation.
- tags
-
- Type: Array of Tag structures
A list of tags associated with the resource for which the recommendation exists.
Errors
- ValidationException:
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- InternalServerException:
An error on the server occurred during the processing of your request. Try again later.
- AccessDeniedException:
You are not authorized to use this operation with the given parameters.
- ResourceNotFoundException:
The specified Amazon Resource Name (ARN) in the request doesn't exist.
- ThrottlingException:
The request was denied due to request throttling.
ListEnrollmentStatuses
$result = $client->listEnrollmentStatuses
([/* ... */]); $promise = $client->listEnrollmentStatusesAsync
([/* ... */]);
Retrieves the enrollment status for an account. It can also return the list of accounts that are enrolled under the organization.
Parameter Syntax
$result = $client->listEnrollmentStatuses([ 'accountId' => '<string>', 'includeOrganizationInfo' => true || false, 'maxResults' => <integer>, 'nextToken' => '<string>', ]);
Parameter Details
Members
- accountId
-
- Type: string
The account ID of a member account in the organization.
- includeOrganizationInfo
-
- Type: boolean
Indicates whether to return the enrollment status for the organization.
- maxResults
-
- Type: int
The maximum number of objects that are returned for the request.
- nextToken
-
- Type: string
The token to retrieve the next set of results.
Result Syntax
[ 'includeMemberAccounts' => true || false, 'items' => [ [ 'accountId' => '<string>', 'createdTimestamp' => <DateTime>, 'lastUpdatedTimestamp' => <DateTime>, 'status' => 'Active|Inactive', ], // ... ], 'nextToken' => '<string>', ]
Result Details
Members
- includeMemberAccounts
-
- Type: boolean
The enrollment status of all member accounts in the organization if the account is the management account or delegated administrator.
- items
-
- Type: Array of AccountEnrollmentStatus structures
The enrollment status of a specific account ID, including creation and last updated timestamps.
- nextToken
-
- Type: string
The token to retrieve the next set of results.
Errors
- ValidationException:
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- InternalServerException:
An error on the server occurred during the processing of your request. Try again later.
- AccessDeniedException:
You are not authorized to use this operation with the given parameters.
- ThrottlingException:
The request was denied due to request throttling.
ListRecommendationSummaries
$result = $client->listRecommendationSummaries
([/* ... */]); $promise = $client->listRecommendationSummariesAsync
([/* ... */]);
Returns a concise representation of savings estimates for resources. Also returns de-duped savings across different types of recommendations.
The following filters are not supported for this API: recommendationIds
, resourceArns
, and resourceIds
.
Parameter Syntax
$result = $client->listRecommendationSummaries([ 'filter' => [ 'accountIds' => ['<string>', ...], 'actionTypes' => ['<string>', ...], 'implementationEfforts' => ['<string>', ...], 'recommendationIds' => ['<string>', ...], 'regions' => ['<string>', ...], 'resourceArns' => ['<string>', ...], 'resourceIds' => ['<string>', ...], 'resourceTypes' => ['<string>', ...], 'restartNeeded' => true || false, 'rollbackPossible' => true || false, 'tags' => [ [ 'key' => '<string>', 'value' => '<string>', ], // ... ], ], 'groupBy' => '<string>', // REQUIRED 'maxResults' => <integer>, 'metrics' => ['<string>', ...], 'nextToken' => '<string>', ]);
Parameter Details
Members
- filter
-
- Type: Filter structure
Describes a filter that returns a more specific list of recommendations. Filters recommendations by different dimensions.
- groupBy
-
- Required: Yes
- Type: string
The grouping of recommendations by a dimension.
- maxResults
-
- Type: int
The maximum number of recommendations to be returned for the request.
- metrics
-
- Type: Array of strings
Additional metrics to be returned for the request. The only valid value is
savingsPercentage
. - nextToken
-
- Type: string
The token to retrieve the next set of results.
Result Syntax
[ 'currencyCode' => '<string>', 'estimatedTotalDedupedSavings' => <float>, 'groupBy' => '<string>', 'items' => [ [ 'estimatedMonthlySavings' => <float>, 'group' => '<string>', 'recommendationCount' => <integer>, ], // ... ], 'metrics' => [ 'savingsPercentage' => '<string>', ], 'nextToken' => '<string>', ]
Result Details
Members
- currencyCode
-
- Type: string
The currency code used for the recommendation.
- estimatedTotalDedupedSavings
-
- Type: double
The total overall savings for the aggregated view.
- groupBy
-
- Type: string
The dimension used to group the recommendations by.
- items
-
- Type: Array of RecommendationSummary structures
A list of all savings recommendations.
- metrics
-
- Type: SummaryMetricsResult structure
The results or descriptions for the additional metrics, based on whether the metrics were or were not requested.
- nextToken
-
- Type: string
The token to retrieve the next set of results.
Errors
- ValidationException:
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- InternalServerException:
An error on the server occurred during the processing of your request. Try again later.
- AccessDeniedException:
You are not authorized to use this operation with the given parameters.
- ThrottlingException:
The request was denied due to request throttling.
ListRecommendations
$result = $client->listRecommendations
([/* ... */]); $promise = $client->listRecommendationsAsync
([/* ... */]);
Returns a list of recommendations.
Parameter Syntax
$result = $client->listRecommendations([ 'filter' => [ 'accountIds' => ['<string>', ...], 'actionTypes' => ['<string>', ...], 'implementationEfforts' => ['<string>', ...], 'recommendationIds' => ['<string>', ...], 'regions' => ['<string>', ...], 'resourceArns' => ['<string>', ...], 'resourceIds' => ['<string>', ...], 'resourceTypes' => ['<string>', ...], 'restartNeeded' => true || false, 'rollbackPossible' => true || false, 'tags' => [ [ 'key' => '<string>', 'value' => '<string>', ], // ... ], ], 'includeAllRecommendations' => true || false, 'maxResults' => <integer>, 'nextToken' => '<string>', 'orderBy' => [ 'dimension' => '<string>', 'order' => 'Asc|Desc', ], ]);
Parameter Details
Members
- filter
-
- Type: Filter structure
The constraints that you want all returned recommendations to match.
- includeAllRecommendations
-
- Type: boolean
List of all recommendations for a resource, or a single recommendation if de-duped by
resourceId
. - maxResults
-
- Type: int
The maximum number of recommendations that are returned for the request.
- nextToken
-
- Type: string
The token to retrieve the next set of results.
- orderBy
-
- Type: OrderBy structure
The ordering of recommendations by a dimension.
Result Syntax
[ 'items' => [ [ 'accountId' => '<string>', 'actionType' => '<string>', 'currencyCode' => '<string>', 'currentResourceSummary' => '<string>', 'currentResourceType' => '<string>', 'estimatedMonthlyCost' => <float>, 'estimatedMonthlySavings' => <float>, 'estimatedSavingsPercentage' => <float>, 'implementationEffort' => '<string>', 'lastRefreshTimestamp' => <DateTime>, 'recommendationId' => '<string>', 'recommendationLookbackPeriodInDays' => <integer>, 'recommendedResourceSummary' => '<string>', 'recommendedResourceType' => '<string>', 'region' => '<string>', 'resourceArn' => '<string>', 'resourceId' => '<string>', 'restartNeeded' => true || false, 'rollbackPossible' => true || false, 'source' => 'ComputeOptimizer|CostExplorer', 'tags' => [ [ 'key' => '<string>', 'value' => '<string>', ], // ... ], ], // ... ], 'nextToken' => '<string>', ]
Result Details
Members
- items
-
- Type: Array of Recommendation structures
List of all savings recommendations.
- nextToken
-
- Type: string
The token to retrieve the next set of results.
Errors
- ValidationException:
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- InternalServerException:
An error on the server occurred during the processing of your request. Try again later.
- AccessDeniedException:
You are not authorized to use this operation with the given parameters.
- ThrottlingException:
The request was denied due to request throttling.
UpdateEnrollmentStatus
$result = $client->updateEnrollmentStatus
([/* ... */]); $promise = $client->updateEnrollmentStatusAsync
([/* ... */]);
Updates the enrollment (opt in and opt out) status of an account to the Cost Optimization Hub service.
If the account is a management account or delegated administrator of an organization, this action can also be used to enroll member accounts of the organization.
You must have the appropriate permissions to opt in to Cost Optimization Hub and to view its recommendations. When you opt in, Cost Optimization Hub automatically creates a service-linked role in your account to access its data.
Parameter Syntax
$result = $client->updateEnrollmentStatus([ 'includeMemberAccounts' => true || false, 'status' => 'Active|Inactive', // REQUIRED ]);
Parameter Details
Members
- includeMemberAccounts
-
- Type: boolean
Indicates whether to enroll member accounts of the organization if the account is the management account or delegated administrator.
- status
-
- Required: Yes
- Type: string
Sets the account status.
Result Syntax
[ 'status' => '<string>', ]
Result Details
Members
- status
-
- Type: string
The enrollment status of the account.
Errors
- ValidationException:
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- InternalServerException:
An error on the server occurred during the processing of your request. Try again later.
- AccessDeniedException:
You are not authorized to use this operation with the given parameters.
- ThrottlingException:
The request was denied due to request throttling.
UpdatePreferences
$result = $client->updatePreferences
([/* ... */]); $promise = $client->updatePreferencesAsync
([/* ... */]);
Updates a set of preferences for an account in order to add account-specific preferences into the service. These preferences impact how the savings associated with recommendations are presented.
Parameter Syntax
$result = $client->updatePreferences([ 'memberAccountDiscountVisibility' => 'All|None', 'savingsEstimationMode' => 'BeforeDiscounts|AfterDiscounts', ]);
Parameter Details
Members
- memberAccountDiscountVisibility
-
- Type: string
Sets the "member account discount visibility" preference.
- savingsEstimationMode
-
- Type: string
Sets the "savings estimation mode" preference.
Result Syntax
[ 'memberAccountDiscountVisibility' => 'All|None', 'savingsEstimationMode' => 'BeforeDiscounts|AfterDiscounts', ]
Result Details
Members
- memberAccountDiscountVisibility
-
- Type: string
Shows the status of the "member account discount visibility" preference.
- savingsEstimationMode
-
- Type: string
Shows the status of the "savings estimation mode" preference.
Errors
- ValidationException:
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- InternalServerException:
An error on the server occurred during the processing of your request. Try again later.
- AccessDeniedException:
You are not authorized to use this operation with the given parameters.
- ThrottlingException:
The request was denied due to request throttling.
Shapes
AccessDeniedException
Description
You are not authorized to use this operation with the given parameters.
Members
- message
-
- Required: Yes
- Type: string
AccountEnrollmentStatus
Description
Describes the enrollment status of an organization's member accounts in Cost Optimization Hub.
Members
- accountId
-
- Type: string
The Amazon Web Services account ID.
- createdTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The time when the account enrollment status was created.
- lastUpdatedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The time when the account enrollment status was last updated.
- status
-
- Type: string
The account enrollment status.
BlockStoragePerformanceConfiguration
Description
Describes the Amazon Elastic Block Store performance configuration of the current and recommended resource configuration for a recommendation.
Members
- iops
-
- Type: double
The number of I/O operations per second.
- throughput
-
- Type: double
The throughput that the volume supports.
ComputeConfiguration
Description
Describes the performance configuration for compute services such as Amazon EC2, Lambda, and ECS.
Members
- architecture
-
- Type: string
The architecture of the resource.
- memorySizeInMB
-
- Type: int
The memory size of the resource.
- platform
-
- Type: string
The platform of the resource. The platform is the specific combination of operating system, license model, and software on an instance.
- vCpu
-
- Type: double
The number of vCPU cores in the resource.
ComputeSavingsPlans
Description
The Compute Savings Plans recommendation details.
Members
- configuration
-
- Type: ComputeSavingsPlansConfiguration structure
Configuration details of the Compute Savings Plans to purchase.
- costCalculation
-
- Type: SavingsPlansCostCalculation structure
Cost impact of the Savings Plans purchase recommendation.
ComputeSavingsPlansConfiguration
Description
The Compute Savings Plans configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for. Amazon Web Services calculates recommendations including the management account and member accounts if the value is set to
PAYER
. If the value isLINKED
, recommendations are calculated for individual member accounts only. - hourlyCommitment
-
- Type: string
The hourly commitment for the Savings Plans type.
- paymentOption
-
- Type: string
The payment option for the commitment.
- term
-
- Type: string
The Savings Plans recommendation term in years.
DbInstanceConfiguration
Description
The DB instance configuration used for recommendations.
Members
- dbInstanceClass
-
- Type: string
The DB instance class of the DB instance.
EbsVolume
Description
Describes the Amazon Elastic Block Store volume configuration of the current and recommended resource configuration for a recommendation.
Members
- configuration
-
- Type: EbsVolumeConfiguration structure
The Amazon Elastic Block Store volume configuration used for recommendations.
- costCalculation
-
- Type: ResourceCostCalculation structure
Cost impact of the recommendation.
EbsVolumeConfiguration
Description
The Amazon Elastic Block Store volume configuration used for recommendations.
Members
- attachmentState
-
- Type: string
The Amazon Elastic Block Store attachment state.
- performance
-
- Type: BlockStoragePerformanceConfiguration structure
The Amazon Elastic Block Store performance configuration.
- storage
-
- Type: StorageConfiguration structure
The disk storage of the Amazon Elastic Block Store volume.
Ec2AutoScalingGroup
Description
The EC2 Auto Scaling group recommendation details.
Members
- configuration
-
- Type: Ec2AutoScalingGroupConfiguration structure
The EC2 Auto Scaling group configuration used for recommendations.
- costCalculation
-
- Type: ResourceCostCalculation structure
Cost impact of the recommendation.
Ec2AutoScalingGroupConfiguration
Description
The EC2 auto scaling group configuration used for recommendations.
Members
- instance
-
- Type: InstanceConfiguration structure
Details about the instance.
Ec2Instance
Description
Describes the EC2 instance configuration of the current and recommended resource configuration for a recommendation.
Members
- configuration
-
- Type: Ec2InstanceConfiguration structure
The EC2 instance configuration used for recommendations.
- costCalculation
-
- Type: ResourceCostCalculation structure
Cost impact of the recommendation.
Ec2InstanceConfiguration
Description
The EC2 instance configuration used for recommendations.
Members
- instance
-
- Type: InstanceConfiguration structure
Details about the instance.
Ec2InstanceSavingsPlans
Description
The EC2 instance Savings Plans recommendation details.
Members
- configuration
-
- Type: Ec2InstanceSavingsPlansConfiguration structure
The EC2 instance Savings Plans configuration used for recommendations.
- costCalculation
-
- Type: SavingsPlansCostCalculation structure
Cost impact of the Savings Plans purchase recommendation.
Ec2InstanceSavingsPlansConfiguration
Description
The EC2 instance Savings Plans configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for.
- hourlyCommitment
-
- Type: string
The hourly commitment for the Savings Plans type.
- instanceFamily
-
- Type: string
The instance family of the recommended Savings Plan.
- paymentOption
-
- Type: string
The payment option for the commitment.
- savingsPlansRegion
-
- Type: string
The Amazon Web Services Region of the commitment.
- term
-
- Type: string
The Savings Plans recommendation term in years.
Ec2ReservedInstances
Description
The EC2 reserved instances recommendation details.
Members
- configuration
-
- Type: Ec2ReservedInstancesConfiguration structure
The EC2 reserved instances configuration used for recommendations.
- costCalculation
-
- Type: ReservedInstancesCostCalculation structure
Cost impact of the purchase recommendation.
Ec2ReservedInstancesConfiguration
Description
The EC2 reserved instances configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for.
- currentGeneration
-
- Type: string
Determines whether the recommendation is for a current generation instance.
- instanceFamily
-
- Type: string
The instance family of the recommended reservation.
- instanceType
-
- Type: string
The type of instance that Amazon Web Services recommends.
- monthlyRecurringCost
-
- Type: string
How much purchasing reserved instances costs you on a monthly basis.
- normalizedUnitsToPurchase
-
- Type: string
The number of normalized units that Amazon Web Services recommends that you purchase.
- numberOfInstancesToPurchase
-
- Type: string
The number of instances that Amazon Web Services recommends that you purchase.
- offeringClass
-
- Type: string
Indicates whether the recommendation is for standard or convertible reservations.
- paymentOption
-
- Type: string
The payment option for the commitment.
- platform
-
- Type: string
The platform of the recommended reservation. The platform is the specific combination of operating system, license model, and software on an instance.
- reservedInstancesRegion
-
- Type: string
The Amazon Web Services Region of the commitment.
- service
-
- Type: string
The service that you want your recommendations for.
- sizeFlexEligible
-
- Type: boolean
Determines whether the recommendation is size flexible.
- tenancy
-
- Type: string
Determines whether the recommended reservation is dedicated or shared.
- term
-
- Type: string
The reserved instances recommendation term in years.
- upfrontCost
-
- Type: string
How much purchasing this instance costs you upfront.
EcsService
Description
The ECS service recommendation details.
Members
- configuration
-
- Type: EcsServiceConfiguration structure
The ECS service configuration used for recommendations.
- costCalculation
-
- Type: ResourceCostCalculation structure
Cost impact of the recommendation.
EcsServiceConfiguration
Description
The ECS service configuration used for recommendations.
Members
- compute
-
- Type: ComputeConfiguration structure
Details about the compute configuration.
ElastiCacheReservedInstances
Description
The ElastiCache reserved instances recommendation details.
Members
- configuration
-
- Type: ElastiCacheReservedInstancesConfiguration structure
The ElastiCache reserved instances configuration used for recommendations.
- costCalculation
-
- Type: ReservedInstancesCostCalculation structure
Cost impact of the purchase recommendation.
ElastiCacheReservedInstancesConfiguration
Description
The ElastiCache reserved instances configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for.
- currentGeneration
-
- Type: string
Determines whether the recommendation is for a current generation instance.
- instanceFamily
-
- Type: string
The instance family of the recommended reservation.
- instanceType
-
- Type: string
The type of instance that Amazon Web Services recommends.
- monthlyRecurringCost
-
- Type: string
How much purchasing reserved instances costs you on a monthly basis.
- normalizedUnitsToPurchase
-
- Type: string
The number of normalized units that Amazon Web Services recommends that you purchase.
- numberOfInstancesToPurchase
-
- Type: string
The number of instances that Amazon Web Services recommends that you purchase.
- paymentOption
-
- Type: string
The payment option for the commitment.
- reservedInstancesRegion
-
- Type: string
The Amazon Web Services Region of the commitment.
- service
-
- Type: string
The service that you want your recommendations for.
- sizeFlexEligible
-
- Type: boolean
Determines whether the recommendation is size flexible.
- term
-
- Type: string
The reserved instances recommendation term in years.
- upfrontCost
-
- Type: string
How much purchasing this instance costs you upfront.
EstimatedDiscounts
Description
Estimated discount details of the current and recommended resource configuration for a recommendation.
Members
- otherDiscount
-
- Type: double
Estimated other discounts include all discounts that are not itemized. Itemized discounts include
reservedInstanceDiscount
andsavingsPlansDiscount
. - reservedInstancesDiscount
-
- Type: double
Estimated reserved instance discounts.
- savingsPlansDiscount
-
- Type: double
Estimated Savings Plans discounts.
Filter
Description
Describes a filter that returns a more specific list of recommendations. Filters recommendations by different dimensions.
Members
- accountIds
-
- Type: Array of strings
The account that the recommendation is for.
- actionTypes
-
- Type: Array of strings
The type of action you can take by adopting the recommendation.
- implementationEfforts
-
- Type: Array of strings
The effort required to implement the recommendation.
- recommendationIds
-
- Type: Array of strings
The IDs for the recommendations.
- regions
-
- Type: Array of strings
The Amazon Web Services Region of the resource.
- resourceArns
-
- Type: Array of strings
The Amazon Resource Name (ARN) of the recommendation.
- resourceIds
-
- Type: Array of strings
The resource ID of the recommendation.
- resourceTypes
-
- Type: Array of strings
The resource type of the recommendation.
- restartNeeded
-
- Type: boolean
Whether or not implementing the recommendation requires a restart.
- rollbackPossible
-
- Type: boolean
Whether or not implementing the recommendation can be rolled back.
- tags
-
- Type: Array of Tag structures
A list of tags assigned to the recommendation.
InstanceConfiguration
Description
The Instance configuration used for recommendations.
Members
- type
-
- Type: string
Details about the type.
InternalServerException
Description
An error on the server occurred during the processing of your request. Try again later.
Members
- message
-
- Required: Yes
- Type: string
LambdaFunction
Description
The Lambda function recommendation details.
Members
- configuration
-
- Type: LambdaFunctionConfiguration structure
The Lambda function configuration used for recommendations.
- costCalculation
-
- Type: ResourceCostCalculation structure
Cost impact of the recommendation.
LambdaFunctionConfiguration
Description
The Lambda function configuration used for recommendations.
Members
- compute
-
- Type: ComputeConfiguration structure
Details about the compute configuration.
OpenSearchReservedInstances
Description
The OpenSearch reserved instances recommendation details.
Members
- configuration
-
- Type: OpenSearchReservedInstancesConfiguration structure
The OpenSearch reserved instances configuration used for recommendations.
- costCalculation
-
- Type: ReservedInstancesCostCalculation structure
Cost impact of the purchase recommendation.
OpenSearchReservedInstancesConfiguration
Description
The OpenSearch reserved instances configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for.
- currentGeneration
-
- Type: string
Determines whether the recommendation is for a current generation instance.
- instanceType
-
- Type: string
The type of instance that Amazon Web Services recommends.
- monthlyRecurringCost
-
- Type: string
How much purchasing reserved instances costs you on a monthly basis.
- normalizedUnitsToPurchase
-
- Type: string
The number of normalized units that Amazon Web Services recommends that you purchase.
- numberOfInstancesToPurchase
-
- Type: string
The number of instances that Amazon Web Services recommends that you purchase.
- paymentOption
-
- Type: string
The payment option for the commitment.
- reservedInstancesRegion
-
- Type: string
The Amazon Web Services Region of the commitment.
- service
-
- Type: string
The service that you want your recommendations for.
- sizeFlexEligible
-
- Type: boolean
Determines whether the recommendation is size flexible.
- term
-
- Type: string
The reserved instances recommendation term in years.
- upfrontCost
-
- Type: string
How much purchasing this instance costs you upfront.
OrderBy
Description
Defines how rows will be sorted in the response.
Members
- dimension
-
- Type: string
Sorts by dimension values.
- order
-
- Type: string
The order that's used to sort the data.
RdsDbInstance
Description
Contains the details of an Amazon RDS DB instance.
Members
- configuration
-
- Type: RdsDbInstanceConfiguration structure
The Amazon RDS DB instance configuration used for recommendations.
- costCalculation
-
- Type: ResourceCostCalculation structure
Cost impact of the resource recommendation.
RdsDbInstanceConfiguration
Description
The Amazon RDS DB instance configuration used for recommendations.
Members
- instance
-
- Type: DbInstanceConfiguration structure
Details about the instance configuration.
RdsDbInstanceStorage
Description
Contains the details of an Amazon RDS DB instance storage.
Members
- configuration
-
- Type: RdsDbInstanceStorageConfiguration structure
The Amazon RDS DB instance storage configuration used for recommendations.
- costCalculation
-
- Type: ResourceCostCalculation structure
Cost impact of the resource recommendation.
RdsDbInstanceStorageConfiguration
Description
The Amazon RDS DB instance storage configuration used for recommendations.
Members
- allocatedStorageInGb
-
- Type: double
The new amount of storage in GB to allocate for the DB instance.
- iops
-
- Type: double
The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.
- storageThroughput
-
- Type: double
The storage throughput for the DB instance.
- storageType
-
- Type: string
The storage type to associate with the DB instance.
RdsReservedInstances
Description
The RDS reserved instances recommendation details.
Members
- configuration
-
- Type: RdsReservedInstancesConfiguration structure
The RDS reserved instances configuration used for recommendations.
- costCalculation
-
- Type: ReservedInstancesCostCalculation structure
Cost impact of the purchase recommendation.
RdsReservedInstancesConfiguration
Description
The RDS reserved instances configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for.
- currentGeneration
-
- Type: string
Determines whether the recommendation is for a current generation instance.
- databaseEdition
-
- Type: string
The database edition that the recommended reservation supports.
- databaseEngine
-
- Type: string
The database engine that the recommended reservation supports.
- deploymentOption
-
- Type: string
Determines whether the recommendation is for a reservation in a single Availability Zone or a reservation with a backup in a second Availability Zone.
- instanceFamily
-
- Type: string
The instance family of the recommended reservation.
- instanceType
-
- Type: string
The type of instance that Amazon Web Services recommends.
- licenseModel
-
- Type: string
The license model that the recommended reservation supports.
- monthlyRecurringCost
-
- Type: string
How much purchasing this instance costs you on a monthly basis.
- normalizedUnitsToPurchase
-
- Type: string
The number of normalized units that Amazon Web Services recommends that you purchase.
- numberOfInstancesToPurchase
-
- Type: string
The number of instances that Amazon Web Services recommends that you purchase.
- paymentOption
-
- Type: string
The payment option for the commitment.
- reservedInstancesRegion
-
- Type: string
The Amazon Web Services Region of the commitment.
- service
-
- Type: string
The service that you want your recommendations for.
- sizeFlexEligible
-
- Type: boolean
Determines whether the recommendation is size flexible.
- term
-
- Type: string
The reserved instances recommendation term in years.
- upfrontCost
-
- Type: string
How much purchasing this instance costs you upfront.
Recommendation
Description
Describes a recommendation.
Members
- accountId
-
- Type: string
The account that the recommendation is for.
- actionType
-
- Type: string
The type of tasks that can be carried out by this action.
- currencyCode
-
- Type: string
The currency code used for the recommendation.
- currentResourceSummary
-
- Type: string
Describes the current resource.
- currentResourceType
-
- Type: string
The current resource type.
- estimatedMonthlyCost
-
- Type: double
The estimated monthly cost of the current resource. For Reserved Instances and Savings Plans, it refers to the cost for eligible usage.
- estimatedMonthlySavings
-
- Type: double
The estimated monthly savings amount for the recommendation.
- estimatedSavingsPercentage
-
- Type: double
The estimated savings percentage relative to the total cost over the cost calculation lookback period.
- implementationEffort
-
- Type: string
The effort required to implement the recommendation.
- lastRefreshTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The time when the recommendation was last generated.
- recommendationId
-
- Type: string
The ID for the recommendation.
- recommendationLookbackPeriodInDays
-
- Type: int
The lookback period that's used to generate the recommendation.
- recommendedResourceSummary
-
- Type: string
Describes the recommended resource.
- recommendedResourceType
-
- Type: string
The recommended resource type.
- region
-
- Type: string
The Amazon Web Services Region of the resource.
- resourceArn
-
- Type: string
The Amazon Resource Name (ARN) for the recommendation.
- resourceId
-
- Type: string
The resource ID for the recommendation.
- restartNeeded
-
- Type: boolean
Whether or not implementing the recommendation requires a restart.
- rollbackPossible
-
- Type: boolean
Whether or not implementing the recommendation can be rolled back.
- source
-
- Type: string
The source of the recommendation.
- tags
-
- Type: Array of Tag structures
A list of tags assigned to the recommendation.
RecommendationSummary
Description
The summary of rightsizing recommendations, including de-duped savings from all types of recommendations.
Members
- estimatedMonthlySavings
-
- Type: double
The estimated total savings resulting from modifications, on a monthly basis.
- group
-
- Type: string
The grouping of recommendations.
- recommendationCount
-
- Type: int
The total number of instance recommendations.
RedshiftReservedInstances
Description
The Redshift reserved instances recommendation details.
Members
- configuration
-
- Type: RedshiftReservedInstancesConfiguration structure
The Redshift reserved instances configuration used for recommendations.
- costCalculation
-
- Type: ReservedInstancesCostCalculation structure
Cost impact of the purchase recommendation.
RedshiftReservedInstancesConfiguration
Description
The Redshift reserved instances configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for.
- currentGeneration
-
- Type: string
Determines whether the recommendation is for a current generation instance.
- instanceFamily
-
- Type: string
The instance family of the recommended reservation.
- instanceType
-
- Type: string
The type of instance that Amazon Web Services recommends.
- monthlyRecurringCost
-
- Type: string
How much purchasing reserved instances costs you on a monthly basis.
- normalizedUnitsToPurchase
-
- Type: string
The number of normalized units that Amazon Web Services recommends that you purchase.
- numberOfInstancesToPurchase
-
- Type: string
The number of instances that Amazon Web Services recommends that you purchase.
- paymentOption
-
- Type: string
The payment option for the commitment.
- reservedInstancesRegion
-
- Type: string
The Amazon Web Services Region of the commitment.
- service
-
- Type: string
The service that you want your recommendations for.
- sizeFlexEligible
-
- Type: boolean
Determines whether the recommendation is size flexible.
- term
-
- Type: string
The reserved instances recommendation term in years.
- upfrontCost
-
- Type: string
How much purchasing this instance costs you upfront.
ReservedInstancesCostCalculation
Description
Cost impact of the purchase recommendation.
Members
- pricing
-
- Type: ReservedInstancesPricing structure
Pricing details of the purchase recommendation.
ReservedInstancesPricing
Description
Pricing details for your recommended reserved instance.
Members
- estimatedMonthlyAmortizedReservationCost
-
- Type: double
The estimated cost of your recurring monthly fees for the recommended reserved instance across the month.
- estimatedOnDemandCost
-
- Type: double
The remaining On-Demand cost estimated to not be covered by the recommended reserved instance, over the length of the lookback period.
- monthlyReservationEligibleCost
-
- Type: double
The cost of paying for the recommended reserved instance monthly.
- savingsPercentage
-
- Type: double
The savings percentage relative to the total On-Demand costs that are associated with this instance.
ResourceCostCalculation
Description
Cost impact of the resource recommendation.
Members
- pricing
-
- Type: ResourcePricing structure
Pricing details of the resource recommendation.
- usages
-
- Type: Array of Usage structures
Usage details of the resource recommendation.
ResourceDetails
Description
Contains detailed information about the specified resource.
Members
- computeSavingsPlans
-
- Type: ComputeSavingsPlans structure
The Compute Savings Plans recommendation details.
- ebsVolume
-
- Type: EbsVolume structure
The Amazon Elastic Block Store volume recommendation details.
- ec2AutoScalingGroup
-
- Type: Ec2AutoScalingGroup structure
The EC2 Auto Scaling group recommendation details.
- ec2Instance
-
- Type: Ec2Instance structure
The EC2 instance recommendation details.
- ec2InstanceSavingsPlans
-
- Type: Ec2InstanceSavingsPlans structure
The EC2 instance Savings Plans recommendation details.
- ec2ReservedInstances
-
- Type: Ec2ReservedInstances structure
The EC2 reserved instances recommendation details.
- ecsService
-
- Type: EcsService structure
The ECS service recommendation details.
- elastiCacheReservedInstances
-
- Type: ElastiCacheReservedInstances structure
The ElastiCache reserved instances recommendation details.
- lambdaFunction
-
- Type: LambdaFunction structure
The Lambda function recommendation details.
- openSearchReservedInstances
-
- Type: OpenSearchReservedInstances structure
The OpenSearch reserved instances recommendation details.
- rdsDbInstance
-
- Type: RdsDbInstance structure
The DB instance recommendation details.
- rdsDbInstanceStorage
-
- Type: RdsDbInstanceStorage structure
The DB instance storage recommendation details.
- rdsReservedInstances
-
- Type: RdsReservedInstances structure
The RDS reserved instances recommendation details.
- redshiftReservedInstances
-
- Type: RedshiftReservedInstances structure
The Redshift reserved instances recommendation details.
- sageMakerSavingsPlans
-
- Type: SageMakerSavingsPlans structure
The SageMaker Savings Plans recommendation details.
ResourceNotFoundException
Description
The specified Amazon Resource Name (ARN) in the request doesn't exist.
Members
- message
-
- Required: Yes
- Type: string
- resourceId
-
- Required: Yes
- Type: string
The identifier of the resource that was not found.
ResourcePricing
Description
Contains pricing information about the specified resource.
Members
- estimatedCostAfterDiscounts
-
- Type: double
The savings estimate incorporating all discounts with Amazon Web Services, such as Reserved Instances and Savings Plans.
- estimatedCostBeforeDiscounts
-
- Type: double
The savings estimate using Amazon Web Services public pricing without incorporating any discounts.
- estimatedDiscounts
-
- Type: EstimatedDiscounts structure
The estimated discounts for a recommendation.
- estimatedNetUnusedAmortizedCommitments
-
- Type: double
The estimated net unused amortized commitment for the recommendation.
SageMakerSavingsPlans
Description
The SageMaker Savings Plans recommendation details.
Members
- configuration
-
- Type: SageMakerSavingsPlansConfiguration structure
The SageMaker Savings Plans configuration used for recommendations.
- costCalculation
-
- Type: SavingsPlansCostCalculation structure
Cost impact of the Savings Plans purchase recommendation.
SageMakerSavingsPlansConfiguration
Description
The SageMaker Savings Plans configuration used for recommendations.
Members
- accountScope
-
- Type: string
The account scope that you want your recommendations for.
- hourlyCommitment
-
- Type: string
The hourly commitment for the Savings Plans type.
- paymentOption
-
- Type: string
The payment option for the commitment.
- term
-
- Type: string
The Savings Plans recommendation term in years.
SavingsPlansCostCalculation
Description
Cost impact of the purchase recommendation.
Members
- pricing
-
- Type: SavingsPlansPricing structure
Pricing details of the purchase recommendation.
SavingsPlansPricing
Description
Pricing information about a Savings Plan.
Members
- estimatedMonthlyCommitment
-
- Type: double
Estimated monthly commitment for the Savings Plan.
- estimatedOnDemandCost
-
- Type: double
Estimated On-Demand cost you will pay after buying the Savings Plan.
- monthlySavingsPlansEligibleCost
-
- Type: double
The cost of paying for the recommended Savings Plan monthly.
- savingsPercentage
-
- Type: double
Estimated savings as a percentage of your overall costs after buying the Savings Plan.
StorageConfiguration
Description
The storage configuration used for recommendations.
Members
- sizeInGb
-
- Type: double
The storage volume.
- type
-
- Type: string
The storage type.
SummaryMetricsResult
Description
The results or descriptions for the additional metrics, based on whether the metrics were or were not requested.
Members
- savingsPercentage
-
- Type: string
The savings percentage based on your Amazon Web Services spend over the past 30 days.
Savings percentage is only supported when filtering by Region, account ID, or tags.
Tag
Description
The tag structure that contains a tag key and value.
Members
- key
-
- Type: string
The key that's associated with the tag.
- value
-
- Type: string
The value that's associated with the tag.
ThrottlingException
Description
The request was denied due to request throttling.
Members
- message
-
- Type: string
Usage
Description
Details about the usage.
Members
- operation
-
- Type: string
The operation value.
- productCode
-
- Type: string
The product code.
- unit
-
- Type: string
The usage unit.
- usageAmount
-
- Type: double
The usage amount.
- usageType
-
- Type: string
The usage type.
ValidationException
Description
The input fails to satisfy the constraints specified by an Amazon Web Services service.
Members
- fields
-
- Type: Array of ValidationExceptionDetail structures
The list of fields that are invalid.
- message
-
- Required: Yes
- Type: string
- reason
-
- Type: string
The reason for the validation exception.
ValidationExceptionDetail
Description
The input failed to meet the constraints specified by the Amazon Web Services service in a specified field.
Members
- fieldName
-
- Required: Yes
- Type: string
The field name where the invalid entry was detected.
- message
-
- Required: Yes
- Type: string
A message with the reason for the validation exception error.