Compute Optimizer Automation 2025-09-22
- Client: Aws\ComputeOptimizerAutomation\ComputeOptimizerAutomationClient
- Service ID: compute-optimizer-automation
- Version: 2025-09-22
This page describes the parameters and results for the operations of the Compute Optimizer Automation (2025-09-22), and shows how to use the Aws\ComputeOptimizerAutomation\ComputeOptimizerAutomationClient object to call the described operations. This documentation is specific to the 2025-09-22 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 */).
- AssociateAccounts ( array $params = [] )
- Associates one or more member accounts with your organization's management account, enabling centralized implementation of optimization actions across those accounts.
- CreateAutomationRule ( array $params = [] )
- Creates a new automation rule to apply recommended actions to resources based on specified criteria.
- DeleteAutomationRule ( array $params = [] )
- Deletes an existing automation rule.
- DisassociateAccounts ( array $params = [] )
- Disassociates member accounts from your organization's management account, removing centralized automation capabilities.
- GetAutomationEvent ( array $params = [] )
- Retrieves details about a specific automation event.
- GetAutomationRule ( array $params = [] )
- Retrieves details about a specific automation rule.
- GetEnrollmentConfiguration ( array $params = [] )
- Retrieves the current enrollment configuration for Compute Optimizer Automation.
- ListAccounts ( array $params = [] )
- Lists the accounts in your organization that are enrolled in Compute Optimizer and whether they have enabled Automation.
- ListAutomationEventSteps ( array $params = [] )
- Lists the steps for a specific automation event.
- ListAutomationEventSummaries ( array $params = [] )
- Provides a summary of automation events based on specified filters.
- ListAutomationEvents ( array $params = [] )
- Lists automation events based on specified filters.
- ListAutomationRulePreview ( array $params = [] )
- Returns a preview of the recommended actions that match your Automation rule's configuration and criteria.
- ListAutomationRulePreviewSummaries ( array $params = [] )
- Returns a summary of the recommended actions that match your rule preview configuration and criteria.
- ListAutomationRules ( array $params = [] )
- Lists the automation rules that match specified filters.
- ListRecommendedActionSummaries ( array $params = [] )
- Provides a summary of recommended actions based on specified filters.
- ListRecommendedActions ( array $params = [] )
- Lists the recommended actions based that match specified filters.
- ListTagsForResource ( array $params = [] )
- Lists the tags for a specified resource.
- RollbackAutomationEvent ( array $params = [] )
- Initiates a rollback for a completed automation event.
- StartAutomationEvent ( array $params = [] )
- Initiates a one-time, on-demand automation for the specified recommended action.
- TagResource ( array $params = [] )
- Adds tags to the specified resource.
- UntagResource ( array $params = [] )
- Removes tags from the specified resource.
- UpdateAutomationRule ( array $params = [] )
- Updates an existing automation rule.
- UpdateEnrollmentConfiguration ( array $params = [] )
- Updates your account’s Compute Optimizer Automation enrollment configuration.
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:
- ListAccounts
- ListAutomationEventSteps
- ListAutomationEventSummaries
- ListAutomationEvents
- ListAutomationRulePreview
- ListAutomationRulePreviewSummaries
- ListAutomationRules
- ListRecommendedActionSummaries
- ListRecommendedActions
Operations
AssociateAccounts
$result = $client->associateAccounts([/* ... */]); $promise = $client->associateAccountsAsync([/* ... */]);
Associates one or more member accounts with your organization's management account, enabling centralized implementation of optimization actions across those accounts. Once associated, the management account (or a delegated administrator) can apply recommended actions to the member account. When you associate a member account, its organization rule mode is automatically set to "Any allowed," which permits the management account to create Automation rules that automatically apply actions to that account. If the member account has not previously enabled the Automation feature, the association process automatically enables it.
Only the management account or a delegated administrator can perform this action.
Parameter Syntax
$result = $client->associateAccounts([
'accountIds' => ['<string>', ...], // REQUIRED
'clientToken' => '<string>',
]);
Parameter Details
Members
- accountIds
-
- Required: Yes
- Type: Array of strings
The IDs of the member accounts to associate. You can specify up to 50 account IDs.
- clientToken
-
- Type: string
A unique identifier to ensure idempotency of the request. Valid for 24 hours after creation.
Result Syntax
[
'accountIds' => ['<string>', ...],
'errors' => ['<string>', ...],
]
Result Details
Members
- accountIds
-
- Type: Array of strings
The IDs of the member accounts that were successfully associated.
- errors
-
- Type: Array of strings
Any errors that occurred during the association process.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- NotManagementAccountException:
The operation can only be performed by a management account.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
CreateAutomationRule
$result = $client->createAutomationRule([/* ... */]); $promise = $client->createAutomationRuleAsync([/* ... */]);
Creates a new automation rule to apply recommended actions to resources based on specified criteria.
Parameter Syntax
$result = $client->createAutomationRule([
'clientToken' => '<string>',
'criteria' => [
'ebsVolumeSizeInGib' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'ebsVolumeType' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'estimatedMonthlySavings' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<float>, ...],
],
// ...
],
'lookBackPeriodInDays' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'region' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceArn' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceTag' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'key' => '<string>',
'values' => ['<string>', ...],
],
// ...
],
'restartNeeded' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
],
'description' => '<string>',
'name' => '<string>', // REQUIRED
'organizationConfiguration' => [
'accountIds' => ['<string>', ...],
'ruleApplyOrder' => 'BeforeAccountRules|AfterAccountRules',
],
'priority' => '<string>',
'recommendedActionTypes' => ['<string>', ...], // REQUIRED
'ruleType' => 'OrganizationRule|AccountRule', // REQUIRED
'schedule' => [ // REQUIRED
'executionWindowInMinutes' => <integer>,
'scheduleExpression' => '<string>',
'scheduleExpressionTimezone' => '<string>',
],
'status' => 'Active|Inactive', // REQUIRED
'tags' => [
[
'key' => '<string>', // REQUIRED
'value' => '<string>', // REQUIRED
],
// ...
],
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique identifier to ensure idempotency of the request.
- criteria
-
- Type: Criteria structure
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time.
- description
-
- Type: string
A description of the automation rule.
- name
-
- Required: Yes
- Type: string
The name of the automation rule.
- organizationConfiguration
-
- Type: OrganizationConfiguration structure
Configuration for organization-level rules. Required for OrganizationRule type.
- priority
-
- Type: string
A string representation of a decimal number between 0 and 1 (having up to 30 digits after the decimal point) that determines the priority of the rule. When multiple rules match the same recommended action, Compute Optimizer assigns the action to the rule with the lowest priority value (highest priority), even if that rule is scheduled to run later than other matching rules.
- recommendedActionTypes
-
- Required: Yes
- Type: Array of strings
The types of recommended actions this rule will automate.
- ruleType
-
- Required: Yes
- Type: string
The type of rule.
Only the management account or a delegated administrator can set the ruleType to be OrganizationRule.
- schedule
-
- Required: Yes
- Type: Schedule structure
The schedule for when the rule should run.
- status
-
- Required: Yes
- Type: string
The status of the rule
- tags
-
- Type: Array of Tag structures
The tags to associate with the rule.
Result Syntax
[
'createdTimestamp' => <DateTime>,
'criteria' => [
'ebsVolumeSizeInGib' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'ebsVolumeType' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'estimatedMonthlySavings' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<float>, ...],
],
// ...
],
'lookBackPeriodInDays' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'region' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceArn' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceTag' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'key' => '<string>',
'values' => ['<string>', ...],
],
// ...
],
'restartNeeded' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
],
'description' => '<string>',
'name' => '<string>',
'organizationConfiguration' => [
'accountIds' => ['<string>', ...],
'ruleApplyOrder' => 'BeforeAccountRules|AfterAccountRules',
],
'priority' => '<string>',
'recommendedActionTypes' => ['<string>', ...],
'ruleArn' => '<string>',
'ruleId' => '<string>',
'ruleRevision' => <integer>,
'ruleType' => 'OrganizationRule|AccountRule',
'schedule' => [
'executionWindowInMinutes' => <integer>,
'scheduleExpression' => '<string>',
'scheduleExpressionTimezone' => '<string>',
],
'status' => 'Active|Inactive',
'tags' => [
[
'key' => '<string>',
'value' => '<string>',
],
// ...
],
]
Result Details
Members
- createdTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation rule was created.
- criteria
-
- Type: Criteria structure
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time. You can specify up to 20 conditions per filter criteria and 20 values per condition.
- description
-
- Type: string
A description of the automation rule. Can be up to 1024 characters long and contain alphanumeric characters, underscores, hyphens, spaces, and certain special characters.
- name
-
- Type: string
The name of the automation rule. Must be 1-128 characters long and contain only alphanumeric characters, underscores, and hyphens.
- organizationConfiguration
-
- Type: OrganizationConfiguration structure
Configuration settings for organization-wide rules, including rule application order and target account IDs.
- priority
-
- Type: string
The priority level of the automation rule, used to determine execution order when multiple rules apply to the same resource.
- recommendedActionTypes
-
- Type: Array of strings
List of recommended action types that this rule can execute, such as SnapshotAndDeleteUnattachedEbsVolume or UpgradeEbsVolumeType.
- ruleArn
-
- Type: string
The Amazon Resource Name (ARN) of the created rule.
- ruleId
-
- Type: string
The unique identifier of the created rule.
- ruleRevision
-
- Type: long (int|float)
The revision number of the automation rule. This is incremented each time the rule is updated.
- ruleType
-
- Type: string
The type of automation rule. Can be either OrganizationRule for organization-wide rules or AccountRule for account-specific rules.
- schedule
-
- Type: Schedule structure
The schedule configuration for when the automation rule should execute, including cron expression, timezone, and execution window.
- status
-
- Type: string
The current status of the automation rule. Can be Active or Inactive.
- tags
-
- Type: Array of Tag structures
A list of key-value pairs used to categorize and organize the automation rule. Maximum of 200 tags allowed.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- ResourceNotFoundException:
The specified resource was not found.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
- ServiceQuotaExceededException:
The request would exceed service quotas.
DeleteAutomationRule
$result = $client->deleteAutomationRule([/* ... */]); $promise = $client->deleteAutomationRuleAsync([/* ... */]);
Deletes an existing automation rule.
Parameter Syntax
$result = $client->deleteAutomationRule([
'clientToken' => '<string>',
'ruleArn' => '<string>', // REQUIRED
'ruleRevision' => <integer>, // REQUIRED
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique identifier to ensure idempotency of the request.
- ruleArn
-
- Required: Yes
- Type: string
The ARN of the rule to delete.
- ruleRevision
-
- Required: Yes
- Type: long (int|float)
The revision number of the rule to delete.
Result Syntax
[]
Result Details
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
DisassociateAccounts
$result = $client->disassociateAccounts([/* ... */]); $promise = $client->disassociateAccountsAsync([/* ... */]);
Disassociates member accounts from your organization's management account, removing centralized automation capabilities. Once disassociated, organization rules no longer apply to the member account, and the management account (or delegated administrator) cannot create Automation rules for that account.
Only the management account or a delegated administrator can perform this action.
Parameter Syntax
$result = $client->disassociateAccounts([
'accountIds' => ['<string>', ...], // REQUIRED
'clientToken' => '<string>',
]);
Parameter Details
Members
- accountIds
-
- Required: Yes
- Type: Array of strings
The IDs of the member accounts to disassociate.
- clientToken
-
- Type: string
A unique identifier to ensure idempotency of the request.
Result Syntax
[
'accountIds' => ['<string>', ...],
'errors' => ['<string>', ...],
]
Result Details
Members
- accountIds
-
- Type: Array of strings
The IDs of the member accounts that were successfully disassociated.
- errors
-
- Type: Array of strings
Any errors that occurred during the disassociation process.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- NotManagementAccountException:
The operation can only be performed by a management account.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
GetAutomationEvent
$result = $client->getAutomationEvent([/* ... */]); $promise = $client->getAutomationEventAsync([/* ... */]);
Retrieves details about a specific automation event.
Parameter Syntax
$result = $client->getAutomationEvent([
'eventId' => '<string>', // REQUIRED
]);
Parameter Details
Members
- eventId
-
- Required: Yes
- Type: string
The ID of the automation event to retrieve.
Result Syntax
[
'accountId' => '<string>',
'completedTimestamp' => <DateTime>,
'createdTimestamp' => <DateTime>,
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
'eventDescription' => '<string>',
'eventId' => '<string>',
'eventStatus' => 'Ready|InProgress|Complete|Failed|Cancelled|RollbackReady|RollbackInProgress|RollbackComplete|RollbackFailed',
'eventStatusReason' => '<string>',
'eventType' => 'SnapshotAndDeleteUnattachedEbsVolume|UpgradeEbsVolumeType',
'recommendedActionId' => '<string>',
'region' => '<string>',
'resourceArn' => '<string>',
'resourceId' => '<string>',
'resourceType' => 'EbsVolume',
'ruleId' => '<string>',
]
Result Details
Members
- accountId
-
- Type: string
The Amazon Web Services account ID associated with the automation event.
- completedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation event completed.
- createdTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation event was created.
- estimatedMonthlySavings
-
- Type: EstimatedMonthlySavings structure
Contains information about estimated monthly cost savings.
- eventDescription
-
- Type: string
A description of the automation event.
- eventId
-
- Type: string
The ID of the automation event to retrieve.
- eventStatus
-
- Type: string
The current status of the automation event.
- eventStatusReason
-
- Type: string
The reason for the current event status.
- eventType
-
- Type: string
The type of automation event.
- recommendedActionId
-
- Type: string
The ID of the recommended action associated with this automation event.
- region
-
- Type: string
The Amazon Web Services Region where the automation event occurred.
- resourceArn
-
- Type: string
The Amazon Resource Name (ARN) of the resource affected by the automation event.
- resourceId
-
- Type: string
The ID of the resource affected by the automation event.
- resourceType
-
- Type: string
The type of resource affected by the automation event.
- ruleId
-
- Type: string
The ID of the automation rule that triggered this event.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- ResourceNotFoundException:
The specified resource was not found.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
GetAutomationRule
$result = $client->getAutomationRule([/* ... */]); $promise = $client->getAutomationRuleAsync([/* ... */]);
Retrieves details about a specific automation rule.
Parameter Syntax
$result = $client->getAutomationRule([
'ruleArn' => '<string>', // REQUIRED
]);
Parameter Details
Members
- ruleArn
-
- Required: Yes
- Type: string
The ARN of the rule to retrieve.
Result Syntax
[
'accountId' => '<string>',
'createdTimestamp' => <DateTime>,
'criteria' => [
'ebsVolumeSizeInGib' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'ebsVolumeType' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'estimatedMonthlySavings' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<float>, ...],
],
// ...
],
'lookBackPeriodInDays' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'region' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceArn' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceTag' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'key' => '<string>',
'values' => ['<string>', ...],
],
// ...
],
'restartNeeded' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
],
'description' => '<string>',
'lastUpdatedTimestamp' => <DateTime>,
'name' => '<string>',
'organizationConfiguration' => [
'accountIds' => ['<string>', ...],
'ruleApplyOrder' => 'BeforeAccountRules|AfterAccountRules',
],
'priority' => '<string>',
'recommendedActionTypes' => ['<string>', ...],
'ruleArn' => '<string>',
'ruleId' => '<string>',
'ruleRevision' => <integer>,
'ruleType' => 'OrganizationRule|AccountRule',
'schedule' => [
'executionWindowInMinutes' => <integer>,
'scheduleExpression' => '<string>',
'scheduleExpressionTimezone' => '<string>',
],
'status' => 'Active|Inactive',
'tags' => [
[
'key' => '<string>',
'value' => '<string>',
],
// ...
],
]
Result Details
Members
- accountId
-
- Type: string
The 12-digit Amazon Web Services account ID that owns this automation rule.
- createdTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation rule was created.
- criteria
-
- Type: Criteria structure
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time. You can specify up to 20 conditions per filter criteria and 20 values per condition.
- description
-
- Type: string
A description of the automation rule.
- lastUpdatedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation rule was last updated.
- name
-
- Type: string
The name of the automation rule.
- organizationConfiguration
-
- Type: OrganizationConfiguration structure
Configuration settings for organization-wide automation rules.
- priority
-
- Type: string
A string representation of a decimal number between 0 and 1 (having up to 30 digits after the decimal point) that determines the priority of the rule.
- recommendedActionTypes
-
- Type: Array of strings
List of recommended action types that this rule can execute.
- ruleArn
-
- Type: string
The Amazon Resource Name (ARN) of the automation rule.
- ruleId
-
- Type: string
The unique identifier of the automation rule.
- ruleRevision
-
- Type: long (int|float)
The revision number of the automation rule.
- ruleType
-
- Type: string
The type of automation rule.
- schedule
-
- Type: Schedule structure
Configuration for scheduling when automation rules should execute, including timing and execution windows.
- status
-
- Type: string
The current status of the automation rule (Active or Inactive).
- tags
-
- Type: Array of Tag structures
The tags associated with the automation rule.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
GetEnrollmentConfiguration
$result = $client->getEnrollmentConfiguration([/* ... */]); $promise = $client->getEnrollmentConfigurationAsync([/* ... */]);
Retrieves the current enrollment configuration for Compute Optimizer Automation.
Parameter Syntax
$result = $client->getEnrollmentConfiguration([ ]);
Parameter Details
Members
Result Syntax
[
'lastUpdatedTimestamp' => <DateTime>,
'organizationRuleMode' => 'AnyAllowed|NoneAllowed',
'status' => 'Active|Inactive|Pending|Failed',
'statusReason' => '<string>',
]
Result Details
Members
- lastUpdatedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of the last update to the enrollment configuration.
- organizationRuleMode
-
- Type: string
Specifies whether the management account can create Automation rules that implement optimization actions for this account.
- status
-
- Required: Yes
- Type: string
The current enrollment status.
- statusReason
-
- Type: string
The reason for the current enrollment status.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListAccounts
$result = $client->listAccounts([/* ... */]); $promise = $client->listAccountsAsync([/* ... */]);
Lists the accounts in your organization that are enrolled in Compute Optimizer and whether they have enabled Automation.
Only the management account or a delegated administrator can perform this action.
Parameter Syntax
$result = $client->listAccounts([
'maxResults' => <integer>,
'nextToken' => '<string>',
]);
Parameter Details
Members
- maxResults
-
- Type: int
The maximum number of results to return in a single call.
- nextToken
-
- Type: string
The token for the next page of results.
Result Syntax
[
'accounts' => [
[
'accountId' => '<string>',
'lastUpdatedTimestamp' => <DateTime>,
'organizationRuleMode' => 'AnyAllowed|NoneAllowed',
'status' => 'Active|Inactive|Pending|Failed',
'statusReason' => '<string>',
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- accounts
-
- Required: Yes
- Type: Array of AccountInfo structures
The list of accounts in your organization enrolled in Compute Optimizer
- nextToken
-
- Type: string
The token to use to retrieve the next page of results.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- NotManagementAccountException:
The operation can only be performed by a management account.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListAutomationEventSteps
$result = $client->listAutomationEventSteps([/* ... */]); $promise = $client->listAutomationEventStepsAsync([/* ... */]);
Lists the steps for a specific automation event. You can only list steps for events created within the past year.
Parameter Syntax
$result = $client->listAutomationEventSteps([
'eventId' => '<string>', // REQUIRED
'maxResults' => <integer>,
'nextToken' => '<string>',
]);
Parameter Details
Members
- eventId
-
- Required: Yes
- Type: string
The ID of the automation event.
- maxResults
-
- Type: int
The maximum number of automation event steps to return in a single response. Valid range is 1-1000.
- nextToken
-
- Type: string
A token used for pagination to retrieve the next set of results when the response is truncated.
Result Syntax
[
'automationEventSteps' => [
[
'completedTimestamp' => <DateTime>,
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
'eventId' => '<string>',
'resourceId' => '<string>',
'startTimestamp' => <DateTime>,
'stepId' => '<string>',
'stepStatus' => 'Ready|InProgress|Complete|Failed',
'stepType' => 'CreateEbsSnapshot|DeleteEbsVolume|ModifyEbsVolume|CreateEbsVolume',
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- automationEventSteps
-
- Type: Array of AutomationEventStep structures
The list of steps for the specified automation event.
- nextToken
-
- Type: string
A token used for pagination. If present, indicates there are more results available and can be used in subsequent requests.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- ResourceNotFoundException:
The specified resource was not found.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListAutomationEventSummaries
$result = $client->listAutomationEventSummaries([/* ... */]); $promise = $client->listAutomationEventSummariesAsync([/* ... */]);
Provides a summary of automation events based on specified filters. Only events created within the past year will be included in the summary.
Parameter Syntax
$result = $client->listAutomationEventSummaries([
'endDateExclusive' => '<string>',
'filters' => [
[
'name' => 'AccountId|ResourceType|EventType|EventStatus', // REQUIRED
'values' => ['<string>', ...], // REQUIRED
],
// ...
],
'maxResults' => <integer>,
'nextToken' => '<string>',
'startDateInclusive' => '<string>',
]);
Parameter Details
Members
- endDateExclusive
-
- Type: string
The end date for filtering automation event summaries, exclusive. Events created before this date will be included.
- filters
-
- Type: Array of AutomationEventFilter structures
The filters to apply to the list of automation event summaries.
- maxResults
-
- Type: int
The maximum number of automation event summaries to return in a single response. Valid range is 1-1000.
- nextToken
-
- Type: string
A token used for pagination to retrieve the next set of results when the response is truncated.
- startDateInclusive
-
- Type: string
The start date for filtering automation event summaries, inclusive. Events created on or after this date will be included.
Result Syntax
[
'automationEventSummaries' => [
[
'dimensions' => [
[
'key' => 'EventStatus',
'value' => '<string>',
],
// ...
],
'key' => '<string>',
'timePeriod' => [
'endTimeExclusive' => <DateTime>,
'startTimeInclusive' => <DateTime>,
],
'total' => [
'automationEventCount' => <integer>,
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
],
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- automationEventSummaries
-
- Type: Array of AutomationEventSummary structures
The list of automation event summaries that match the specified criteria.
- nextToken
-
- Type: string
A token used for pagination. If present, indicates there are more results available and can be used in subsequent requests.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListAutomationEvents
$result = $client->listAutomationEvents([/* ... */]); $promise = $client->listAutomationEventsAsync([/* ... */]);
Lists automation events based on specified filters. You can retrieve events that were created within the past year.
Parameter Syntax
$result = $client->listAutomationEvents([
'endTimeExclusive' => <integer || string || DateTime>,
'filters' => [
[
'name' => 'AccountId|ResourceType|EventType|EventStatus', // REQUIRED
'values' => ['<string>', ...], // REQUIRED
],
// ...
],
'maxResults' => <integer>,
'nextToken' => '<string>',
'startTimeInclusive' => <integer || string || DateTime>,
]);
Parameter Details
Members
- endTimeExclusive
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The end of the time range to query for events.
- filters
-
- Type: Array of AutomationEventFilter structures
The filters to apply to the list of automation events.
- maxResults
-
- Type: int
The maximum number of results to return in a single call.
- nextToken
-
- Type: string
The token for the next page of results.
- startTimeInclusive
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The start of the time range to query for events.
Result Syntax
[
'automationEvents' => [
[
'accountId' => '<string>',
'completedTimestamp' => <DateTime>,
'createdTimestamp' => <DateTime>,
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
'eventDescription' => '<string>',
'eventId' => '<string>',
'eventStatus' => 'Ready|InProgress|Complete|Failed|Cancelled|RollbackReady|RollbackInProgress|RollbackComplete|RollbackFailed',
'eventStatusReason' => '<string>',
'eventType' => 'SnapshotAndDeleteUnattachedEbsVolume|UpgradeEbsVolumeType',
'recommendedActionId' => '<string>',
'region' => '<string>',
'resourceArn' => '<string>',
'resourceId' => '<string>',
'resourceType' => 'EbsVolume',
'ruleId' => '<string>',
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- automationEvents
-
- Type: Array of AutomationEvent structures
The list of automation events that match the specified criteria.
- nextToken
-
- Type: string
The token to use to retrieve the next page of results.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListAutomationRulePreview
$result = $client->listAutomationRulePreview([/* ... */]); $promise = $client->listAutomationRulePreviewAsync([/* ... */]);
Returns a preview of the recommended actions that match your Automation rule's configuration and criteria.
Parameter Syntax
$result = $client->listAutomationRulePreview([
'criteria' => [
'ebsVolumeSizeInGib' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'ebsVolumeType' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'estimatedMonthlySavings' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<float>, ...],
],
// ...
],
'lookBackPeriodInDays' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'region' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceArn' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceTag' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'key' => '<string>',
'values' => ['<string>', ...],
],
// ...
],
'restartNeeded' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
],
'maxResults' => <integer>,
'nextToken' => '<string>',
'organizationScope' => [
'accountIds' => ['<string>', ...],
],
'recommendedActionTypes' => ['<string>', ...], // REQUIRED
'ruleType' => 'OrganizationRule|AccountRule', // REQUIRED
]);
Parameter Details
Members
- criteria
-
- Type: Criteria structure
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time.
- maxResults
-
- Type: int
The maximum number of automation rule preview results to return in a single response. Valid range is 1-1000.
- nextToken
-
- Type: string
A token used for pagination to retrieve the next set of results when the response is truncated.
- organizationScope
-
- Type: OrganizationScope structure
The organizational scope for the rule preview.
- recommendedActionTypes
-
- Required: Yes
- Type: Array of strings
The types of recommended actions to include in the preview.
- ruleType
-
- Required: Yes
- Type: string
The type of rule.
Only the management account or a delegated administrator can set the ruleType to be OrganizationRule.
Result Syntax
[
'nextToken' => '<string>',
'previewResults' => [
[
'accountId' => '<string>',
'currentResourceDetails' => [
'ebsVolume' => [
'configuration' => [
'iops' => <integer>,
'sizeInGib' => <integer>,
'throughput' => <integer>,
'type' => '<string>',
],
],
],
'currentResourceSummary' => '<string>',
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
'lookBackPeriodInDays' => <integer>,
'recommendedActionId' => '<string>',
'recommendedActionType' => 'SnapshotAndDeleteUnattachedEbsVolume|UpgradeEbsVolumeType',
'recommendedResourceDetails' => [
'ebsVolume' => [
'configuration' => [
'iops' => <integer>,
'sizeInGib' => <integer>,
'throughput' => <integer>,
'type' => '<string>',
],
],
],
'recommendedResourceSummary' => '<string>',
'region' => '<string>',
'resourceArn' => '<string>',
'resourceId' => '<string>',
'resourceTags' => [
[
'key' => '<string>',
'value' => '<string>',
],
// ...
],
'resourceType' => 'EbsVolume',
'restartNeeded' => true || false,
],
// ...
],
]
Result Details
Members
- nextToken
-
- Type: string
A token used for pagination. If present, indicates there are more results available and can be used in subsequent requests.
- previewResults
-
- Type: Array of PreviewResult structures
The list of actions that would be taken based on the specified criteria.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListAutomationRulePreviewSummaries
$result = $client->listAutomationRulePreviewSummaries([/* ... */]); $promise = $client->listAutomationRulePreviewSummariesAsync([/* ... */]);
Returns a summary of the recommended actions that match your rule preview configuration and criteria.
Parameter Syntax
$result = $client->listAutomationRulePreviewSummaries([
'criteria' => [
'ebsVolumeSizeInGib' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'ebsVolumeType' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'estimatedMonthlySavings' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<float>, ...],
],
// ...
],
'lookBackPeriodInDays' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'region' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceArn' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceTag' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'key' => '<string>',
'values' => ['<string>', ...],
],
// ...
],
'restartNeeded' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
],
'maxResults' => <integer>,
'nextToken' => '<string>',
'organizationScope' => [
'accountIds' => ['<string>', ...],
],
'recommendedActionTypes' => ['<string>', ...], // REQUIRED
'ruleType' => 'OrganizationRule|AccountRule', // REQUIRED
]);
Parameter Details
Members
- criteria
-
- Type: Criteria structure
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time. You can specify up to 20 conditions per filter criteria and 20 values per condition.
- maxResults
-
- Type: int
The maximum number of automation rule preview summaries to return in a single response. Valid range is 1-1000.
- nextToken
-
- Type: string
A token used for pagination to retrieve the next set of results when the response is truncated.
- organizationScope
-
- Type: OrganizationScope structure
The organizational scope for the rule preview.
- recommendedActionTypes
-
- Required: Yes
- Type: Array of strings
The types of recommended actions to include in the preview.
- ruleType
-
- Required: Yes
- Type: string
The type of rule.
Result Syntax
[
'nextToken' => '<string>',
'previewResultSummaries' => [
[
'key' => '<string>',
'total' => [
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
'recommendedActionCount' => <integer>,
],
],
// ...
],
]
Result Details
Members
- nextToken
-
- Type: string
A token used for pagination. If present, indicates there are more results available and can be used in subsequent requests.
- previewResultSummaries
-
- Type: Array of PreviewResultSummary structures
The list of automation rule preview summaries that match the specified criteria.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListAutomationRules
$result = $client->listAutomationRules([/* ... */]); $promise = $client->listAutomationRulesAsync([/* ... */]);
Lists the automation rules that match specified filters.
Parameter Syntax
$result = $client->listAutomationRules([
'filters' => [
[
'name' => 'Name|RecommendedActionType|Status|RuleType|OrganizationConfigurationRuleApplyOrder|AccountId', // REQUIRED
'values' => ['<string>', ...], // REQUIRED
],
// ...
],
'maxResults' => <integer>,
'nextToken' => '<string>',
]);
Parameter Details
Members
- filters
-
- Type: Array of Filter structures
The filters to apply to the list of automation rules.
- maxResults
-
- Type: int
The maximum number of automation rules to return in a single response. Valid range is 1-1000.
- nextToken
-
- Type: string
A token used for pagination to retrieve the next set of results when the response is truncated.
Result Syntax
[
'automationRules' => [
[
'accountId' => '<string>',
'createdTimestamp' => <DateTime>,
'description' => '<string>',
'lastUpdatedTimestamp' => <DateTime>,
'name' => '<string>',
'organizationConfiguration' => [
'accountIds' => ['<string>', ...],
'ruleApplyOrder' => 'BeforeAccountRules|AfterAccountRules',
],
'priority' => '<string>',
'recommendedActionTypes' => ['<string>', ...],
'ruleArn' => '<string>',
'ruleId' => '<string>',
'ruleRevision' => <integer>,
'ruleType' => 'OrganizationRule|AccountRule',
'schedule' => [
'executionWindowInMinutes' => <integer>,
'scheduleExpression' => '<string>',
'scheduleExpressionTimezone' => '<string>',
],
'status' => 'Active|Inactive',
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- automationRules
-
- Type: Array of AutomationRule structures
The list of automation rules that match the specified criteria.
- nextToken
-
- Type: string
A token used for pagination. If present, indicates there are more results available and can be used in subsequent requests.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListRecommendedActionSummaries
$result = $client->listRecommendedActionSummaries([/* ... */]); $promise = $client->listRecommendedActionSummariesAsync([/* ... */]);
Provides a summary of recommended actions based on specified filters.
Management accounts and delegated administrators can retrieve recommended actions that include associated member accounts. You can associate a member account using AssociateAccounts.
Parameter Syntax
$result = $client->listRecommendedActionSummaries([
'filters' => [
[
'name' => 'ResourceType|RecommendedActionType|ResourceId|LookBackPeriodInDays|CurrentResourceDetailsEbsVolumeType|ResourceTagsKey|ResourceTagsValue|AccountId|RestartNeeded', // REQUIRED
'values' => ['<string>', ...], // REQUIRED
],
// ...
],
'maxResults' => <integer>,
'nextToken' => '<string>',
]);
Parameter Details
Members
- filters
-
- Type: Array of RecommendedActionFilter structures
A list of filters to apply when retrieving recommended action summaries. Filters can be based on resource type, action type, account ID, and other criteria.
- maxResults
-
- Type: int
The maximum number of recommended action summaries to return in a single response. Valid range is 1-1000.
- nextToken
-
- Type: string
A token used for pagination to retrieve the next set of results when the response is truncated.
Result Syntax
[
'nextToken' => '<string>',
'recommendedActionSummaries' => [
[
'key' => '<string>',
'total' => [
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
'recommendedActionCount' => <integer>,
],
],
// ...
],
]
Result Details
Members
- nextToken
-
- Type: string
A token used for pagination. If present, indicates there are more results available and can be used in subsequent requests.
- recommendedActionSummaries
-
- Type: Array of RecommendedActionSummary structures
The summary of recommended actions that match the specified criteria.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListRecommendedActions
$result = $client->listRecommendedActions([/* ... */]); $promise = $client->listRecommendedActionsAsync([/* ... */]);
Lists the recommended actions based that match specified filters.
Management accounts and delegated administrators can retrieve recommended actions that include associated member accounts. You can associate a member account using AssociateAccounts.
Parameter Syntax
$result = $client->listRecommendedActions([
'filters' => [
[
'name' => 'ResourceType|RecommendedActionType|ResourceId|LookBackPeriodInDays|CurrentResourceDetailsEbsVolumeType|ResourceTagsKey|ResourceTagsValue|AccountId|RestartNeeded', // REQUIRED
'values' => ['<string>', ...], // REQUIRED
],
// ...
],
'maxResults' => <integer>,
'nextToken' => '<string>',
]);
Parameter Details
Members
- filters
-
- Type: Array of RecommendedActionFilter structures
The filters to apply to the list of recommended actions.
- maxResults
-
- Type: int
The maximum number of recommended actions to return in a single response. Valid range is 1-1000.
- nextToken
-
- Type: string
A token used for pagination to retrieve the next set of results when the response is truncated.
Result Syntax
[
'nextToken' => '<string>',
'recommendedActions' => [
[
'accountId' => '<string>',
'currentResourceDetails' => [
'ebsVolume' => [
'configuration' => [
'iops' => <integer>,
'sizeInGib' => <integer>,
'throughput' => <integer>,
'type' => '<string>',
],
],
],
'currentResourceSummary' => '<string>',
'estimatedMonthlySavings' => [
'afterDiscountSavings' => <float>,
'beforeDiscountSavings' => <float>,
'currency' => '<string>',
'savingsEstimationMode' => 'BeforeDiscount|AfterDiscount',
],
'lookBackPeriodInDays' => <integer>,
'recommendedActionId' => '<string>',
'recommendedActionType' => 'SnapshotAndDeleteUnattachedEbsVolume|UpgradeEbsVolumeType',
'recommendedResourceDetails' => [
'ebsVolume' => [
'configuration' => [
'iops' => <integer>,
'sizeInGib' => <integer>,
'throughput' => <integer>,
'type' => '<string>',
],
],
],
'recommendedResourceSummary' => '<string>',
'region' => '<string>',
'resourceArn' => '<string>',
'resourceId' => '<string>',
'resourceTags' => [
[
'key' => '<string>',
'value' => '<string>',
],
// ...
],
'resourceType' => 'EbsVolume',
'restartNeeded' => true || false,
],
// ...
],
]
Result Details
Members
- nextToken
-
- Type: string
A token used for pagination. If present, indicates there are more results available and can be used in subsequent requests.
- recommendedActions
-
- Type: Array of RecommendedAction structures
The list of recommended actions that match the specified criteria.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
ListTagsForResource
$result = $client->listTagsForResource([/* ... */]); $promise = $client->listTagsForResourceAsync([/* ... */]);
Lists the tags for a specified resource.
Parameter Syntax
$result = $client->listTagsForResource([
'resourceArn' => '<string>', // REQUIRED
]);
Parameter Details
Members
- resourceArn
-
- Required: Yes
- Type: string
The ARN of the resource to list tags for.
Result Syntax
[
'tags' => [
[
'key' => '<string>',
'value' => '<string>',
],
// ...
],
]
Result Details
Members
- tags
-
- Type: Array of Tag structures
The list of tags associated with the specified resource.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
RollbackAutomationEvent
$result = $client->rollbackAutomationEvent([/* ... */]); $promise = $client->rollbackAutomationEventAsync([/* ... */]);
Initiates a rollback for a completed automation event.
Management accounts and delegated administrators can only initiate a rollback for events belonging to associated member accounts. You can associate a member account using AssociateAccounts.
Parameter Syntax
$result = $client->rollbackAutomationEvent([
'clientToken' => '<string>',
'eventId' => '<string>', // REQUIRED
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Must be 1-64 characters long and contain only alphanumeric characters, underscores, and hyphens.
- eventId
-
- Required: Yes
- Type: string
The ID of the automation event to roll back.
Result Syntax
[
'eventId' => '<string>',
'eventStatus' => 'Ready|InProgress|Complete|Failed|Cancelled|RollbackReady|RollbackInProgress|RollbackComplete|RollbackFailed',
]
Result Details
Members
- eventId
-
- Type: string
The ID of the automation event being rolled back.
- eventStatus
-
- Type: string
The current status of the rollback operation.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- ResourceNotFoundException:
The specified resource was not found.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
StartAutomationEvent
$result = $client->startAutomationEvent([/* ... */]); $promise = $client->startAutomationEventAsync([/* ... */]);
Initiates a one-time, on-demand automation for the specified recommended action.
Management accounts and delegated administrators can only initiate recommended actions for associated member accounts. You can associate a member account using AssociateAccounts.
Parameter Syntax
$result = $client->startAutomationEvent([
'clientToken' => '<string>',
'recommendedActionId' => '<string>', // REQUIRED
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Must be 1-64 characters long and contain only alphanumeric characters, underscores, and hyphens.
- recommendedActionId
-
- Required: Yes
- Type: string
The ID of the recommended action to automate.
Result Syntax
[
'eventId' => '<string>',
'eventStatus' => 'Ready|InProgress|Complete|Failed|Cancelled|RollbackReady|RollbackInProgress|RollbackComplete|RollbackFailed',
'recommendedActionId' => '<string>',
]
Result Details
Members
- eventId
-
- Type: string
The ID of the automation event.
- eventStatus
-
- Type: string
The current status of the automation event.
- recommendedActionId
-
- Type: string
The ID of the recommended action being automated.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ThrottlingException:
The request was denied due to request throttling.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- ResourceNotFoundException:
The specified resource was not found.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
- ServiceQuotaExceededException:
The request would exceed service quotas.
TagResource
$result = $client->tagResource([/* ... */]); $promise = $client->tagResourceAsync([/* ... */]);
Adds tags to the specified resource.
Parameter Syntax
$result = $client->tagResource([
'clientToken' => '<string>',
'resourceArn' => '<string>', // REQUIRED
'ruleRevision' => <integer>, // REQUIRED
'tags' => [ // REQUIRED
[
'key' => '<string>', // REQUIRED
'value' => '<string>', // REQUIRED
],
// ...
],
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Must be 1-64 characters long and contain only alphanumeric characters, underscores, and hyphens.
- resourceArn
-
- Required: Yes
- Type: string
The ARN of the resource to tag.
- ruleRevision
-
- Required: Yes
- Type: long (int|float)
The revision number of the automation rule to tag. This ensures you're tagging the correct version of the rule.
- tags
-
- Required: Yes
- Type: Array of Tag structures
The tags to add to the resource.
Result Syntax
[]
Result Details
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
UntagResource
$result = $client->untagResource([/* ... */]); $promise = $client->untagResourceAsync([/* ... */]);
Removes tags from the specified resource.
Parameter Syntax
$result = $client->untagResource([
'clientToken' => '<string>',
'resourceArn' => '<string>', // REQUIRED
'ruleRevision' => <integer>, // REQUIRED
'tagKeys' => ['<string>', ...], // REQUIRED
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Must be 1-64 characters long and contain only alphanumeric characters, underscores, and hyphens.
- resourceArn
-
- Required: Yes
- Type: string
The ARN of the resource to untag.
- ruleRevision
-
- Required: Yes
- Type: long (int|float)
The revision number of the automation rule to untag. This ensures you're untagging the correct version of the rule.
- tagKeys
-
- Required: Yes
- Type: Array of strings
The keys of the tags to remove from the resource.
Result Syntax
[]
Result Details
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
UpdateAutomationRule
$result = $client->updateAutomationRule([/* ... */]); $promise = $client->updateAutomationRuleAsync([/* ... */]);
Updates an existing automation rule.
Parameter Syntax
$result = $client->updateAutomationRule([
'clientToken' => '<string>',
'criteria' => [
'ebsVolumeSizeInGib' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'ebsVolumeType' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'estimatedMonthlySavings' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<float>, ...],
],
// ...
],
'lookBackPeriodInDays' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'region' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceArn' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceTag' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'key' => '<string>',
'values' => ['<string>', ...],
],
// ...
],
'restartNeeded' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
],
'description' => '<string>',
'name' => '<string>',
'organizationConfiguration' => [
'accountIds' => ['<string>', ...],
'ruleApplyOrder' => 'BeforeAccountRules|AfterAccountRules',
],
'priority' => '<string>',
'recommendedActionTypes' => ['<string>', ...],
'ruleArn' => '<string>', // REQUIRED
'ruleRevision' => <integer>, // REQUIRED
'ruleType' => 'OrganizationRule|AccountRule',
'schedule' => [
'executionWindowInMinutes' => <integer>,
'scheduleExpression' => '<string>',
'scheduleExpressionTimezone' => '<string>',
],
'status' => 'Active|Inactive',
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Must be 1-64 characters long and contain only alphanumeric characters, underscores, and hyphens.
- criteria
-
- Type: Criteria structure
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time. You can specify up to 20 conditions per filter criteria and 20 values per condition.
- description
-
- Type: string
The updated description of the automation rule. Can be up to 1024 characters long and contain alphanumeric characters, underscores, hyphens, spaces, and certain special characters.
- name
-
- Type: string
The updated name of the automation rule. Must be 1-128 characters long and contain only alphanumeric characters, underscores, and hyphens.
- organizationConfiguration
-
- Type: OrganizationConfiguration structure
Updated configuration settings for organization-wide rules, including rule application order and target account IDs.
- priority
-
- Type: string
The updated priority level of the automation rule, used to determine execution order when multiple rules apply to the same resource.
- recommendedActionTypes
-
- Type: Array of strings
Updated list of recommended action types that this rule can execute, such as SnapshotAndDeleteUnattachedEbsVolume or UpgradeEbsVolumeType.
- ruleArn
-
- Required: Yes
- Type: string
The ARN of the rule to update.
- ruleRevision
-
- Required: Yes
- Type: long (int|float)
The revision number of the rule to update.
- ruleType
-
- Type: string
The updated type of automation rule. Can be either OrganizationRule for organization-wide rules or AccountRule for account-specific rules.
- schedule
-
- Type: Schedule structure
The updated schedule configuration for when the automation rule should execute, including cron expression, timezone, and execution window.
- status
-
- Type: string
The updated status of the automation rule. Can be Active or Inactive.
Result Syntax
[
'createdTimestamp' => <DateTime>,
'criteria' => [
'ebsVolumeSizeInGib' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'ebsVolumeType' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'estimatedMonthlySavings' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<float>, ...],
],
// ...
],
'lookBackPeriodInDays' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => [<integer>, ...],
],
// ...
],
'region' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceArn' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
'resourceTag' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'key' => '<string>',
'values' => ['<string>', ...],
],
// ...
],
'restartNeeded' => [
[
'comparison' => 'StringEquals|StringNotEquals|StringEqualsIgnoreCase|StringNotEqualsIgnoreCase|StringLike|StringNotLike|NumericEquals|NumericNotEquals|NumericLessThan|NumericLessThanEquals|NumericGreaterThan|NumericGreaterThanEquals',
'values' => ['<string>', ...],
],
// ...
],
],
'description' => '<string>',
'lastUpdatedTimestamp' => <DateTime>,
'name' => '<string>',
'organizationConfiguration' => [
'accountIds' => ['<string>', ...],
'ruleApplyOrder' => 'BeforeAccountRules|AfterAccountRules',
],
'priority' => '<string>',
'recommendedActionTypes' => ['<string>', ...],
'ruleArn' => '<string>',
'ruleRevision' => <integer>,
'ruleType' => 'OrganizationRule|AccountRule',
'schedule' => [
'executionWindowInMinutes' => <integer>,
'scheduleExpression' => '<string>',
'scheduleExpressionTimezone' => '<string>',
],
'status' => 'Active|Inactive',
]
Result Details
Members
- createdTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation rule was originally created.
- criteria
-
- Type: Criteria structure
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time. You can specify up to 20 conditions per filter criteria and 20 values per condition.
- description
-
- Type: string
The updated description of the automation rule.
- lastUpdatedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation rule was last updated.
- name
-
- Type: string
The updated name of the automation rule.
- organizationConfiguration
-
- Type: OrganizationConfiguration structure
The updated organization configuration settings.
- priority
-
- Type: string
The updated priority level of the automation rule.
- recommendedActionTypes
-
- Type: Array of strings
The updated list of recommended action types.
- ruleArn
-
- Type: string
The ARN of the updated rule.
- ruleRevision
-
- Type: long (int|float)
The new revision number of the updated rule.
- ruleType
-
- Type: string
The updated type of automation rule.
- schedule
-
- Type: Schedule structure
The updated schedule configuration.
- status
-
- Type: string
The updated status of the automation rule.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
UpdateEnrollmentConfiguration
$result = $client->updateEnrollmentConfiguration([/* ... */]); $promise = $client->updateEnrollmentConfigurationAsync([/* ... */]);
Updates your account’s Compute Optimizer Automation enrollment configuration.
Parameter Syntax
$result = $client->updateEnrollmentConfiguration([
'clientToken' => '<string>',
'status' => 'Active|Inactive|Pending|Failed', // REQUIRED
]);
Parameter Details
Members
- clientToken
-
- Type: string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Must be 1-64 characters long and contain only alphanumeric characters, underscores, and hyphens.
- status
-
- Required: Yes
- Type: string
The desired enrollment status.
-
Active - Enables the Automation feature for your account.
-
Inactive - Disables the Automation feature for your account and stops all of your automation rules. If you opt in again later, all rules will be inactive, and you must enable the rules you want to run. You must wait at least 24 hours after opting out to opt in again.
The
PendingandFailedoptions cannot be used to update the enrollment status of an account. They are returned in the response of a request to update the enrollment status of an account.If you are a member account, your account must be disassociated from your organization’s management account before you can disable Automation. Contact your administrator to make this change.
Result Syntax
[
'lastUpdatedTimestamp' => <DateTime>,
'status' => 'Active|Inactive|Pending|Failed',
'statusReason' => '<string>',
]
Result Details
Members
- lastUpdatedTimestamp
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the enrollment configuration was last updated.
- status
-
- Required: Yes
- Type: string
The updated enrollment status.
- statusReason
-
- Type: string
The reason for the updated enrollment status.
Errors
- InvalidParameterValueException:
One or more parameter values are not valid.
- ForbiddenException:
You are not authorized to perform this action.
- OptInRequiredException:
The account must be opted in to Compute Optimizer Automation before performing this action.
- IdempotentParameterMismatchException:
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
- ResourceNotFoundException:
The specified resource was not found.
- ThrottlingException:
The request was denied due to request throttling.
- AccessDeniedException:
You do not have sufficient permissions to perform this action.
- InternalServerException:
An internal error occurred while processing the request.
- NotManagementAccountException:
The operation can only be performed by a management account.
- ServiceUnavailableException:
The service is temporarily unavailable.
- IdempotencyTokenInUseException:
The specified client token is already in use.
Shapes
AccessDeniedException
Description
You do not have sufficient permissions to perform this action.
Members
- message
-
- Type: string
AccountInfo
Description
Contains information about an Amazon Web Services account's enrollment and association status with Compute Optimizer Automation.
Members
- accountId
-
- Required: Yes
- Type: string
The ID of the Amazon Web Services account.
- lastUpdatedTimestamp
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the account's Automation enrollment status was last updated.
- organizationRuleMode
-
- Required: Yes
- Type: string
Specifies whether the management account can create Automation rules that implement optimization actions for this account.
- status
-
- Required: Yes
- Type: string
The enrollment status of the account: Active, Inactive, Pending, or Failed.
- statusReason
-
- Type: string
The reason for the current Automation enrollment status.
AutomationEvent
Description
Contains information about an automation event.
Members
- accountId
-
- Type: string
The Amazon Web Services account ID associated with the automation event.
- completedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation event completed.
- createdTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation event was created.
- estimatedMonthlySavings
-
- Type: EstimatedMonthlySavings structure
The estimated monthly cost savings associated with this automation event.
- eventDescription
-
- Type: string
A description of the automation event.
- eventId
-
- Type: string
The unique identifier for the automation event.
- eventStatus
-
- Type: string
The current status of the automation event.
- eventStatusReason
-
- Type: string
The reason for the current event status.
- eventType
-
- Type: string
The type of automation event.
- recommendedActionId
-
- Type: string
The ID of the recommended action associated with this automation event.
- region
-
- Type: string
The Amazon Web Services Region where the automation event occurred.
- resourceArn
-
- Type: string
The Amazon Resource Name (ARN) of the resource affected by the automation event.
- resourceId
-
- Type: string
The ID of the resource affected by the automation event.
- resourceType
-
- Type: string
The type of resource affected by the automation event.
- ruleId
-
- Type: string
The ID of the automation rule that triggered this event.
AutomationEventFilter
Description
A filter to apply when listing automation events.
Members
- name
-
- Required: Yes
- Type: string
The name of the filter to apply.
- values
-
- Required: Yes
- Type: Array of strings
The values to use for the specified filter.
AutomationEventStep
Description
Contains information about a step in an automation event.
Members
- completedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when this automation event step completed execution.
- estimatedMonthlySavings
-
- Type: EstimatedMonthlySavings structure
Contains information about estimated monthly cost savings.
- eventId
-
- Type: string
The ID of the automation event this step belongs to.
- resourceId
-
- Type: string
The unique identifier of the resource being acted upon in this step.
- startTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when this automation event step started execution.
- stepId
-
- Type: string
The unique identifier for this step.
- stepStatus
-
- Type: string
The current status of the step.
- stepType
-
- Type: string
The type of step.
AutomationEventSummary
Description
A summary of automation events grouped by specified dimensions.
Members
- dimensions
-
- Type: Array of SummaryDimension structures
The dimensions used to group this summary, such as event status.
- key
-
- Type: string
The key identifier for this summary grouping.
- timePeriod
-
- Type: TimePeriod structure
The time period covered by this summary, with inclusive start time and exclusive end time.
- total
-
- Type: SummaryTotals structure
The aggregated totals for this summary, including event count and estimated savings.
AutomationRule
Description
Represents a complete automation rule configuration including criteria, schedule, and execution settings.
Members
- accountId
-
- Type: string
The 12-digit Amazon Web Services account ID that owns this automation rule.
- createdTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation rule was created.
- description
-
- Type: string
A description of the automation rule.
- lastUpdatedTimestamp
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the automation rule was last updated.
- name
-
- Type: string
The name of the automation rule.
- organizationConfiguration
-
- Type: OrganizationConfiguration structure
Configuration settings for organization-wide rules.
- priority
-
- Type: string
A string representation of a decimal number between 0 and 1 (having up to 30 digits after the decimal point) that determines the priority of the rule. When multiple rules match the same recommended action, Compute Optimizer assigns the action to the rule with the lowest priority value (highest priority), even if that rule is scheduled to run later than other matching rules.
- recommendedActionTypes
-
- Type: Array of strings
List of recommended action types that this rule can execute.
- ruleArn
-
- Type: string
The Amazon Resource Name (ARN) of the automation rule.
- ruleId
-
- Type: string
The unique identifier of the automation rule.
- ruleRevision
-
- Type: long (int|float)
The revision number of the automation rule.
- ruleType
-
- Type: string
The type of automation rule (OrganizationRule or AccountRule).
- schedule
-
- Type: Schedule structure
The schedule configuration for when the automation rule should execute.
- status
-
- Type: string
The current status of the automation rule (Active or Inactive).
Criteria
Description
A set of conditions that specify which recommended action qualify for implementation. When a rule is active and a recommended action matches these criteria, Compute Optimizer implements the action at the scheduled run time. You can specify up to 20 conditions per filter criteria and 20 values per condition.
Members
- ebsVolumeSizeInGib
-
- Type: Array of IntegerCriteriaCondition structures
Filter criteria for EBS volume sizes in gibibytes (GiB).
- ebsVolumeType
-
- Type: Array of StringCriteriaCondition structures
Filter criteria for EBS volume types, such as gp2, gp3, io1, io2, st1, or sc1.
- estimatedMonthlySavings
-
- Type: Array of DoubleCriteriaCondition structures
Filter criteria for estimated monthly cost savings from the recommended action.
- lookBackPeriodInDays
-
- Type: Array of IntegerCriteriaCondition structures
Filter criteria for the lookback period in days used to analyze resource utilization.
- region
-
- Type: Array of StringCriteriaCondition structures
Filter criteria for Amazon Web Services regions where resources must be located.
- resourceArn
-
- Type: Array of StringCriteriaCondition structures
Filter criteria for specific resource ARNs to include or exclude.
- resourceTag
-
- Type: Array of ResourceTagsCriteriaCondition structures
Filter criteria for resource tags, allowing filtering by tag key and value combinations.
- restartNeeded
-
- Type: Array of StringCriteriaCondition structures
Filter criteria indicating whether the recommended action requires a resource restart.
DoubleCriteriaCondition
Description
Defines a condition for filtering based on double/floating-point numeric values with comparison operators.
Members
- comparison
-
- Type: string
The comparison operator to use, such as equals, greater than, less than, etc.
- values
-
- Type: Array of doubles
The list of double values to compare against using the specified comparison operator.
EbsVolume
Description
Represents an Amazon EBS volume with its configuration and snapshot usage information.
Members
- configuration
-
- Type: EbsVolumeConfiguration structure
The configuration details of the EBS volume, including type, size, IOPS, and throughput.
EbsVolumeConfiguration
Description
Configuration details for an Amazon EBS volume.
Members
- iops
-
- Type: int
The number of I/O operations per second (IOPS) provisioned for the volume.
- sizeInGib
-
- Type: int
The size of the EBS volume in gibibytes (GiB).
- throughput
-
- Type: int
The throughput in MiB/s provisioned for the volume (applicable to gp3, io1, and io2bx volumes).
- type
-
- Type: string
The EBS volume type, such as gp2, gp3, io1, io2, st1, or sc1.
EstimatedMonthlySavings
Description
Contains information about estimated monthly cost savings.
Members
- afterDiscountSavings
-
- Required: Yes
- Type: double
The estimated monthly savings after applying any discounts.
- beforeDiscountSavings
-
- Required: Yes
- Type: double
The estimated monthly savings before applying any discounts.
- currency
-
- Required: Yes
- Type: string
The currency of the estimated savings.
- savingsEstimationMode
-
- Required: Yes
- Type: string
The mode used to calculate savings, either BeforeDiscount or AfterDiscount.
Filter
Description
A filter used to narrow down results based on specific criteria.
Members
- name
-
- Required: Yes
- Type: string
The name of the filter field to apply.
- values
-
- Required: Yes
- Type: Array of strings
The list of values to filter by for the specified filter field.
ForbiddenException
Description
You are not authorized to perform this action.
Members
- message
-
- Type: string
IdempotencyTokenInUseException
Description
The specified client token is already in use.
Members
- message
-
- Type: string
IdempotentParameterMismatchException
Description
Exception thrown when the same client token is used with different parameters, indicating a mismatch in idempotent request parameters.
Members
- message
-
- Type: string
IntegerCriteriaCondition
Description
Defines a condition for filtering based on integer values with comparison operators.
Members
- comparison
-
- Type: string
The comparison operator to use, such as equals, greater than, less than, etc.
- values
-
- Type: Array of ints
The list of integer values to compare against using the specified comparison operator.
InternalServerException
Description
An internal error occurred while processing the request.
Members
- message
-
- Type: string
InvalidParameterValueException
Description
One or more parameter values are not valid.
Members
- message
-
- Type: string
NotManagementAccountException
Description
The operation can only be performed by a management account.
Members
- message
-
- Type: string
OptInRequiredException
Description
The account must be opted in to Compute Optimizer Automation before performing this action.
Members
- message
-
- Type: string
OrganizationConfiguration
Description
Configuration settings for organization-wide automation rules.
Members
- accountIds
-
- Type: Array of strings
List of specific Amazon Web Services account IDs where the organization rule should be applied.
- ruleApplyOrder
-
- Type: string
Specifies when organization rules should be applied relative to account rules.
OrganizationScope
Description
Defines the scope for organization-level rules when previewing matching actions.
Members
- accountIds
-
- Type: Array of strings
List of Amazon Web Services account IDs to include in the organization scope.
PreviewResult
Description
Contains the results of previewing an automation rule against available recommendations.
Members
- accountId
-
- Type: string
The Amazon Web Services account ID associated with the resource.
- currentResourceDetails
-
- Type: ResourceDetails structure
Detailed configuration information for a specific Amazon Web Services resource, with type-specific details.
- currentResourceSummary
-
- Type: string
A summary of the resource's current configuration.
- estimatedMonthlySavings
-
- Type: EstimatedMonthlySavings structure
Contains information about estimated monthly cost savings.
- lookBackPeriodInDays
-
- Type: int
The number of days of historical data used to analyze the resource.
- recommendedActionId
-
- Type: string
The ID of the recommended action being previewed.
- recommendedActionType
-
- Type: string
The type of recommended action being previewed.
- recommendedResourceDetails
-
- Type: ResourceDetails structure
Detailed configuration information for a specific Amazon Web Services resource, with type-specific details.
- recommendedResourceSummary
-
- Type: string
A summary of the resource's recommended configuration.
- region
-
- Type: string
The Amazon Web Services Region where the resource is located.
- resourceArn
-
- Type: string
The Amazon Resource Name (ARN) of the resource affected by the recommended action.
- resourceId
-
- Type: string
The ID of the resource affected by the recommended action.
- resourceTags
-
- Type: Array of Tag structures
The tags associated with the resource.
- resourceType
-
- Type: string
The type of resource being evaluated.
- restartNeeded
-
- Type: boolean
Indicates whether implementing the recommended action requires a resource restart.
PreviewResultSummary
Description
Contains a summary of preview results for an automation rule.
Members
- key
-
- Required: Yes
- Type: string
The key identifier for this preview result summary.
- total
-
- Required: Yes
- Type: RulePreviewTotal structure
Aggregate totals for automation rule preview results, including count and estimated savings.
RecommendedAction
Description
Contains information about a recommended action that can be applied to optimize an Amazon Web Services resource.
Members
- accountId
-
- Type: string
The Amazon Web Services account ID that owns the resource.
- currentResourceDetails
-
- Type: ResourceDetails structure
Detailed configuration information for a specific Amazon Web Services resource, with type-specific details.
- currentResourceSummary
-
- Type: string
A summary of the resource's current configuration.
- estimatedMonthlySavings
-
- Type: EstimatedMonthlySavings structure
Contains information about estimated monthly cost savings.
- lookBackPeriodInDays
-
- Type: int
The number of days of historical data used to generate the recommendation.
- recommendedActionId
-
- Type: string
The unique identifier of the recommended action.
- recommendedActionType
-
- Type: string
The type of action being recommended.
- recommendedResourceDetails
-
- Type: ResourceDetails structure
Detailed configuration information for a specific Amazon Web Services resource, with type-specific details.
- recommendedResourceSummary
-
- Type: string
A summary of the resource's recommended configuration.
- region
-
- Type: string
The Amazon Web Services Region where the resource is located.
- resourceArn
-
- Type: string
The Amazon Resource Name (ARN) of the resource that the recommendation applies to.
- resourceId
-
- Type: string
The ID of the resource that the recommendation applies to.
- resourceTags
-
- Type: Array of Tag structures
The tags associated with the resource.
- resourceType
-
- Type: string
The type of resource being evaluated.
- restartNeeded
-
- Type: boolean
Indicates whether implementing the recommended action requires a resource restart.
RecommendedActionFilter
Description
A filter used to narrow down recommended action results based on specific criteria.
Members
- name
-
- Required: Yes
- Type: string
The name of the filter field to apply.
- values
-
- Required: Yes
- Type: Array of strings
List of filter values to match against the specified filter name. Used to narrow down recommended actions based on specific criteria.
RecommendedActionSummary
Description
Summary information about recommended actions, grouped by specific criteria with totals and counts.
Members
- key
-
- Required: Yes
- Type: string
The grouping key used to categorize the recommended actions in this summary.
- total
-
- Required: Yes
- Type: RecommendedActionTotal structure
Aggregate totals for the recommended actions in this group, including count and estimated savings.
RecommendedActionTotal
Description
Aggregate totals for a group of recommended actions, including count and estimated monthly savings.
Members
- estimatedMonthlySavings
-
- Required: Yes
- Type: EstimatedMonthlySavings structure
Contains information about estimated monthly cost savings.
- recommendedActionCount
-
- Required: Yes
- Type: int
The total number of recommended actions in this group.
ResourceDetails
Description
Detailed configuration information for a specific Amazon Web Services resource, with type-specific details.
Members
- ebsVolume
-
- Type: EbsVolume structure
Detailed configuration information specific to EBS volumes, including volume type, size, IOPS, and throughput settings.
ResourceNotFoundException
Description
The specified resource was not found.
Members
- message
-
- Type: string
ResourceTagsCriteriaCondition
Description
Criteria condition for filtering resources based on their tags, including comparison operators and values.
Members
- comparison
-
- Type: string
The comparison operator used to evaluate the tag criteria, such as equals, not equals, or contains.
- key
-
- Type: string
The tag key to use for comparison when filtering resources.
- values
-
- Type: Array of strings
List of tag values to compare against when filtering resources.
RulePreviewTotal
Description
Aggregate totals for automation rule preview results, including count and estimated savings.
Members
- estimatedMonthlySavings
-
- Required: Yes
- Type: EstimatedMonthlySavings structure
Contains information about estimated monthly cost savings.
- recommendedActionCount
-
- Required: Yes
- Type: int
The total number of recommended actions matching the rule preview configuration.
Schedule
Description
Configuration for scheduling when automation rules should execute, including timing and execution windows.
Members
- executionWindowInMinutes
-
- Type: int
The time window in minutes during which the automation rule can start implementing recommended actions.
- scheduleExpression
-
- Type: string
The expression that defines when the schedule runs.
cronexpression is supported. Acronexpression consists of six fields separated by white spaces: (minuteshoursday_of_monthmonthday_of_weekyear)You can schedule rules to run at most once per day. Your cron expression must use specific values (not wildcards) for the minutes and hours fields. For example: (
30 12 * * *) runs daily at 12:30 PM UTC. - scheduleExpressionTimezone
-
- Type: string
The timezone to use when interpreting the schedule expression.
ServiceQuotaExceededException
Description
The request would exceed service quotas.
Members
- message
-
- Type: string
ServiceUnavailableException
Description
The service is temporarily unavailable.
Members
- message
-
- Type: string
StringCriteriaCondition
Description
Criteria condition for filtering based on string values, including comparison operators and target values.
Members
- comparison
-
- Type: string
The comparison operator used to evaluate the string criteria, such as equals, not equals, or contains.
- values
-
- Type: Array of strings
List of string values to compare against when applying the criteria condition.
SummaryDimension
Description
A key-value pair used to categorize and group summary data for analysis and reporting.
Members
- key
-
- Required: Yes
- Type: string
The dimension key used for categorizing summary data.
- value
-
- Required: Yes
- Type: string
The specific value for this dimension key used in the summary grouping.
SummaryTotals
Description
Aggregate totals for automation events, including counts and estimated savings.
Members
- automationEventCount
-
- Type: int
The total number of automation events in this summary group.
- estimatedMonthlySavings
-
- Type: EstimatedMonthlySavings structure
Contains information about estimated monthly cost savings.
Tag
Description
A key-value pair used to categorize and organize Amazon Web Services resources and automation rules.
Members
- key
-
- Required: Yes
- Type: string
The tag key, which can be up to 128 characters long.
- value
-
- Required: Yes
- Type: string
The tag value, which can be up to 256 characters long.
ThrottlingException
Description
The request was denied due to request throttling.
Members
- message
-
- Type: string
TimePeriod
Description
Defines a time range with inclusive start time and exclusive end time for filtering and analysis.
Members
- endTimeExclusive
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The end time of the period, exclusive. Events before this time are included.
- startTimeInclusive
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The start time of the period, inclusive. Events at or after this time are included.