You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::CostExplorer::Types::GetCostAndUsageRequest
- Inherits:
-
Struct
- Object
- Struct
- Aws::CostExplorer::Types::GetCostAndUsageRequest
- Defined in:
- (unknown)
Overview
When passing GetCostAndUsageRequest as input to an Aws::Client method, you can use a vanilla Hash:
{
time_period: { # required
start: "YearMonthDay", # required
end: "YearMonthDay", # required
},
granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
filter: {
or: [
{
# recursive Expression
},
],
and: [
{
# recursive Expression
},
],
not: {
# recursive Expression
},
dimensions: {
key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
tags: {
key: "TagKey",
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
cost_categories: {
key: "CostCategoryName",
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
},
metrics: ["MetricName"], # required
group_by: [
{
type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
key: "GroupDefinitionKey",
},
],
next_page_token: "NextPageToken",
}
Instance Attribute Summary collapse
-
#filter ⇒ Types::Expression
Filters AWS costs by different dimensions.
-
#granularity ⇒ String
Sets the AWS cost granularity to
MONTHLY
orDAILY
, orHOURLY
. -
#group_by ⇒ Array<Types::GroupDefinition>
You can group AWS costs using up to two different groups, either dimensions, tag keys, cost categories, or any two group by types.
-
#metrics ⇒ Array<String>
Which metrics are returned in the query.
-
#next_page_token ⇒ String
The token to retrieve the next set of results.
-
#time_period ⇒ Types::DateInterval
Sets the start and end dates for retrieving AWS costs.
Instance Attribute Details
#filter ⇒ Types::Expression
Filters AWS costs by different dimensions. For example, you can specify
SERVICE
and LINKED_ACCOUNT
and get the costs that are associated
with that account\'s usage of that service. You can nest Expression
objects to define any combination of dimension filters. For more
information, see Expression.
#granularity ⇒ String
Sets the AWS cost granularity to MONTHLY
or DAILY
, or HOURLY
. If
Granularity
isn\'t set, the response object doesn\'t include the
Granularity
, either MONTHLY
or DAILY
, or HOURLY
.
Possible values:
- DAILY
- MONTHLY
- HOURLY
#group_by ⇒ Array<Types::GroupDefinition>
You can group AWS costs using up to two different groups, either dimensions, tag keys, cost categories, or any two group by types.
When you group by tag key, you get all tag values, including empty strings.
Valid values are AZ
, INSTANCE_TYPE
, LEGAL_ENTITY_NAME
,
LINKED_ACCOUNT
, OPERATION
, PLATFORM
, PURCHASE_TYPE
, SERVICE
,
TAGS
, TENANCY
, RECORD_TYPE
, and USAGE_TYPE
.
#metrics ⇒ Array<String>
Which metrics are returned in the query. For more information about blended and unblended rates, see Why does the \"blended\" annotation appear on some line items in my bill?.
Valid values are AmortizedCost
, BlendedCost
, NetAmortizedCost
,
NetUnblendedCost
, NormalizedUsageAmount
, UnblendedCost
, and
UsageQuantity
.
UsageQuantity
metric, the service aggregates all
usage numbers without taking into account the units. For example, if you
aggregate usageQuantity
across all of Amazon EC2, the results aren\'t
meaningful because Amazon EC2 compute hours and data transfer are
measured in different units (for example, hours vs. GB). To get more
meaningful UsageQuantity
metrics, filter by UsageType
or
UsageTypeGroups
.
Metrics
is required for GetCostAndUsage
requests.
#next_page_token ⇒ String
The token to retrieve the next set of results. AWS provides the token when the response from a previous call has more results than the maximum page size.
#time_period ⇒ Types::DateInterval
Sets the start and end dates for retrieving AWS costs. The start date is
inclusive, but the end date is exclusive. For example, if start
is
2017-01-01
and end
is 2017-05-01
, then the cost and usage data is
retrieved from 2017-01-01
up to and including 2017-04-30
but not
including 2017-05-01
.