SDK for PHP 3.x

Client: Aws\BCMPricingCalculator\BCMPricingCalculatorClient
Service ID: bcm-pricing-calculator
Version: 2024-06-19

This page describes the parameters and results for the operations of the AWS Billing and Cost Management Pricing Calculator (2024-06-19), and shows how to use the Aws\BCMPricingCalculator\BCMPricingCalculatorClient object to call the described operations. This documentation is specific to the 2024-06-19 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 */).

BatchCreateBillScenarioCommitmentModification ( array $params = [] )
Create Compute Savings Plans, EC2 Instance Savings Plans, or EC2 Reserved Instances commitments that you want to model in a Bill Scenario.
BatchCreateBillScenarioUsageModification ( array $params = [] )
Create Amazon Web Services service usage that you want to model in a Bill Scenario.
BatchCreateWorkloadEstimateUsage ( array $params = [] )
Create Amazon Web Services service usage that you want to model in a Workload Estimate.
BatchDeleteBillScenarioCommitmentModification ( array $params = [] )
Delete commitment that you have created in a Bill Scenario.
BatchDeleteBillScenarioUsageModification ( array $params = [] )
Delete usage that you have created in a Bill Scenario.
BatchDeleteWorkloadEstimateUsage ( array $params = [] )
Delete usage that you have created in a Workload estimate.
BatchUpdateBillScenarioCommitmentModification ( array $params = [] )
Update a newly added or existing commitment.
BatchUpdateBillScenarioUsageModification ( array $params = [] )
Update a newly added or existing usage lines.
BatchUpdateWorkloadEstimateUsage ( array $params = [] )
Update a newly added or existing usage lines.
CreateBillEstimate ( array $params = [] )
Create a Bill estimate from a Bill scenario.
CreateBillScenario ( array $params = [] )
Creates a new bill scenario to model potential changes to Amazon Web Services usage and costs.
CreateWorkloadEstimate ( array $params = [] )
Creates a new workload estimate to model costs for a specific workload.
DeleteBillEstimate ( array $params = [] )
Deletes an existing bill estimate.
DeleteBillScenario ( array $params = [] )
Deletes an existing bill scenario.
DeleteWorkloadEstimate ( array $params = [] )
Deletes an existing workload estimate.
GetBillEstimate ( array $params = [] )
Retrieves details of a specific bill estimate.
GetBillScenario ( array $params = [] )
Retrieves details of a specific bill scenario.
GetPreferences ( array $params = [] )
Retrieves the current preferences for the Amazon Web Services Cost Explorer service.
GetWorkloadEstimate ( array $params = [] )
Retrieves details of a specific workload estimate.
ListBillEstimateCommitments ( array $params = [] )
Lists the commitments associated with a bill estimate.
ListBillEstimateInputCommitmentModifications ( array $params = [] )
Lists the input commitment modifications associated with a bill estimate.
ListBillEstimateInputUsageModifications ( array $params = [] )
Lists the input usage modifications associated with a bill estimate.
ListBillEstimateLineItems ( array $params = [] )
Lists the line items associated with a bill estimate.
ListBillEstimates ( array $params = [] )
Lists all bill estimates for the account.
ListBillScenarioCommitmentModifications ( array $params = [] )
Lists the commitment modifications associated with a bill scenario.
ListBillScenarioUsageModifications ( array $params = [] )
Lists the usage modifications associated with a bill scenario.
ListBillScenarios ( array $params = [] )
Lists all bill scenarios for the account.
ListTagsForResource ( array $params = [] )
Lists all tags associated with a specified resource.
ListWorkloadEstimateUsage ( array $params = [] )
Lists the usage associated with a workload estimate.
ListWorkloadEstimates ( array $params = [] )
Lists all workload estimates for the account.
TagResource ( array $params = [] )
Adds one or more tags to a specified resource.
UntagResource ( array $params = [] )
Removes one or more tags from a specified resource.
UpdateBillEstimate ( array $params = [] )
Updates an existing bill estimate.
UpdateBillScenario ( array $params = [] )
Updates an existing bill scenario.
UpdatePreferences ( array $params = [] )
Updates the preferences for the Amazon Web Services Cost Explorer service.
UpdateWorkloadEstimate ( array $params = [] )
Updates an existing workload estimate.

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:

ListBillEstimateCommitments
ListBillEstimateInputCommitmentModifications
ListBillEstimateInputUsageModifications
ListBillEstimateLineItems
ListBillEstimates
ListBillScenarioCommitmentModifications
ListBillScenarioUsageModifications
ListBillScenarios
ListWorkloadEstimateUsage
ListWorkloadEstimates

Operations

BatchCreateBillScenarioCommitmentModification

$result = $client->batchCreateBillScenarioCommitmentModification([/* ... */]);
$promise = $client->batchCreateBillScenarioCommitmentModificationAsync([/* ... */]);

Create Compute Savings Plans, EC2 Instance Savings Plans, or EC2 Reserved Instances commitments that you want to model in a Bill Scenario.

Parameter Syntax

$result = $client->batchCreateBillScenarioCommitmentModification([
    'billScenarioId' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'commitmentModifications' => [ // REQUIRED
        [
            'commitmentAction' => [ // REQUIRED
                'addReservedInstanceAction' => [
                    'instanceCount' => <integer>,
                    'reservedInstancesOfferingId' => '<string>',
                ],
                'addSavingsPlanAction' => [
                    'commitment' => <float>,
                    'savingsPlanOfferingId' => '<string>',
                ],
                'negateReservedInstanceAction' => [
                    'reservedInstancesId' => '<string>',
                ],
                'negateSavingsPlanAction' => [
                    'savingsPlanId' => '<string>',
                ],
            ],
            'group' => '<string>',
            'key' => '<string>', // REQUIRED
            'usageAccountId' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The ID of the Bill Scenario for which you want to create the modeled commitment.

clientToken
Type: string

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

commitmentModifications
Required: Yes
Type: Array of BatchCreateBillScenarioCommitmentModificationEntry structures

List of commitments that you want to model in the Bill Scenario.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'CONFLICT|INTERNAL_SERVER_ERROR|INVALID_ACCOUNT',
            'errorMessage' => '<string>',
            'key' => '<string>',
        ],
        // ...
    ],
    'items' => [
        [
            'commitmentAction' => [
                'addReservedInstanceAction' => [
                    'instanceCount' => <integer>,
                    'reservedInstancesOfferingId' => '<string>',
                ],
                'addSavingsPlanAction' => [
                    'commitment' => <float>,
                    'savingsPlanOfferingId' => '<string>',
                ],
                'negateReservedInstanceAction' => [
                    'reservedInstancesId' => '<string>',
                ],
                'negateSavingsPlanAction' => [
                    'savingsPlanId' => '<string>',
                ],
            ],
            'group' => '<string>',
            'id' => '<string>',
            'key' => '<string>',
            'usageAccountId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors

Returns the list of errors reason and the commitment item keys that cannot be created in the Bill Scenario.

items

Returns the list of successful commitment line items that were created for the Bill Scenario.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchCreateBillScenarioUsageModification

$result = $client->batchCreateBillScenarioUsageModification([/* ... */]);
$promise = $client->batchCreateBillScenarioUsageModificationAsync([/* ... */]);

Create Amazon Web Services service usage that you want to model in a Bill Scenario.

Parameter Syntax

$result = $client->batchCreateBillScenarioUsageModification([
    'billScenarioId' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'usageModifications' => [ // REQUIRED
        [
            'amounts' => [
                [
                    'amount' => <float>, // REQUIRED
                    'startHour' => <integer || string || DateTime>, // REQUIRED
                ],
                // ...
            ],
            'availabilityZone' => '<string>',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [ // REQUIRED
                    'end' => <integer || string || DateTime>,
                    'start' => <integer || string || DateTime>,
                ],
                'filterExpression' => [ // REQUIRED
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>', // REQUIRED
                'serviceCode' => '<string>', // REQUIRED
                'usageAccountId' => '<string>', // REQUIRED
                'usageType' => '<string>', // REQUIRED
            ],
            'key' => '<string>', // REQUIRED
            'operation' => '<string>', // REQUIRED
            'serviceCode' => '<string>', // REQUIRED
            'usageAccountId' => '<string>', // REQUIRED
            'usageType' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The ID of the Bill Scenario for which you want to create the modeled usage.

clientToken
Type: string

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

usageModifications
Required: Yes
Type: Array of BatchCreateBillScenarioUsageModificationEntry structures

List of usage that you want to model in the Bill Scenario.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|NOT_FOUND|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'key' => '<string>',
        ],
        // ...
    ],
    'items' => [
        [
            'availabilityZone' => '<string>',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [
                    'end' => <DateTime>,
                    'start' => <DateTime>,
                ],
                'filterExpression' => [
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>',
                'serviceCode' => '<string>',
                'usageAccountId' => '<string>',
                'usageType' => '<string>',
            ],
            'id' => '<string>',
            'key' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'quantities' => [
                [
                    'amount' => <float>,
                    'startHour' => <DateTime>,
                    'unit' => '<string>',
                ],
                // ...
            ],
            'serviceCode' => '<string>',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors

Returns the list of errors reason and the usage item keys that cannot be created in the Bill Scenario.

items

Returns the list of successful usage line items that were created for the Bill Scenario.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchCreateWorkloadEstimateUsage

$result = $client->batchCreateWorkloadEstimateUsage([/* ... */]);
$promise = $client->batchCreateWorkloadEstimateUsageAsync([/* ... */]);

Create Amazon Web Services service usage that you want to model in a Workload Estimate.

Parameter Syntax

$result = $client->batchCreateWorkloadEstimateUsage([
    'clientToken' => '<string>',
    'usage' => [ // REQUIRED
        [
            'amount' => <float>, // REQUIRED
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [ // REQUIRED
                    'end' => <integer || string || DateTime>,
                    'start' => <integer || string || DateTime>,
                ],
                'filterExpression' => [ // REQUIRED
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>', // REQUIRED
                'serviceCode' => '<string>', // REQUIRED
                'usageAccountId' => '<string>', // REQUIRED
                'usageType' => '<string>', // REQUIRED
            ],
            'key' => '<string>', // REQUIRED
            'operation' => '<string>', // REQUIRED
            'serviceCode' => '<string>', // REQUIRED
            'usageAccountId' => '<string>', // REQUIRED
            'usageType' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'workloadEstimateId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

usage
Required: Yes
Type: Array of BatchCreateWorkloadEstimateUsageEntry structures

List of usage that you want to model in the Workload estimate.

workloadEstimateId
Required: Yes
Type: string

The ID of the Workload estimate for which you want to create the modeled usage.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|NOT_FOUND|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'key' => '<string>',
        ],
        // ...
    ],
    'items' => [
        [
            'cost' => <float>,
            'currency' => 'USD',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [
                    'end' => <DateTime>,
                    'start' => <DateTime>,
                ],
                'filterExpression' => [
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>',
                'serviceCode' => '<string>',
                'usageAccountId' => '<string>',
                'usageType' => '<string>',
            ],
            'id' => '<string>',
            'key' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'quantity' => [
                'amount' => <float>,
                'unit' => '<string>',
            ],
            'serviceCode' => '<string>',
            'status' => 'VALID|INVALID|STALE',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors
Type: Array of BatchCreateWorkloadEstimateUsageError structures

Returns the list of errors reason and the usage item keys that cannot be created in the Workload estimate.

items
Type: Array of BatchCreateWorkloadEstimateUsageItem structures

Returns the list of successful usage line items that were created for the Workload estimate.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchDeleteBillScenarioCommitmentModification

$result = $client->batchDeleteBillScenarioCommitmentModification([/* ... */]);
$promise = $client->batchDeleteBillScenarioCommitmentModificationAsync([/* ... */]);

Delete commitment that you have created in a Bill Scenario. You can only delete a commitment that you had added and cannot model deletion (or removal) of a existing commitment. If you want model deletion of an existing commitment, see the negate BillScenarioCommitmentModificationAction of BatchCreateBillScenarioCommitmentModification operation.

Parameter Syntax

$result = $client->batchDeleteBillScenarioCommitmentModification([
    'billScenarioId' => '<string>', // REQUIRED
    'ids' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The ID of the Bill Scenario for which you want to delete the modeled commitment.

ids
Required: Yes
Type: Array of strings

List of commitments that you want to delete from the Bill Scenario.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'id' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors

Returns the list of errors reason and the commitment item keys that cannot be deleted from the Bill Scenario.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchDeleteBillScenarioUsageModification

$result = $client->batchDeleteBillScenarioUsageModification([/* ... */]);
$promise = $client->batchDeleteBillScenarioUsageModificationAsync([/* ... */]);

Delete usage that you have created in a Bill Scenario. You can only delete usage that you had added and cannot model deletion (or removal) of a existing usage. If you want model removal of an existing usage, see BatchUpdateBillScenarioUsageModification.

Parameter Syntax

$result = $client->batchDeleteBillScenarioUsageModification([
    'billScenarioId' => '<string>', // REQUIRED
    'ids' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The ID of the Bill Scenario for which you want to delete the modeled usage.

ids
Required: Yes
Type: Array of strings

List of usage that you want to delete from the Bill Scenario.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'id' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors

Returns the list of errors reason and the usage item keys that cannot be deleted from the Bill Scenario.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchDeleteWorkloadEstimateUsage

$result = $client->batchDeleteWorkloadEstimateUsage([/* ... */]);
$promise = $client->batchDeleteWorkloadEstimateUsageAsync([/* ... */]);

Delete usage that you have created in a Workload estimate. You can only delete usage that you had added and cannot model deletion (or removal) of a existing usage. If you want model removal of an existing usage, see BatchUpdateWorkloadEstimateUsage.

Parameter Syntax

$result = $client->batchDeleteWorkloadEstimateUsage([
    'ids' => ['<string>', ...], // REQUIRED
    'workloadEstimateId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ids
Required: Yes
Type: Array of strings

List of usage that you want to delete from the Workload estimate.

workloadEstimateId
Required: Yes
Type: string

The ID of the Workload estimate for which you want to delete the modeled usage.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|NOT_FOUND|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'id' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors
Type: Array of BatchDeleteWorkloadEstimateUsageError structures

Returns the list of errors reason and the usage item keys that cannot be deleted from the Workload estimate.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchUpdateBillScenarioCommitmentModification

$result = $client->batchUpdateBillScenarioCommitmentModification([/* ... */]);
$promise = $client->batchUpdateBillScenarioCommitmentModificationAsync([/* ... */]);

Update a newly added or existing commitment. You can update the commitment group based on a commitment ID and a Bill scenario ID.

Parameter Syntax

$result = $client->batchUpdateBillScenarioCommitmentModification([
    'billScenarioId' => '<string>', // REQUIRED
    'commitmentModifications' => [ // REQUIRED
        [
            'group' => '<string>',
            'id' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The ID of the Bill Scenario for which you want to modify the commitment group of a modeled commitment.

commitmentModifications
Required: Yes
Type: Array of BatchUpdateBillScenarioCommitmentModificationEntry structures

List of commitments that you want to update in a Bill Scenario.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|NOT_FOUND|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'id' => '<string>',
        ],
        // ...
    ],
    'items' => [
        [
            'commitmentAction' => [
                'addReservedInstanceAction' => [
                    'instanceCount' => <integer>,
                    'reservedInstancesOfferingId' => '<string>',
                ],
                'addSavingsPlanAction' => [
                    'commitment' => <float>,
                    'savingsPlanOfferingId' => '<string>',
                ],
                'negateReservedInstanceAction' => [
                    'reservedInstancesId' => '<string>',
                ],
                'negateSavingsPlanAction' => [
                    'savingsPlanId' => '<string>',
                ],
            ],
            'group' => '<string>',
            'id' => '<string>',
            'usageAccountId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors

Returns the list of error reasons and commitment line item IDs that could not be updated for the Bill Scenario.

items
Type: Array of BillScenarioCommitmentModificationItem structures

Returns the list of successful commitment line items that were updated for a Bill Scenario.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchUpdateBillScenarioUsageModification

$result = $client->batchUpdateBillScenarioUsageModification([/* ... */]);
$promise = $client->batchUpdateBillScenarioUsageModificationAsync([/* ... */]);

Update a newly added or existing usage lines. You can update the usage amounts, usage hour, and usage group based on a usage ID and a Bill scenario ID.

Parameter Syntax

$result = $client->batchUpdateBillScenarioUsageModification([
    'billScenarioId' => '<string>', // REQUIRED
    'usageModifications' => [ // REQUIRED
        [
            'amounts' => [
                [
                    'amount' => <float>, // REQUIRED
                    'startHour' => <integer || string || DateTime>, // REQUIRED
                ],
                // ...
            ],
            'group' => '<string>',
            'id' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The ID of the Bill Scenario for which you want to modify the usage lines.

usageModifications
Required: Yes
Type: Array of BatchUpdateBillScenarioUsageModificationEntry structures

List of usage lines that you want to update in a Bill Scenario identified by the usage ID.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|NOT_FOUND|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'id' => '<string>',
        ],
        // ...
    ],
    'items' => [
        [
            'availabilityZone' => '<string>',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [
                    'end' => <DateTime>,
                    'start' => <DateTime>,
                ],
                'filterExpression' => [
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>',
                'serviceCode' => '<string>',
                'usageAccountId' => '<string>',
                'usageType' => '<string>',
            ],
            'id' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'quantities' => [
                [
                    'amount' => <float>,
                    'startHour' => <DateTime>,
                    'unit' => '<string>',
                ],
                // ...
            ],
            'serviceCode' => '<string>',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors

Returns the list of error reasons and usage line item IDs that could not be updated for the Bill Scenario.

items
Type: Array of BillScenarioUsageModificationItem structures

Returns the list of successful usage line items that were updated for a Bill Scenario.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

BatchUpdateWorkloadEstimateUsage

$result = $client->batchUpdateWorkloadEstimateUsage([/* ... */]);
$promise = $client->batchUpdateWorkloadEstimateUsageAsync([/* ... */]);

Update a newly added or existing usage lines. You can update the usage amounts and usage group based on a usage ID and a Workload estimate ID.

Parameter Syntax

$result = $client->batchUpdateWorkloadEstimateUsage([
    'usage' => [ // REQUIRED
        [
            'amount' => <float>,
            'group' => '<string>',
            'id' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'workloadEstimateId' => '<string>', // REQUIRED
]);

Parameter Details

Members
usage
Required: Yes
Type: Array of BatchUpdateWorkloadEstimateUsageEntry structures

List of usage line amounts and usage group that you want to update in a Workload estimate identified by the usage ID.

workloadEstimateId
Required: Yes
Type: string

The ID of the Workload estimate for which you want to modify the usage lines.

Result Syntax

[
    'errors' => [
        [
            'errorCode' => 'BAD_REQUEST|NOT_FOUND|CONFLICT|INTERNAL_SERVER_ERROR',
            'errorMessage' => '<string>',
            'id' => '<string>',
        ],
        // ...
    ],
    'items' => [
        [
            'cost' => <float>,
            'currency' => 'USD',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [
                    'end' => <DateTime>,
                    'start' => <DateTime>,
                ],
                'filterExpression' => [
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>',
                'serviceCode' => '<string>',
                'usageAccountId' => '<string>',
                'usageType' => '<string>',
            ],
            'id' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'quantity' => [
                'amount' => <float>,
                'unit' => '<string>',
            ],
            'serviceCode' => '<string>',
            'status' => 'VALID|INVALID|STALE',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
errors
Type: Array of BatchUpdateWorkloadEstimateUsageError structures

Returns the list of error reasons and usage line item IDs that could not be updated for the Workload estimate.

items
Type: Array of WorkloadEstimateUsageItem structures

Returns the list of successful usage line items that were updated for a Workload estimate.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

CreateBillEstimate

$result = $client->createBillEstimate([/* ... */]);
$promise = $client->createBillEstimateAsync([/* ... */]);

Create a Bill estimate from a Bill scenario. In the Bill scenario you can model usage addition, usage changes, and usage removal. You can also model commitment addition and commitment removal. After all changes in a Bill scenario is made satisfactorily, you can call this API with a Bill scenario ID to generate the Bill estimate. Bill estimate calculates the pre-tax cost for your consolidated billing family, incorporating all modeled usage and commitments alongside existing usage and commitments from your most recent completed anniversary bill, with any applicable discounts applied.

Parameter Syntax

$result = $client->createBillEstimate([
    'billScenarioId' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'name' => '<string>', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The ID of the Bill Scenario for which you want to create a Bill estimate.

clientToken
Type: string

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

name
Required: Yes
Type: string

The name of the Bill estimate that will be created. Names must be unique for an account.

tags
Type: Associative array of custom strings keys (ResourceTagKey) to strings

An optional list of tags to associate with the specified BillEstimate. You can use resource tags to control access to your BillEstimate using IAM policies. Each tag consists of a key and a value, and each key must be unique for the resource. The following restrictions apply to resource tags:

  • Although the maximum number of array members is 200, you can assign a maximum of 50 user-tags to one resource. The remaining are reserved for Amazon Web Services.

  • The maximum length of a key is 128 characters.

  • The maximum length of a value is 256 characters.

  • Keys and values can only contain alphanumeric characters, spaces, and any of the following: _.:/=+@-.

  • Keys and values are case sensitive.

  • Keys and values are trimmed for any leading or trailing whitespaces.

  • Don't use aws: as a prefix for your keys. This prefix is reserved for Amazon Web Services.

Result Syntax

[
    'billInterval' => [
        'end' => <DateTime>,
        'start' => <DateTime>,
    ],
    'costSummary' => [
        'serviceCostDifferences' => [
            '<String>' => [
                'estimatedCost' => [
                    'amount' => <float>,
                    'currency' => 'USD',
                ],
                'historicalCost' => [
                    'amount' => <float>,
                    'currency' => 'USD',
                ],
            ],
            // ...
        ],
        'totalCostDifference' => [
            'estimatedCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
            'historicalCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
        ],
    ],
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'status' => 'IN_PROGRESS|COMPLETE|FAILED',
]

Result Details

Members
billInterval
Type: BillInterval structure

The bill month start and end timestamp that was used to create the Bill estimate. This is set to the last complete anniversary bill month start and end timestamp.

costSummary
Type: BillEstimateCostSummary structure

Returns summary-level cost information once a Bill estimate is successfully generated. This summary includes: 1) the total cost difference, showing the pre-tax cost change for the consolidated billing family between the completed anniversary bill and the estimated bill, and 2) total cost differences per service, detailing the pre-tax cost of each service, comparing the completed anniversary bill to the estimated bill on a per-service basis.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp of when the Bill estimate create process was started (not when it successfully completed or failed).

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp of when the Bill estimate will expire. A Bill estimate becomes inaccessible after expiration.

failureMessage
Type: string

This attribute provides the reason if a Bill estimate result generation fails.

id
Required: Yes
Type: string

The unique identifier of your newly created Bill estimate.

name
Type: string

The name of your newly created Bill estimate.

status
Type: string

The status of your newly created Bill estimate. Bill estimate creation can take anywhere between 8 to 12 hours. The status will allow you to identify when the Bill estimate is complete or has failed.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

CreateBillScenario

$result = $client->createBillScenario([/* ... */]);
$promise = $client->createBillScenarioAsync([/* ... */]);

Creates a new bill scenario to model potential changes to Amazon Web Services usage and costs.

Parameter Syntax

$result = $client->createBillScenario([
    'clientToken' => '<string>',
    'name' => '<string>', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
clientToken
Type: string

A unique, case-sensitive identifier to ensure idempotency of the request.

name
Required: Yes
Type: string

A descriptive name for the bill scenario.

tags
Type: Associative array of custom strings keys (ResourceTagKey) to strings

The tags to apply to the bill scenario.

Result Syntax

[
    'billInterval' => [
        'end' => <DateTime>,
        'start' => <DateTime>,
    ],
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'status' => 'READY|LOCKED|FAILED',
]

Result Details

Members
billInterval
Type: BillInterval structure

The time period covered by the bill scenario.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill scenario was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill scenario will expire.

failureMessage
Type: string

An error message if the bill scenario creation failed.

id
Required: Yes
Type: string

The unique identifier for the created bill scenario.

name
Type: string

The name of the created bill scenario.

status
Type: string

The current status of the bill scenario.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

CreateWorkloadEstimate

$result = $client->createWorkloadEstimate([/* ... */]);
$promise = $client->createWorkloadEstimateAsync([/* ... */]);

Creates a new workload estimate to model costs for a specific workload.

Parameter Syntax

$result = $client->createWorkloadEstimate([
    'clientToken' => '<string>',
    'name' => '<string>', // REQUIRED
    'rateType' => 'BEFORE_DISCOUNTS|AFTER_DISCOUNTS',
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
clientToken
Type: string

A unique, case-sensitive identifier to ensure idempotency of the request.

name
Required: Yes
Type: string

A descriptive name for the workload estimate.

rateType
Type: string

The type of pricing rates to use for the estimate.

tags
Type: Associative array of custom strings keys (ResourceTagKey) to strings

The tags to apply to the workload estimate.

Result Syntax

[
    'costCurrency' => 'USD',
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'rateTimestamp' => <DateTime>,
    'rateType' => 'BEFORE_DISCOUNTS|AFTER_DISCOUNTS',
    'status' => 'UPDATING|VALID|INVALID|ACTION_NEEDED',
    'totalCost' => <float>,
]

Result Details

Members
costCurrency
Type: string

The currency of the estimated cost.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the workload estimate was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the workload estimate will expire.

failureMessage
Type: string

An error message if the workload estimate creation failed.

id
Required: Yes
Type: string

The unique identifier for the created workload estimate.

name
Type: string

The name of the created workload estimate.

rateTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp of the pricing rates used for the estimate.

rateType
Type: string

The type of pricing rates used for the estimate.

status
Type: string

The current status of the workload estimate.

totalCost
Type: double

The total estimated cost for the workload.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

DeleteBillEstimate

$result = $client->deleteBillEstimate([/* ... */]);
$promise = $client->deleteBillEstimateAsync([/* ... */]);

Deletes an existing bill estimate.

Parameter Syntax

$result = $client->deleteBillEstimate([
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
identifier
Required: Yes
Type: string

The unique identifier of the bill estimate to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

DeleteBillScenario

$result = $client->deleteBillScenario([/* ... */]);
$promise = $client->deleteBillScenarioAsync([/* ... */]);

Deletes an existing bill scenario.

Parameter Syntax

$result = $client->deleteBillScenario([
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
identifier
Required: Yes
Type: string

The unique identifier of the bill scenario to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

DeleteWorkloadEstimate

$result = $client->deleteWorkloadEstimate([/* ... */]);
$promise = $client->deleteWorkloadEstimateAsync([/* ... */]);

Deletes an existing workload estimate.

Parameter Syntax

$result = $client->deleteWorkloadEstimate([
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
identifier
Required: Yes
Type: string

The unique identifier of the workload estimate to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

GetBillEstimate

$result = $client->getBillEstimate([/* ... */]);
$promise = $client->getBillEstimateAsync([/* ... */]);

Retrieves details of a specific bill estimate.

Parameter Syntax

$result = $client->getBillEstimate([
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
identifier
Required: Yes
Type: string

The unique identifier of the bill estimate to retrieve.

Result Syntax

[
    'billInterval' => [
        'end' => <DateTime>,
        'start' => <DateTime>,
    ],
    'costSummary' => [
        'serviceCostDifferences' => [
            '<String>' => [
                'estimatedCost' => [
                    'amount' => <float>,
                    'currency' => 'USD',
                ],
                'historicalCost' => [
                    'amount' => <float>,
                    'currency' => 'USD',
                ],
            ],
            // ...
        ],
        'totalCostDifference' => [
            'estimatedCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
            'historicalCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
        ],
    ],
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'status' => 'IN_PROGRESS|COMPLETE|FAILED',
]

Result Details

Members
billInterval
Type: BillInterval structure

The time period covered by the bill estimate.

costSummary
Type: BillEstimateCostSummary structure

A summary of the estimated costs.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill estimate was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill estimate will expire.

failureMessage
Type: string

An error message if the bill estimate retrieval failed.

id
Required: Yes
Type: string

The unique identifier of the retrieved bill estimate.

name
Type: string

The name of the retrieved bill estimate.

status
Type: string

The current status of the bill estimate.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

GetBillScenario

$result = $client->getBillScenario([/* ... */]);
$promise = $client->getBillScenarioAsync([/* ... */]);

Retrieves details of a specific bill scenario.

Parameter Syntax

$result = $client->getBillScenario([
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
identifier
Required: Yes
Type: string

The unique identifier of the bill scenario to retrieve.

Result Syntax

[
    'billInterval' => [
        'end' => <DateTime>,
        'start' => <DateTime>,
    ],
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'status' => 'READY|LOCKED|FAILED',
]

Result Details

Members
billInterval
Type: BillInterval structure

The time period covered by the bill scenario.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill scenario was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill scenario will expire.

failureMessage
Type: string

An error message if the bill scenario retrieval failed.

id
Required: Yes
Type: string

The unique identifier of the retrieved bill scenario.

name
Type: string

The name of the retrieved bill scenario.

status
Type: string

The current status of the bill scenario.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

GetPreferences

$result = $client->getPreferences([/* ... */]);
$promise = $client->getPreferencesAsync([/* ... */]);

Retrieves the current preferences for the Amazon Web Services Cost Explorer service.

Parameter Syntax

$result = $client->getPreferences([
]);

Parameter Details

Members

Result Syntax

[
    'managementAccountRateTypeSelections' => ['<string>', ...],
    'memberAccountRateTypeSelections' => ['<string>', ...],
]

Result Details

Members
managementAccountRateTypeSelections
Type: Array of strings

The preferred rate types for the management account.

memberAccountRateTypeSelections
Type: Array of strings

The preferred rate types for member accounts.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

GetWorkloadEstimate

$result = $client->getWorkloadEstimate([/* ... */]);
$promise = $client->getWorkloadEstimateAsync([/* ... */]);

Retrieves details of a specific workload estimate.

Parameter Syntax

$result = $client->getWorkloadEstimate([
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
identifier
Required: Yes
Type: string

The unique identifier of the workload estimate to retrieve.

Result Syntax

[
    'costCurrency' => 'USD',
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'rateTimestamp' => <DateTime>,
    'rateType' => 'BEFORE_DISCOUNTS|AFTER_DISCOUNTS',
    'status' => 'UPDATING|VALID|INVALID|ACTION_NEEDED',
    'totalCost' => <float>,
]

Result Details

Members
costCurrency
Type: string

The currency of the estimated cost.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the workload estimate was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the workload estimate will expire.

failureMessage
Type: string

An error message if the workload estimate retrieval failed.

id
Required: Yes
Type: string

The unique identifier of the retrieved workload estimate.

name
Type: string

The name of the retrieved workload estimate.

rateTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp of the pricing rates used for the estimate.

rateType
Type: string

The type of pricing rates used for the estimate.

status
Type: string

The current status of the workload estimate.

totalCost
Type: double

The total estimated cost for the workload.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillEstimateCommitments

$result = $client->listBillEstimateCommitments([/* ... */]);
$promise = $client->listBillEstimateCommitmentsAsync([/* ... */]);

Lists the commitments associated with a bill estimate.

Parameter Syntax

$result = $client->listBillEstimateCommitments([
    'billEstimateId' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
billEstimateId
Required: Yes
Type: string

The unique identifier of the bill estimate to list commitments for.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'id' => '<string>',
            'monthlyPayment' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
            'offeringId' => '<string>',
            'paymentOption' => '<string>',
            'purchaseAgreementType' => 'SAVINGS_PLANS|RESERVED_INSTANCE',
            'region' => '<string>',
            'termLength' => '<string>',
            'upfrontPayment' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
            'usageAccountId' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of BillEstimateCommitmentSummary structures

The list of commitments associated with the bill estimate.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillEstimateInputCommitmentModifications

$result = $client->listBillEstimateInputCommitmentModifications([/* ... */]);
$promise = $client->listBillEstimateInputCommitmentModificationsAsync([/* ... */]);

Lists the input commitment modifications associated with a bill estimate.

Parameter Syntax

$result = $client->listBillEstimateInputCommitmentModifications([
    'billEstimateId' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
billEstimateId
Required: Yes
Type: string

The unique identifier of the bill estimate to list input commitment modifications for.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'commitmentAction' => [
                'addReservedInstanceAction' => [
                    'instanceCount' => <integer>,
                    'reservedInstancesOfferingId' => '<string>',
                ],
                'addSavingsPlanAction' => [
                    'commitment' => <float>,
                    'savingsPlanOfferingId' => '<string>',
                ],
                'negateReservedInstanceAction' => [
                    'reservedInstancesId' => '<string>',
                ],
                'negateSavingsPlanAction' => [
                    'savingsPlanId' => '<string>',
                ],
            ],
            'group' => '<string>',
            'id' => '<string>',
            'usageAccountId' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items

The list of input commitment modifications associated with the bill estimate.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillEstimateInputUsageModifications

$result = $client->listBillEstimateInputUsageModifications([/* ... */]);
$promise = $client->listBillEstimateInputUsageModificationsAsync([/* ... */]);

Lists the input usage modifications associated with a bill estimate.

Parameter Syntax

$result = $client->listBillEstimateInputUsageModifications([
    'billEstimateId' => '<string>', // REQUIRED
    'filters' => [
        [
            'matchOption' => 'EQUALS|STARTS_WITH|CONTAINS',
            'name' => 'USAGE_ACCOUNT_ID|SERVICE_CODE|USAGE_TYPE|OPERATION|LOCATION|USAGE_GROUP|HISTORICAL_USAGE_ACCOUNT_ID|HISTORICAL_SERVICE_CODE|HISTORICAL_USAGE_TYPE|HISTORICAL_OPERATION|HISTORICAL_LOCATION', // REQUIRED
            'values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
billEstimateId
Required: Yes
Type: string

The unique identifier of the bill estimate to list input usage modifications for.

filters
Type: Array of ListUsageFilter structures

Filters to apply to the list of input usage modifications.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'availabilityZone' => '<string>',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [
                    'end' => <DateTime>,
                    'start' => <DateTime>,
                ],
                'filterExpression' => [
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>',
                'serviceCode' => '<string>',
                'usageAccountId' => '<string>',
                'usageType' => '<string>',
            ],
            'id' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'quantities' => [
                [
                    'amount' => <float>,
                    'startHour' => <DateTime>,
                    'unit' => '<string>',
                ],
                // ...
            ],
            'serviceCode' => '<string>',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of BillEstimateInputUsageModificationSummary structures

The list of input usage modifications associated with the bill estimate.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillEstimateLineItems

$result = $client->listBillEstimateLineItems([/* ... */]);
$promise = $client->listBillEstimateLineItemsAsync([/* ... */]);

Lists the line items associated with a bill estimate.

Parameter Syntax

$result = $client->listBillEstimateLineItems([
    'billEstimateId' => '<string>', // REQUIRED
    'filters' => [
        [
            'matchOption' => 'EQUALS|STARTS_WITH|CONTAINS',
            'name' => 'USAGE_ACCOUNT_ID|SERVICE_CODE|USAGE_TYPE|OPERATION|LOCATION|LINE_ITEM_TYPE', // REQUIRED
            'values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
billEstimateId
Required: Yes
Type: string

The unique identifier of the bill estimate to list line items for.

filters
Type: Array of ListBillEstimateLineItemsFilter structures

Filters to apply to the list of line items.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'availabilityZone' => '<string>',
            'estimatedCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
            'estimatedUsageQuantity' => [
                'amount' => <float>,
                'unit' => '<string>',
            ],
            'historicalCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
            'historicalUsageQuantity' => [
                'amount' => <float>,
                'unit' => '<string>',
            ],
            'id' => '<string>',
            'lineItemId' => '<string>',
            'lineItemType' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'payerAccountId' => '<string>',
            'savingsPlanArns' => ['<string>', ...],
            'serviceCode' => '<string>',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of BillEstimateLineItemSummary structures

The list of line items associated with the bill estimate.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillEstimates

$result = $client->listBillEstimates([/* ... */]);
$promise = $client->listBillEstimatesAsync([/* ... */]);

Lists all bill estimates for the account.

Parameter Syntax

$result = $client->listBillEstimates([
    'createdAtFilter' => [
        'afterTimestamp' => <integer || string || DateTime>,
        'beforeTimestamp' => <integer || string || DateTime>,
    ],
    'expiresAtFilter' => [
        'afterTimestamp' => <integer || string || DateTime>,
        'beforeTimestamp' => <integer || string || DateTime>,
    ],
    'filters' => [
        [
            'matchOption' => 'EQUALS|STARTS_WITH|CONTAINS',
            'name' => 'STATUS|NAME', // REQUIRED
            'values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
createdAtFilter
Type: FilterTimestamp structure

Filter bill estimates based on their creation date.

expiresAtFilter
Type: FilterTimestamp structure

Filter bill estimates based on their expiration date.

filters
Type: Array of ListBillEstimatesFilter structures

Filters to apply to the list of bill estimates.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'billInterval' => [
                'end' => <DateTime>,
                'start' => <DateTime>,
            ],
            'createdAt' => <DateTime>,
            'expiresAt' => <DateTime>,
            'id' => '<string>',
            'name' => '<string>',
            'status' => 'IN_PROGRESS|COMPLETE|FAILED',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of BillEstimateSummary structures

The list of bill estimates for the account.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillScenarioCommitmentModifications

$result = $client->listBillScenarioCommitmentModifications([/* ... */]);
$promise = $client->listBillScenarioCommitmentModificationsAsync([/* ... */]);

Lists the commitment modifications associated with a bill scenario.

Parameter Syntax

$result = $client->listBillScenarioCommitmentModifications([
    'billScenarioId' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The unique identifier of the bill scenario to list commitment modifications for.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'commitmentAction' => [
                'addReservedInstanceAction' => [
                    'instanceCount' => <integer>,
                    'reservedInstancesOfferingId' => '<string>',
                ],
                'addSavingsPlanAction' => [
                    'commitment' => <float>,
                    'savingsPlanOfferingId' => '<string>',
                ],
                'negateReservedInstanceAction' => [
                    'reservedInstancesId' => '<string>',
                ],
                'negateSavingsPlanAction' => [
                    'savingsPlanId' => '<string>',
                ],
            ],
            'group' => '<string>',
            'id' => '<string>',
            'usageAccountId' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of BillScenarioCommitmentModificationItem structures

The list of commitment modifications associated with the bill scenario.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillScenarioUsageModifications

$result = $client->listBillScenarioUsageModifications([/* ... */]);
$promise = $client->listBillScenarioUsageModificationsAsync([/* ... */]);

Lists the usage modifications associated with a bill scenario.

Parameter Syntax

$result = $client->listBillScenarioUsageModifications([
    'billScenarioId' => '<string>', // REQUIRED
    'filters' => [
        [
            'matchOption' => 'EQUALS|STARTS_WITH|CONTAINS',
            'name' => 'USAGE_ACCOUNT_ID|SERVICE_CODE|USAGE_TYPE|OPERATION|LOCATION|USAGE_GROUP|HISTORICAL_USAGE_ACCOUNT_ID|HISTORICAL_SERVICE_CODE|HISTORICAL_USAGE_TYPE|HISTORICAL_OPERATION|HISTORICAL_LOCATION', // REQUIRED
            'values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
billScenarioId
Required: Yes
Type: string

The unique identifier of the bill scenario to list usage modifications for.

filters
Type: Array of ListUsageFilter structures

Filters to apply to the list of usage modifications.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'availabilityZone' => '<string>',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [
                    'end' => <DateTime>,
                    'start' => <DateTime>,
                ],
                'filterExpression' => [
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>',
                'serviceCode' => '<string>',
                'usageAccountId' => '<string>',
                'usageType' => '<string>',
            ],
            'id' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'quantities' => [
                [
                    'amount' => <float>,
                    'startHour' => <DateTime>,
                    'unit' => '<string>',
                ],
                // ...
            ],
            'serviceCode' => '<string>',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of BillScenarioUsageModificationItem structures

The list of usage modifications associated with the bill scenario.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListBillScenarios

$result = $client->listBillScenarios([/* ... */]);
$promise = $client->listBillScenariosAsync([/* ... */]);

Lists all bill scenarios for the account.

Parameter Syntax

$result = $client->listBillScenarios([
    'createdAtFilter' => [
        'afterTimestamp' => <integer || string || DateTime>,
        'beforeTimestamp' => <integer || string || DateTime>,
    ],
    'expiresAtFilter' => [
        'afterTimestamp' => <integer || string || DateTime>,
        'beforeTimestamp' => <integer || string || DateTime>,
    ],
    'filters' => [
        [
            'matchOption' => 'EQUALS|STARTS_WITH|CONTAINS',
            'name' => 'STATUS|NAME', // REQUIRED
            'values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
createdAtFilter
Type: FilterTimestamp structure

Filter bill scenarios based on their creation date.

expiresAtFilter
Type: FilterTimestamp structure

Filter bill scenarios based on their expiration date.

filters
Type: Array of ListBillScenariosFilter structures

Filters to apply to the list of bill scenarios.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'billInterval' => [
                'end' => <DateTime>,
                'start' => <DateTime>,
            ],
            'createdAt' => <DateTime>,
            'expiresAt' => <DateTime>,
            'failureMessage' => '<string>',
            'id' => '<string>',
            'name' => '<string>',
            'status' => 'READY|LOCKED|FAILED',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of BillScenarioSummary structures

The list of bill scenarios for the account.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

Lists all tags associated with a specified resource.

Parameter Syntax

$result = $client->listTagsForResource([
    'arn' => '<string>', // REQUIRED
]);

Parameter Details

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource to list tags for.

Result Syntax

[
    'tags' => ['<string>', ...],
]

Result Details

Members
tags
Type: Associative array of custom strings keys (ResourceTagKey) to strings

The list of tags associated with the specified resource.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListWorkloadEstimateUsage

$result = $client->listWorkloadEstimateUsage([/* ... */]);
$promise = $client->listWorkloadEstimateUsageAsync([/* ... */]);

Lists the usage associated with a workload estimate.

Parameter Syntax

$result = $client->listWorkloadEstimateUsage([
    'filters' => [
        [
            'matchOption' => 'EQUALS|STARTS_WITH|CONTAINS',
            'name' => 'USAGE_ACCOUNT_ID|SERVICE_CODE|USAGE_TYPE|OPERATION|LOCATION|USAGE_GROUP|HISTORICAL_USAGE_ACCOUNT_ID|HISTORICAL_SERVICE_CODE|HISTORICAL_USAGE_TYPE|HISTORICAL_OPERATION|HISTORICAL_LOCATION', // REQUIRED
            'values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'workloadEstimateId' => '<string>', // REQUIRED
]);

Parameter Details

Members
filters
Type: Array of ListUsageFilter structures

Filters to apply to the list of usage items.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

workloadEstimateId
Required: Yes
Type: string

The unique identifier of the workload estimate to list usage for.

Result Syntax

[
    'items' => [
        [
            'cost' => <float>,
            'currency' => 'USD',
            'group' => '<string>',
            'historicalUsage' => [
                'billInterval' => [
                    'end' => <DateTime>,
                    'start' => <DateTime>,
                ],
                'filterExpression' => [
                    'and' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'costCategories' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'dimensions' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                    'not' => [...], // RECURSIVE
                    'or' => [
                        [...], // RECURSIVE
                        // ...
                    ],
                    'tags' => [
                        'key' => '<string>',
                        'matchOptions' => ['<string>', ...],
                        'values' => ['<string>', ...],
                    ],
                ],
                'location' => '<string>',
                'operation' => '<string>',
                'serviceCode' => '<string>',
                'usageAccountId' => '<string>',
                'usageType' => '<string>',
            ],
            'id' => '<string>',
            'location' => '<string>',
            'operation' => '<string>',
            'quantity' => [
                'amount' => <float>,
                'unit' => '<string>',
            ],
            'serviceCode' => '<string>',
            'status' => 'VALID|INVALID|STALE',
            'usageAccountId' => '<string>',
            'usageType' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of WorkloadEstimateUsageItem structures

The list of usage items associated with the workload estimate.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ListWorkloadEstimates

$result = $client->listWorkloadEstimates([/* ... */]);
$promise = $client->listWorkloadEstimatesAsync([/* ... */]);

Lists all workload estimates for the account.

Parameter Syntax

$result = $client->listWorkloadEstimates([
    'createdAtFilter' => [
        'afterTimestamp' => <integer || string || DateTime>,
        'beforeTimestamp' => <integer || string || DateTime>,
    ],
    'expiresAtFilter' => [
        'afterTimestamp' => <integer || string || DateTime>,
        'beforeTimestamp' => <integer || string || DateTime>,
    ],
    'filters' => [
        [
            'matchOption' => 'EQUALS|STARTS_WITH|CONTAINS',
            'name' => 'STATUS|NAME', // REQUIRED
            'values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
createdAtFilter
Type: FilterTimestamp structure

Filter workload estimates based on their creation date.

expiresAtFilter
Type: FilterTimestamp structure

Filter workload estimates based on their expiration date.

filters
Type: Array of ListWorkloadEstimatesFilter structures

Filters to apply to the list of workload estimates.

maxResults
Type: int

The maximum number of results to return per page.

nextToken
Type: string

A token to retrieve the next page of results.

Result Syntax

[
    'items' => [
        [
            'costCurrency' => 'USD',
            'createdAt' => <DateTime>,
            'expiresAt' => <DateTime>,
            'failureMessage' => '<string>',
            'id' => '<string>',
            'name' => '<string>',
            'rateTimestamp' => <DateTime>,
            'rateType' => 'BEFORE_DISCOUNTS|AFTER_DISCOUNTS',
            'status' => 'UPDATING|VALID|INVALID|ACTION_NEEDED',
            'totalCost' => <float>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
items
Type: Array of WorkloadEstimateSummary structures

The list of workload estimates for the account.

nextToken
Type: string

A token to retrieve the next page of results, if any.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Adds one or more tags to a specified resource.

Parameter Syntax

$result = $client->tagResource([
    'arn' => '<string>', // REQUIRED
    'tags' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource to add tags to.

tags
Required: Yes
Type: Associative array of custom strings keys (ResourceTagKey) to strings

The tags to add to the resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes one or more tags from a specified resource.

Parameter Syntax

$result = $client->untagResource([
    'arn' => '<string>', // REQUIRED
    'tagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource to remove tags from.

tagKeys
Required: Yes
Type: Array of strings

The keys of the tags to remove from the resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

UpdateBillEstimate

$result = $client->updateBillEstimate([/* ... */]);
$promise = $client->updateBillEstimateAsync([/* ... */]);

Updates an existing bill estimate.

Parameter Syntax

$result = $client->updateBillEstimate([
    'expiresAt' => <integer || string || DateTime>,
    'identifier' => '<string>', // REQUIRED
    'name' => '<string>',
]);

Parameter Details

Members
expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The new expiration date for the bill estimate.

identifier
Required: Yes
Type: string

The unique identifier of the bill estimate to update.

name
Type: string

The new name for the bill estimate.

Result Syntax

[
    'billInterval' => [
        'end' => <DateTime>,
        'start' => <DateTime>,
    ],
    'costSummary' => [
        'serviceCostDifferences' => [
            '<String>' => [
                'estimatedCost' => [
                    'amount' => <float>,
                    'currency' => 'USD',
                ],
                'historicalCost' => [
                    'amount' => <float>,
                    'currency' => 'USD',
                ],
            ],
            // ...
        ],
        'totalCostDifference' => [
            'estimatedCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
            'historicalCost' => [
                'amount' => <float>,
                'currency' => 'USD',
            ],
        ],
    ],
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'status' => 'IN_PROGRESS|COMPLETE|FAILED',
]

Result Details

Members
billInterval
Type: BillInterval structure

The time period covered by the updated bill estimate.

costSummary
Type: BillEstimateCostSummary structure

A summary of the updated estimated costs.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill estimate was originally created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The updated expiration timestamp for the bill estimate.

failureMessage
Type: string

An error message if the bill estimate update failed.

id
Required: Yes
Type: string

The unique identifier of the updated bill estimate.

name
Type: string

The updated name of the bill estimate.

status
Type: string

The current status of the updated bill estimate.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

UpdateBillScenario

$result = $client->updateBillScenario([/* ... */]);
$promise = $client->updateBillScenarioAsync([/* ... */]);

Updates an existing bill scenario.

Parameter Syntax

$result = $client->updateBillScenario([
    'expiresAt' => <integer || string || DateTime>,
    'identifier' => '<string>', // REQUIRED
    'name' => '<string>',
]);

Parameter Details

Members
expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The new expiration date for the bill scenario.

identifier
Required: Yes
Type: string

The unique identifier of the bill scenario to update.

name
Type: string

The new name for the bill scenario.

Result Syntax

[
    'billInterval' => [
        'end' => <DateTime>,
        'start' => <DateTime>,
    ],
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'status' => 'READY|LOCKED|FAILED',
]

Result Details

Members
billInterval
Type: BillInterval structure

The time period covered by the updated bill scenario.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill scenario was originally created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The updated expiration timestamp for the bill scenario.

failureMessage
Type: string

An error message if the bill scenario update failed.

id
Required: Yes
Type: string

The unique identifier of the updated bill scenario.

name
Type: string

The updated name of the bill scenario.

status
Type: string

The current status of the updated bill scenario.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

UpdatePreferences

$result = $client->updatePreferences([/* ... */]);
$promise = $client->updatePreferencesAsync([/* ... */]);

Updates the preferences for the Amazon Web Services Cost Explorer service.

Parameter Syntax

$result = $client->updatePreferences([
    'managementAccountRateTypeSelections' => ['<string>', ...],
    'memberAccountRateTypeSelections' => ['<string>', ...],
]);

Parameter Details

Members
managementAccountRateTypeSelections
Type: Array of strings

The updated preferred rate types for the management account.

memberAccountRateTypeSelections
Type: Array of strings

The updated preferred rate types for member accounts.

Result Syntax

[
    'managementAccountRateTypeSelections' => ['<string>', ...],
    'memberAccountRateTypeSelections' => ['<string>', ...],
]

Result Details

Members
managementAccountRateTypeSelections
Type: Array of strings

The updated preferred rate types for the management account.

memberAccountRateTypeSelections
Type: Array of strings

The updated preferred rate types for member accounts.

Errors

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

ServiceQuotaExceededException:

The request would cause you to exceed your service quota.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

UpdateWorkloadEstimate

$result = $client->updateWorkloadEstimate([/* ... */]);
$promise = $client->updateWorkloadEstimateAsync([/* ... */]);

Updates an existing workload estimate.

Parameter Syntax

$result = $client->updateWorkloadEstimate([
    'expiresAt' => <integer || string || DateTime>,
    'identifier' => '<string>', // REQUIRED
    'name' => '<string>',
]);

Parameter Details

Members
expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The new expiration date for the workload estimate.

identifier
Required: Yes
Type: string

The unique identifier of the workload estimate to update.

name
Type: string

The new name for the workload estimate.

Result Syntax

[
    'costCurrency' => 'USD',
    'createdAt' => <DateTime>,
    'expiresAt' => <DateTime>,
    'failureMessage' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'rateTimestamp' => <DateTime>,
    'rateType' => 'BEFORE_DISCOUNTS|AFTER_DISCOUNTS',
    'status' => 'UPDATING|VALID|INVALID|ACTION_NEEDED',
    'totalCost' => <float>,
]

Result Details

Members
costCurrency
Type: string

The currency of the updated estimated cost.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the workload estimate was originally created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The updated expiration timestamp for the workload estimate.

failureMessage
Type: string

An error message if the workload estimate update failed.

id
Required: Yes
Type: string

The unique identifier of the updated workload estimate.

name
Type: string

The updated name of the workload estimate.

rateTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp of the pricing rates used for the updated estimate.

rateType
Type: string

The type of pricing rates used for the updated estimate.

status
Type: string

The current status of the updated workload estimate.

totalCost
Type: double

The updated total estimated cost for the workload.

Errors

ConflictException:

The request could not be processed because of conflict in the current state of the resource.

ValidationException:

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

DataUnavailableException:

The requested data is currently unavailable.

InternalServerException:

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ResourceNotFoundException:

The specified resource was not found.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

Shapes

AccessDeniedException

Description

You do not have sufficient access to perform this action.

Members
message
Required: Yes
Type: string

AddReservedInstanceAction

Description

Represents an action to add a Reserved Instance to a bill scenario.

Members
instanceCount
Type: int

The number of instances to add for this Reserved Instance offering.

reservedInstancesOfferingId
Type: string

The ID of the Reserved Instance offering to add. For more information, see DescribeReservedInstancesOfferings.

AddSavingsPlanAction

Description

Represents an action to add a Savings Plan to a bill scenario.

Members
commitment
Type: double

The hourly commitment, in the same currency of the savingsPlanOfferingId. This is a value between 0.001 and 1 million. You cannot specify more than five digits after the decimal point.

savingsPlanOfferingId
Type: string

The ID of the Savings Plan offering to add. For more information, see DescribeSavingsPlansOfferings.

BatchCreateBillScenarioCommitmentModificationEntry

Description

Represents an entry object in the batch operation to create bill scenario commitment modifications.

Members
commitmentAction
Required: Yes
Type: BillScenarioCommitmentModificationAction structure

The specific commitment action to be taken (e.g., adding a Reserved Instance or Savings Plan).

group
Type: string

An optional group identifier for the commitment modification.

key
Required: Yes
Type: string

A unique identifier for this entry in the batch operation. This can be any valid string. This key is useful to identify errors associated with any commitment entry as any error is returned with this key.

usageAccountId
Required: Yes
Type: string

The Amazon Web Services account ID to which this commitment will be applied to.

BatchCreateBillScenarioCommitmentModificationError

Description

Represents an error that occurred during a batch create operation for bill scenario commitment modifications.

Members
errorCode
Type: string

The error code associated with the failed operation.

errorMessage
Type: string

A descriptive message for the error that occurred.

key
Type: string

The key of the entry that caused the error.

BatchCreateBillScenarioCommitmentModificationItem

Description

Represents a successfully created item in a batch operation for bill scenario commitment modifications.

Members
commitmentAction

The specific commitment action that was taken.

group
Type: string

The group identifier for the created commitment modification.

id
Type: string

The unique identifier assigned to the created commitment modification.

key
Type: string

The key of the successfully created entry. This can be any valid string. This key is useful to identify errors associated with any commitment entry as any error is returned with this key.

usageAccountId
Type: string

The Amazon Web Services account ID associated with the created commitment modification.

BatchCreateBillScenarioUsageModificationEntry

Description

Represents an entry in a batch operation to create bill scenario usage modifications.

Members
amounts
Type: Array of UsageAmount structures

The amount of usage you want to create for the service use you are modeling.

availabilityZone
Type: string

The Availability Zone that this usage line uses.

group
Type: string

An optional group identifier for the usage modification.

historicalUsage
Type: HistoricalUsageEntity structure

Historical usage data associated with this modification, if available.

key
Required: Yes
Type: string

A unique identifier for this entry in the batch operation. This can be any valid string. This key is useful to identify errors associated with any usage entry as any error is returned with this key.

operation
Required: Yes
Type: string

The specific operation associated with this usage modification. Describes the specific Amazon Web Services operation that this usage line models. For example, RunInstances indicates the operation of an Amazon EC2 instance.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code for this usage modification. This identifies the specific Amazon Web Services service to the customer as a unique short abbreviation. For example, AmazonEC2 and AWSKMS.

usageAccountId
Required: Yes
Type: string

The Amazon Web Services account ID to which this usage will be applied to.

usageType
Required: Yes
Type: string

Describes the usage details of the usage line item.

BatchCreateBillScenarioUsageModificationError

Description

Represents an error that occurred during a batch create operation for bill scenario usage modifications.

Members
errorCode
Type: string

The error code associated with the failed operation.

errorMessage
Type: string

A descriptive message for the error that occurred.

key
Type: string

The key of the entry that caused the error.

BatchCreateBillScenarioUsageModificationItem

Description

Represents a successfully created item in a batch operation for bill scenario usage modifications.

Members
availabilityZone
Type: string

The availability zone associated with this usage modification, if applicable.

group
Type: string

The group identifier for the created usage modification.

historicalUsage
Type: HistoricalUsageEntity structure

Historical usage data associated with this modification, if available.

id
Type: string

The unique identifier assigned to the created usage modification.

key
Type: string

The key of the successfully created entry.

location
Type: string

The location associated with this usage modification.

operation
Required: Yes
Type: string

The specific operation associated with this usage modification.

quantities
Type: Array of UsageQuantity structures

The modified usage quantities.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code for this usage modification.

usageAccountId
Type: string

The Amazon Web Services account ID associated with the created usage modification.

usageType
Required: Yes
Type: string

The type of usage that was modified.

BatchCreateWorkloadEstimateUsageEntry

Description

Represents an entry in a batch operation to create workload estimate usage.

Members
amount
Required: Yes
Type: double

The estimated usage amount.

group
Type: string

An optional group identifier for the usage estimate.

historicalUsage
Type: HistoricalUsageEntity structure

Historical usage data associated with this estimate, if available.

key
Required: Yes
Type: string

A unique identifier for this entry in the batch operation.

operation
Required: Yes
Type: string

The specific operation associated with this usage estimate.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code for this usage estimate.

usageAccountId
Required: Yes
Type: string

The Amazon Web Services account ID associated with this usage estimate.

usageType
Required: Yes
Type: string

The type of usage being estimated.

BatchCreateWorkloadEstimateUsageError

Description

Represents an error that occurred during a batch create operation for workload estimate usage.

Members
errorCode
Type: string

The error code associated with the failed operation.

errorMessage
Type: string

A descriptive message for the error that occurred.

key
Type: string

The key of the entry that caused the error.

BatchCreateWorkloadEstimateUsageItem

Description

Represents a successfully created item in a batch operation for workload estimate usage.

Members
cost
Type: double

The estimated cost associated with this usage.

currency
Type: string

The currency of the estimated cost.

group
Type: string

The group identifier for the created usage estimate.

historicalUsage
Type: HistoricalUsageEntity structure

Historical usage data associated with this estimate, if available.

id
Type: string

The unique identifier assigned to the created usage estimate.

key
Type: string

The key of the successfully created entry.

location
Type: string

The location associated with this usage estimate.

operation
Required: Yes
Type: string

The specific operation associated with this usage estimate.

quantity

The estimated usage quantity.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code for this usage estimate.

status
Type: string

The current status of the created usage estimate.

usageAccountId
Type: string

The Amazon Web Services account ID associated with the created usage estimate.

usageType
Required: Yes
Type: string

The type of usage that was estimated.

BatchDeleteBillScenarioCommitmentModificationError

Description

Represents an error that occurred when deleting a commitment in a Bill Scenario.

Members
errorCode
Type: string

The code associated with the error.

errorMessage
Type: string

The message that describes the error.

id
Type: string

The ID of the error.

BatchDeleteBillScenarioUsageModificationError

Description

Represents an error that occurred when deleting usage in a Bill Scenario.

Members
errorCode
Type: string

The code associated with the error.

errorMessage
Type: string

The message that describes the error.

id
Type: string

The ID of the error.

BatchDeleteWorkloadEstimateUsageError

Description

Represents an error that occurred when deleting usage in a workload estimate.

Members
errorCode
Type: string

The code associated with the error.

errorMessage
Type: string

The message that describes the error.

id
Type: string

The ID of the error.

BatchUpdateBillScenarioCommitmentModificationEntry

Description

Represents an entry in a batch operation to update bill scenario commitment modifications.

Members
group
Type: string

The updated group identifier for the commitment modification.

id
Required: Yes
Type: string

The unique identifier of the commitment modification to update.

BatchUpdateBillScenarioCommitmentModificationError

Description

Represents an error that occurred when updating a commitment in a Bill Scenario.

Members
errorCode
Type: string

The code associated with the error.

errorMessage
Type: string

The message that describes the error.

id
Type: string

The ID of the error.

BatchUpdateBillScenarioUsageModificationEntry

Description

Represents an entry in a batch operation to update bill scenario usage modifications.

Members
amounts
Type: Array of UsageAmount structures

The updated usage amounts for the modification.

group
Type: string

The updated group identifier for the usage modification.

id
Required: Yes
Type: string

The unique identifier of the usage modification to update.

BatchUpdateBillScenarioUsageModificationError

Description

Represents an error that occurred when updating usage in a Bill Scenario.

Members
errorCode
Type: string

The code associated with the error.

errorMessage
Type: string

The message that describes the error.

id
Type: string

The ID of the error.

BatchUpdateWorkloadEstimateUsageEntry

Description

Represents an entry in a batch operation to update workload estimate usage.

Members
amount
Type: double

The updated estimated usage amount.

group
Type: string

The updated group identifier for the usage estimate.

id
Required: Yes
Type: string

The unique identifier of the usage estimate to update.

BatchUpdateWorkloadEstimateUsageError

Description

Represents an error that occurred when updating usage in a workload estimate.

Members
errorCode
Type: string

The code associated with the error.

errorMessage
Type: string

The message that describes the error.

id
Type: string

The ID of the error.

BillEstimateCommitmentSummary

Description

Provides a summary of commitment-related information for a bill estimate.

Members
id
Type: string

The unique identifier of the commitment.

monthlyPayment
Type: CostAmount structure

The monthly payment amount for this commitment, if applicable.

offeringId
Type: string

The identifier of the specific offering associated with this commitment.

paymentOption
Type: string

The payment option chosen for this commitment (e.g., All Upfront, Partial Upfront, No Upfront).

purchaseAgreementType
Type: string

The type of purchase agreement (e.g., Reserved Instance, Savings Plan).

region
Type: string

The Amazon Web Services region associated with this commitment.

termLength
Type: string

The length of the commitment term.

upfrontPayment
Type: CostAmount structure

The upfront payment amount for this commitment, if applicable.

usageAccountId
Type: string

The Amazon Web Services account ID associated with this commitment.

BillEstimateCostSummary

Description

Provides a summary of cost-related information for a bill estimate.

Members
serviceCostDifferences
Type: Associative array of custom strings keys (String) to CostDifference structures

A breakdown of cost differences by Amazon Web Services service.

totalCostDifference
Type: CostDifference structure

The total difference in cost between the estimated and historical costs.

BillEstimateInputCommitmentModificationSummary

Description

Summarizes an input commitment modification for a bill estimate.

Members
commitmentAction

The specific commitment action taken in this modification.

group
Type: string

The group identifier for the commitment modification.

id
Type: string

The unique identifier of the commitment modification.

usageAccountId
Type: string

The Amazon Web Services account ID associated with this commitment modification.

BillEstimateInputUsageModificationSummary

Description

Summarizes an input usage modification for a bill estimate.

Members
availabilityZone
Type: string

The availability zone associated with this usage modification, if applicable.

group
Type: string

The group identifier for the usage modification.

historicalUsage
Type: HistoricalUsageEntity structure

Historical usage data associated with this modification, if available.

id
Type: string

The unique identifier of the usage modification.

location
Type: string

The location associated with this usage modification.

operation
Required: Yes
Type: string

The specific operation associated with this usage modification.

quantities
Type: Array of UsageQuantity structures

The modified usage quantities.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code for this usage modification.

usageAccountId
Type: string

The Amazon Web Services account ID associated with this usage modification.

usageType
Required: Yes
Type: string

The type of usage being modified.

BillEstimateLineItemSummary

Description

Provides a summary of a line item in a bill estimate.

Members
availabilityZone
Type: string

The availability zone associated with this line item, if applicable.

estimatedCost
Type: CostAmount structure

The estimated cost for this line item.

estimatedUsageQuantity
Type: UsageQuantityResult structure

The estimated usage quantity for this line item.

historicalCost
Type: CostAmount structure

The historical cost for this line item.

historicalUsageQuantity
Type: UsageQuantityResult structure

The historical usage quantity for this line item.

id
Type: string

The unique identifier of this line item.

lineItemId
Type: string

The line item identifier from the original bill.

lineItemType
Type: string

The type of this line item (e.g., Usage, Tax, Credit).

location
Type: string

The location associated with this line item.

operation
Required: Yes
Type: string

The specific operation associated with this line item.

payerAccountId
Type: string

The Amazon Web Services account ID of the payer for this line item.

savingsPlanArns
Type: Array of strings

The Amazon Resource Names (ARNs) of any Savings Plans applied to this line item.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code associated with this line item.

usageAccountId
Type: string

The Amazon Web Services account ID associated with the usage for this line item.

usageType
Required: Yes
Type: string

The type of usage for this line item.

BillEstimateSummary

Description

Provides a summary of a bill estimate.

Members
billInterval
Type: BillInterval structure

The time period covered by the bill estimate.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill estimate was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill estimate will expire.

id
Required: Yes
Type: string

The unique identifier of the bill estimate.

name
Type: string

The name of the bill estimate.

status
Type: string

The current status of the bill estimate.

BillInterval

Description

Represents a time interval for a bill or estimate.

Members
end
Type: timestamp (string|DateTime or anything parsable by strtotime)

The end date and time of the interval.

start
Type: timestamp (string|DateTime or anything parsable by strtotime)

The start date and time of the interval.

BillScenarioCommitmentModificationAction

Description

Represents an action to modify commitments in a bill scenario.

Members
addReservedInstanceAction
Type: AddReservedInstanceAction structure

Action to add a Reserved Instance to the scenario.

addSavingsPlanAction
Type: AddSavingsPlanAction structure

Action to add a Savings Plan to the scenario.

negateReservedInstanceAction

Action to remove a Reserved Instance from the scenario.

negateSavingsPlanAction
Type: NegateSavingsPlanAction structure

Action to remove a Savings Plan from the scenario.

BillScenarioCommitmentModificationItem

Description

Represents a commitment modification item in a bill scenario.

Members
commitmentAction

The specific commitment action taken in this modification.

group
Type: string

The group identifier for the commitment modification.

id
Type: string

The unique identifier of the commitment modification.

usageAccountId
Type: string

The Amazon Web Services account ID associated with this commitment modification.

BillScenarioSummary

Description

Provides a summary of a bill scenario.

Members
billInterval
Type: BillInterval structure

The time period covered by the bill scenario.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill scenario was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the bill scenario will expire.

failureMessage
Type: string

An error message if the bill scenario creation or processing failed.

id
Required: Yes
Type: string

The unique identifier of the bill scenario.

name
Type: string

The name of the bill scenario.

status
Type: string

The current status of the bill scenario.

BillScenarioUsageModificationItem

Description

Represents a usage modification item in a bill scenario.

Members
availabilityZone
Type: string

The availability zone associated with this usage modification, if applicable.

group
Type: string

The group identifier for the usage modification.

historicalUsage
Type: HistoricalUsageEntity structure

Historical usage data associated with this modification, if available.

id
Type: string

The unique identifier of the usage modification.

location
Type: string

The location associated with this usage modification.

operation
Required: Yes
Type: string

The specific operation associated with this usage modification.

quantities
Type: Array of UsageQuantity structures

The modified usage quantities.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code for this usage modification.

usageAccountId
Type: string

The Amazon Web Services account ID associated with this usage modification.

usageType
Required: Yes
Type: string

The type of usage being modified.

ConflictException

Description

The request could not be processed because of conflict in the current state of the resource.

Members
message
Required: Yes
Type: string
resourceId
Required: Yes
Type: string

The identifier of the resource that was not found.

resourceType
Required: Yes
Type: string

The type of the resource that was not found.

CostAmount

Description

Represents a monetary amount with associated currency.

Members
amount
Type: double

The numeric value of the cost.

currency
Type: string

The currency code for the cost amount.

CostDifference

Description

Represents the difference between historical and estimated costs.

Members
estimatedCost
Type: CostAmount structure

The estimated cost amount.

historicalCost
Type: CostAmount structure

The historical cost amount.

DataUnavailableException

Description

The requested data is currently unavailable.

Members
message
Required: Yes
Type: string

Expression

Description

Represents a complex filtering expression for cost and usage data.

Members
and
Type: Array of Expression structures

A list of expressions to be combined with AND logic.

costCategories
Type: ExpressionFilter structure

Filters based on cost categories.

dimensions
Type: ExpressionFilter structure

Filters based on dimensions (e.g., service, operation).

not
Type: Expression structure

An expression to be negated.

or
Type: Array of Expression structures

A list of expressions to be combined with OR logic.

tags
Type: ExpressionFilter structure

Filters based on resource tags.

ExpressionFilter

Description

Represents a filter used within an expression.

Members
key
Type: string

The key or attribute to filter on.

matchOptions
Type: Array of strings

The match options for the filter (e.g., equals, contains).

values
Type: Array of strings

The values to match against.

FilterTimestamp

Description

Represents a time-based filter.

Members
afterTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

Include results after this timestamp.

beforeTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

Include results before this timestamp.

HistoricalUsageEntity

Description

Represents historical usage data for a specific entity.

Members
billInterval
Required: Yes
Type: BillInterval structure

The time interval for the historical usage data.

filterExpression
Required: Yes
Type: Expression structure

An optional filter expression to apply to the historical usage data.

location
Type: string

The location associated with the usage.

operation
Required: Yes
Type: string

The specific operation associated with the usage.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code associated with the usage.

usageAccountId
Required: Yes
Type: string

The Amazon Web Services account ID associated with the usage.

usageType
Required: Yes
Type: string

The type of usage.

InternalServerException

Description

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

Members
message
Required: Yes
Type: string
retryAfterSeconds
Type: int

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

ListBillEstimateLineItemsFilter

Description

Represents a filter for listing bill estimate line items.

Members
matchOption
Type: string

The match option for the filter (e.g., equals, contains).

name
Required: Yes
Type: string

The name of the filter attribute.

values
Required: Yes
Type: Array of strings

The values to filter by.

ListBillEstimatesFilter

Description

Represents a filter for listing bill estimates.

Members
matchOption
Type: string

The match option for the filter (e.g., equals, contains).

name
Required: Yes
Type: string

The name of the filter attribute.

values
Required: Yes
Type: Array of strings

The values to filter by.

ListBillScenariosFilter

Description

Represents a filter for listing bill scenarios.

Members
matchOption
Type: string

The match option for the filter (e.g., equals, contains).

name
Required: Yes
Type: string

The name of the filter attribute.

values
Required: Yes
Type: Array of strings

The values to filter by.

ListUsageFilter

Description

Represents a filter for listing usage data.

Members
matchOption
Type: string

The match option for the filter (e.g., equals, contains).

name
Required: Yes
Type: string

The name of the filter attribute.

values
Required: Yes
Type: Array of strings

The values to filter by.

ListWorkloadEstimatesFilter

Description

Represents a filter for listing workload estimates.

Members
matchOption
Type: string

The match option for the filter (e.g., equals, contains).

name
Required: Yes
Type: string

The name of the filter attribute.

values
Required: Yes
Type: Array of strings

The values to filter by.

NegateReservedInstanceAction

Description

Represents an action to remove a Reserved Instance from a bill scenario.

This is the ID of an existing Reserved Instance in your account.

Members
reservedInstancesId
Type: string

The ID of the Reserved Instance to remove.

NegateSavingsPlanAction

Description

Represents an action to remove a Savings Plan from a bill scenario.

This is the ID of an existing Savings Plan in your account.

Members
savingsPlanId
Type: string

The ID of the Savings Plan to remove.

ResourceNotFoundException

Description

The specified resource was not found.

Members
message
Required: Yes
Type: string
resourceId
Required: Yes
Type: string

The identifier of the resource that was not found.

resourceType
Required: Yes
Type: string

The type of the resource that was not found.

ServiceQuotaExceededException

Description

The request would cause you to exceed your service quota.

Members
message
Required: Yes
Type: string
quotaCode
Type: string

The quota code that was exceeded.

resourceId
Required: Yes
Type: string

The identifier of the resource that exceeded quota.

resourceType
Required: Yes
Type: string

The type of the resource that exceeded quota.

serviceCode
Type: string

The service code that exceeded quota.

ThrottlingException

Description

The request was denied due to request throttling.

Members
message
Required: Yes
Type: string
quotaCode
Type: string

The quota code that exceeded the throttling limit.

retryAfterSeconds
Type: int

The service code that exceeded the throttling limit. Retry your request, but if the problem persists, contact Amazon Web Services support.

serviceCode
Type: string

The service code that exceeded the throttling limit.

UsageAmount

Description

Represents a usage amount for a specific time period.

Members
amount
Required: Yes
Type: double

The usage amount for the period.

startHour
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The start hour of the usage period.

UsageQuantity

Description

Represents a usage quantity with associated unit and time period.

Members
amount
Type: double

The numeric value of the usage quantity.

startHour
Type: timestamp (string|DateTime or anything parsable by strtotime)

The start hour of the usage period.

unit
Type: string

The unit of measurement for the usage quantity.

UsageQuantityResult

Description

Represents the result of a usage quantity calculation.

Members
amount
Type: double

The numeric value of the usage quantity result.

unit
Type: string

The unit of measurement for the usage quantity result.

ValidationException

Description

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

Members
fieldList
Type: Array of ValidationExceptionField structures

The list of fields that are invalid.

message
Required: Yes
Type: string
reason
Type: string

The reason for the validation exception.

ValidationExceptionField

Description

Represents a field that failed validation in a request.

Members
message
Required: Yes
Type: string

The error message describing why the field failed validation.

name
Required: Yes
Type: string

The name of the field that failed validation.

WorkloadEstimateSummary

Description

Provides a summary of a workload estimate.

Members
costCurrency
Type: string

The currency of the estimated cost.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the workload estimate was created.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the workload estimate will expire.

failureMessage
Type: string

An error message if the workload estimate creation or processing failed.

id
Required: Yes
Type: string

The unique identifier of the workload estimate.

name
Type: string

The name of the workload estimate.

rateTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp of the pricing rates used for the estimate.

rateType
Type: string

The type of pricing rates used for the estimate.

status
Type: string

The current status of the workload estimate.

totalCost
Type: double

The total estimated cost for the workload.

WorkloadEstimateUsageItem

Description

Represents a usage item in a workload estimate.

Members
cost
Type: double

The estimated cost for this usage item.

currency
Type: string

The currency of the estimated cost.

group
Type: string

The group identifier for this usage item.

historicalUsage
Type: HistoricalUsageEntity structure

Historical usage data associated with this item, if available.

id
Type: string

The unique identifier of this usage item.

location
Type: string

The location associated with this usage item.

operation
Required: Yes
Type: string

The specific operation associated with this usage item.

quantity

The estimated usage quantity for this item.

serviceCode
Required: Yes
Type: string

The Amazon Web Services service code associated with this usage item.

status
Type: string

The current status of this usage item.

usageAccountId
Type: string

The Amazon Web Services account ID associated with this usage item.

usageType
Required: Yes
Type: string

The type of usage for this item.

WorkloadEstimateUsageQuantity

Description

Represents a usage quantity for a workload estimate.

Members
amount
Type: double

The numeric value of the usage quantity.

unit
Type: string

The unit of measurement for the usage quantity.