logo
Expand description

The Cost Explorer API enables you to programmatically query your cost and usage data. You can query for aggregated data such as total monthly costs or total daily usage. You can also query for granular data, such as the number of daily write operations for Amazon DynamoDB database tables in your production environment.

Service Endpoint

The Cost Explorer API provides the following endpoint:

  • https://ce.us-east-1.amazonaws.com

For information about costs associated with the Cost Explorer API, see AWS Cost Management Pricing.

If you’re using the service, you’re probably looking for CostExplorerClient and CostExplorer.

Structs

An unusual cost pattern. This consists of the detailed metadata and the current status of the anomaly object.

The time period for an anomaly.

This object continuously inspects your account's cost data for anomalies, based on MonitorType and MonitorSpecification. The content consists of detailed metadata and the current status of the monitor object.

Quantifies the anomaly. The higher score means that it is more anomalous.

The association between a monitor, threshold, and list of subscribers used to deliver notifications about anomalies detected by a monitor that exceeds a threshold. The content consists of the detailed metadata and the current status of the AnomalySubscription object.

The structure of Cost Categories. This includes detailed metadata and the set of rules for the CostCategory object.

When creating or updating a cost category, you can define the CostCategoryRule rule type as INHERITED_VALUE. This rule type adds the flexibility of defining a rule that dynamically inherits the cost category value from the dimension value defined by CostCategoryInheritedValueDimension. For example, if you wanted to dynamically group costs based on the value of a specific tag key, you would first choose an inherited value rule type, then choose the tag dimension and specify the tag key to use.

The list of processing statuses for Cost Management products for a specific cost category.

A reference to a Cost Category containing only enough information to identify the Cost Category.

You can use this information to retrieve the full Cost Category information using DescribeCostCategory.

Rules are processed in order. If there are multiple rules that match the line item, then the first rule to match is used to determine that Cost Category value.

The Cost Categories values used for filtering the costs.

If Values and Key are not specified, the ABSENT MatchOption is applied to all Cost Categories. That is, filtering on resources that are not mapped to any Cost Categories.

If Values is provided and Key is not specified, the ABSENT MatchOption is applied to the Cost Categories Key only. That is, filtering on resources without the given Cost Categories key.

A client for the AWS Cost Explorer API.

The amount of instance usage that a reservation covered.

Reservation coverage for a specified period, in hours.

How much it costs to run an instance.

How long a running instance either used a reservation or was On-Demand.

The amount of instance usage, in normalized units. Normalized units enable you to see your EC2 usage for multiple sizes of instances in a uniform way. For example, suppose you run an xlarge instance and a 2xlarge instance. If you run both instances for the same amount of time, the 2xlarge instance uses twice as much of your reservation as the xlarge instance, even though both instances show only one instance-hour. Using normalized units instead of instance-hours, the xlarge instance used 8 normalized units, and the 2xlarge instance used 16 normalized units.

For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide for Linux Instances.

Context about the current instance.

The time period of the request.

The metadata that you can use to filter and group your results. You can use GetDimensionValues to find specific values.

The metadata of a specific type that you can use to filter and group your results. You can use GetDimensionValues to find specific values.

The field that contains a list of disk (local storage) metrics associated with the current instance.

The EBS field that contains a list of EBS metrics associated with the current instance.

Details about the Amazon EC2 instances that AWS recommends that you purchase.

Details on the Amazon EC2 Resource.

Utilization metrics of the instance.

The Amazon EC2 hardware specifications that you want AWS to provide recommendations for.

Details about the Amazon ES instances that AWS recommends that you purchase.

Details about the Amazon ElastiCache instances that AWS recommends that you purchase.

Use Expression to filter by cost or by usage. There are two patterns:

  • Simple dimension values - You can set the dimension name and values for the filters that you plan to use. For example, you can filter for REGION==us-east-1 OR REGION==us-west-1. For GetRightsizingRecommendation, the Region is a full name (for example, REGION==US East (N. Virginia). The Expression example looks like:

    { "Dimensions": { "Key": "REGION", "Values": [ "us-east-1", “us-west-1” ] } }

    The list of dimension values are OR'd together to retrieve cost or usage data. You can create Expression and DimensionValues objects using either with methods or set methods in multiple lines.

  • Compound dimension values with logical operations - You can use multiple Expression types and the logical operators AND/OR/NOT to create a list of one or more Expression objects. This allows you to filter on more advanced options. For example, you can filter on ((REGION == us-east-1 OR REGION == us-west-1) OR (TAG.Type == Type1)) AND (USAGETYPE != DataTransfer). The Expression for that looks like this:

    { "And": [ {"Or": [ {"Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ] }}, {"Tags": { "Key": "TagName", "Values": ["Value1"] } } ]}, {"Not": {"Dimensions": { "Key": "USAGETYPE", "Values": ["DataTransfer"] }}} ] }

    Because each Expression can have only one operator, the service returns an error if more than one is specified. The following example shows an Expression object that creates an error.

    { "And": [ ... ], "DimensionValues": { "Dimension": "USAGETYPE", "Values": [ "DataTransfer" ] } }

For the GetRightsizingRecommendation action, a combination of OR and NOT is not supported. OR is not supported between different dimensions, or dimensions and tags. NOT operators aren't supported. Dimensions are also limited to LINKEDACCOUNT, REGION, or RIGHTSIZINGTYPE.

For the GetReservationPurchaseRecommendation action, only NOT is supported. AND and OR are not supported. Dimensions are limited to LINKEDACCOUNT.

The forecast created for your query.

You can use the following request parameters to query for how much of your instance usage a reservation covered.

One level of grouped data in the results.

Represents a group when you specify a group by criteria or in the response to a query with a specific grouping.

The anomaly's dollar value.

Details about the instances that AWS recommends that you purchase.

The aggregated value for a metric.

Details on the modification recommendation.

The network field that contains a list of network metrics associated with the current instance.

Details about the Amazon RDS instances that AWS recommends that you purchase.

Details about the Amazon Redshift instances that AWS recommends that you purchase.

The aggregated numbers for your reservation usage.

A group of reservations that share a set of attributes.

A specific reservation that AWS recommends for purchase.

Details about your recommended reservation purchase.

Information about this specific recommendation, such as the timestamp for when AWS made a specific recommendation.

A summary about this recommendation, such as the currency code, the amount that AWS estimates that you could save, and the total amount of reservation to purchase.

A group of reservations that share a set of attributes.

Details on the resource.

Resource utilization of current resource.

The result that is associated with a time period.

Recommendations to rightsize resources.

Enables you to customize recommendations across two attributes. You can choose to view recommendations for instances within the same instance families or across different instance families. You can also choose to view your estimated savings associated with recommendations with consideration of existing Savings Plans or RI benefits, or neither.

Metadata for this recommendation set.

Summary of rightsizing recommendations

The combination of AWS service, linked account, Region, and usage type where a cost anomaly is observed.

The amortized amount of Savings Plans purchased in a specific account during a specific time interval.

The amount of Savings Plans eligible usage that is covered by Savings Plans. All calculations consider the On-Demand equivalent of your Savings Plans usage.

Specific coverage percentage, On-Demand costs, and spend covered by Savings Plans, and total Savings Plans costs for an account.

Attribute details on a specific Savings Plan.

Contains your request parameters, Savings Plan Recommendations Summary, and Details.

Details for your recommended Savings Plans.

Metadata about your Savings Plans Purchase Recommendations.

Summary metrics for your Savings Plans Purchase Recommendations.

The amount of savings you're accumulating, against the public On-Demand rate of the usage accrued in an account.

The measurement of how well you are using your existing Savings Plans.

The aggregated utilization metrics for your Savings Plans usage.

The amount of Savings Plans utilization, in hours.

A single daily or monthly Savings Plans utilization rate, and details for your account. A management account in an organization have access to member accounts. You can use GetDimensionValues to determine the possible dimension values.

Hardware specifications for the service that you want recommendations for.

The details of how to sort the data.

The recipient of AnomalySubscription notifications.

The values that are available for a tag.

If Values and Key are not specified, the ABSENT MatchOption is applied to all tags. That is, filtering on resources with no tags.

If Values is provided and Key is not specified, the ABSENT MatchOption is applied to the tag Key only. That is, filtering on resources without the given tag key.

Details on recommended instance.

Details on termination recommendation.

Filters cost anomalies based on the total impact.

The amount of utilization, in hours.

Enums

Errors returned by CreateAnomalyMonitor

Errors returned by CreateAnomalySubscription

Errors returned by CreateCostCategoryDefinition

Errors returned by DeleteAnomalyMonitor

Errors returned by DeleteAnomalySubscription

Errors returned by DeleteCostCategoryDefinition

Errors returned by DescribeCostCategoryDefinition

Errors returned by GetAnomalies

Errors returned by GetAnomalyMonitors

Errors returned by GetAnomalySubscriptions

Errors returned by GetCostAndUsage

Errors returned by GetCostAndUsageWithResources

Errors returned by GetCostCategories

Errors returned by GetCostForecast

Errors returned by GetDimensionValues

Errors returned by GetReservationCoverage

Errors returned by GetReservationPurchaseRecommendation

Errors returned by GetReservationUtilization

Errors returned by GetRightsizingRecommendation

Errors returned by GetSavingsPlansCoverage

Errors returned by GetSavingsPlansPurchaseRecommendation

Errors returned by GetSavingsPlansUtilizationDetails

Errors returned by GetSavingsPlansUtilization

Errors returned by GetTags

Errors returned by GetUsageForecast

Errors returned by ListCostCategoryDefinitions

Errors returned by ProvideAnomalyFeedback

Errors returned by UpdateAnomalyMonitor

Errors returned by UpdateAnomalySubscription

Errors returned by UpdateCostCategoryDefinition

Traits

Trait representing the capabilities of the AWS Cost Explorer API. AWS Cost Explorer clients implement this trait.