Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Retrieves cost and usage metrics for your account. You can specify which
cost and usage-related metric that you want the request to return. For
example, you can specify BlendedCosts
or UsageQuantity
. You can also
filter and group your data by various dimensions, such as SERVICE
or
AZ
, in a specific time range. For a complete list of valid dimensions,
see the
GetDimensionValues
operation. Management account in an organization in Organizations have
access to all member accounts.
For information about filter limitations, see Quotas and restrictions in the Billing and Cost Management User Guide.
Synopsis
- data GetCostAndUsage = GetCostAndUsage' {}
- newGetCostAndUsage :: DateInterval -> Granularity -> GetCostAndUsage
- getCostAndUsage_groupBy :: Lens' GetCostAndUsage (Maybe [GroupDefinition])
- getCostAndUsage_nextPageToken :: Lens' GetCostAndUsage (Maybe Text)
- getCostAndUsage_filter :: Lens' GetCostAndUsage (Maybe Expression)
- getCostAndUsage_timePeriod :: Lens' GetCostAndUsage DateInterval
- getCostAndUsage_granularity :: Lens' GetCostAndUsage Granularity
- getCostAndUsage_metrics :: Lens' GetCostAndUsage [Text]
- data GetCostAndUsageResponse = GetCostAndUsageResponse' {}
- newGetCostAndUsageResponse :: Int -> GetCostAndUsageResponse
- getCostAndUsageResponse_resultsByTime :: Lens' GetCostAndUsageResponse (Maybe [ResultByTime])
- getCostAndUsageResponse_nextPageToken :: Lens' GetCostAndUsageResponse (Maybe Text)
- getCostAndUsageResponse_dimensionValueAttributes :: Lens' GetCostAndUsageResponse (Maybe [DimensionValuesWithAttributes])
- getCostAndUsageResponse_groupDefinitions :: Lens' GetCostAndUsageResponse (Maybe [GroupDefinition])
- getCostAndUsageResponse_httpStatus :: Lens' GetCostAndUsageResponse Int
Creating a Request
data GetCostAndUsage Source #
See: newGetCostAndUsage
smart constructor.
GetCostAndUsage' | |
|
Instances
Create a value of GetCostAndUsage
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:groupBy:GetCostAndUsage'
, getCostAndUsage_groupBy
- You can group Amazon Web Services costs using up to two different
groups, either dimensions, tag keys, cost categories, or any two group
by types.
Valid values for the DIMENSION
type are AZ
, INSTANCE_TYPE
,
LEGAL_ENTITY_NAME
, LINKED_ACCOUNT
, OPERATION
, PLATFORM
,
PURCHASE_TYPE
, SERVICE
, TENANCY
, RECORD_TYPE
, and USAGE_TYPE
.
When you group by the TAG
type and include a valid tag key, you get
all tag values, including empty strings.
$sel:nextPageToken:GetCostAndUsage'
, getCostAndUsage_nextPageToken
- The token to retrieve the next set of results. Amazon Web Services
provides the token when the response from a previous call has more
results than the maximum page size.
$sel:filter':GetCostAndUsage'
, getCostAndUsage_filter
- Filters Amazon Web Services 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.
$sel:timePeriod:GetCostAndUsage'
, getCostAndUsage_timePeriod
- Sets the start date and end date for retrieving Amazon Web Services
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
.
$sel:granularity:GetCostAndUsage'
, getCostAndUsage_granularity
- Sets the Amazon Web Services 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
.
$sel:metrics:GetCostAndUsage'
, getCostAndUsage_metrics
- 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
.
If you return the 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 and GB). To get more
meaningful UsageQuantity
metrics, filter by UsageType
or
UsageTypeGroups
.
Metrics
is required for GetCostAndUsage
requests.
Request Lenses
getCostAndUsage_groupBy :: Lens' GetCostAndUsage (Maybe [GroupDefinition]) Source #
You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, or any two group by types.
Valid values for the DIMENSION
type are AZ
, INSTANCE_TYPE
,
LEGAL_ENTITY_NAME
, LINKED_ACCOUNT
, OPERATION
, PLATFORM
,
PURCHASE_TYPE
, SERVICE
, TENANCY
, RECORD_TYPE
, and USAGE_TYPE
.
When you group by the TAG
type and include a valid tag key, you get
all tag values, including empty strings.
getCostAndUsage_nextPageToken :: Lens' GetCostAndUsage (Maybe Text) Source #
The token to retrieve the next set of results. Amazon Web Services provides the token when the response from a previous call has more results than the maximum page size.
getCostAndUsage_filter :: Lens' GetCostAndUsage (Maybe Expression) Source #
Filters Amazon Web Services 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.
getCostAndUsage_timePeriod :: Lens' GetCostAndUsage DateInterval Source #
Sets the start date and end date for retrieving Amazon Web Services
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
.
getCostAndUsage_granularity :: Lens' GetCostAndUsage Granularity Source #
Sets the Amazon Web Services 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
.
getCostAndUsage_metrics :: Lens' GetCostAndUsage [Text] Source #
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
.
If you return the 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 and GB). To get more
meaningful UsageQuantity
metrics, filter by UsageType
or
UsageTypeGroups
.
Metrics
is required for GetCostAndUsage
requests.
Destructuring the Response
data GetCostAndUsageResponse Source #
See: newGetCostAndUsageResponse
smart constructor.
GetCostAndUsageResponse' | |
|
Instances
newGetCostAndUsageResponse Source #
Create a value of GetCostAndUsageResponse
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:resultsByTime:GetCostAndUsageResponse'
, getCostAndUsageResponse_resultsByTime
- The time period that's covered by the results in the response.
$sel:nextPageToken:GetCostAndUsage'
, getCostAndUsageResponse_nextPageToken
- The token for the next set of retrievable results. Amazon Web Services
provides the token when the response from a previous call has more
results than the maximum page size.
$sel:dimensionValueAttributes:GetCostAndUsageResponse'
, getCostAndUsageResponse_dimensionValueAttributes
- The attributes that apply to a specific dimension value. For example, if
the value is a linked account, the attribute is that account name.
$sel:groupDefinitions:GetCostAndUsageResponse'
, getCostAndUsageResponse_groupDefinitions
- The groups that are specified by the Filter
or GroupBy
parameters in
the request.
$sel:httpStatus:GetCostAndUsageResponse'
, getCostAndUsageResponse_httpStatus
- The response's http status code.
Response Lenses
getCostAndUsageResponse_resultsByTime :: Lens' GetCostAndUsageResponse (Maybe [ResultByTime]) Source #
The time period that's covered by the results in the response.
getCostAndUsageResponse_nextPageToken :: Lens' GetCostAndUsageResponse (Maybe Text) Source #
The token for the next set of retrievable results. Amazon Web Services provides the token when the response from a previous call has more results than the maximum page size.
getCostAndUsageResponse_dimensionValueAttributes :: Lens' GetCostAndUsageResponse (Maybe [DimensionValuesWithAttributes]) Source #
The attributes that apply to a specific dimension value. For example, if the value is a linked account, the attribute is that account name.
getCostAndUsageResponse_groupDefinitions :: Lens' GetCostAndUsageResponse (Maybe [GroupDefinition]) Source #
The groups that are specified by the Filter
or GroupBy
parameters in
the request.
getCostAndUsageResponse_httpStatus :: Lens' GetCostAndUsageResponse Int Source #
The response's http status code.