Interface GetCostAndUsageRequest.Builder
- All Superinterfaces:
AwsRequest.Builder,Buildable,CopyableBuilder<GetCostAndUsageRequest.Builder,,GetCostAndUsageRequest> CostExplorerRequest.Builder,SdkBuilder<GetCostAndUsageRequest.Builder,,GetCostAndUsageRequest> SdkPojo,SdkRequest.Builder
- Enclosing class:
GetCostAndUsageRequest
-
Method Summary
Modifier and TypeMethodDescriptionbillingViewArn(String billingViewArn) The Amazon Resource Name (ARN) that uniquely identifies a specific billing view.default GetCostAndUsageRequest.Builderfilter(Consumer<Expression.Builder> filter) Filters Amazon Web Services costs by different dimensions.filter(Expression filter) Filters Amazon Web Services costs by different dimensions.granularity(String granularity) Sets the Amazon Web Services cost granularity toMONTHLYorDAILY, orHOURLY.granularity(Granularity granularity) Sets the Amazon Web Services cost granularity toMONTHLYorDAILY, orHOURLY.groupBy(Collection<GroupDefinition> groupBy) You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.groupBy(Consumer<GroupDefinition.Builder>... groupBy) You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.groupBy(GroupDefinition... groupBy) You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.Which metrics are returned in the query.metrics(Collection<String> metrics) Which metrics are returned in the query.nextPageToken(String nextPageToken) The token to retrieve the next set of results.overrideConfiguration(Consumer<AwsRequestOverrideConfiguration.Builder> builderConsumer) Add an optional request override configuration.overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration) Add an optional request override configuration.default GetCostAndUsageRequest.BuildertimePeriod(Consumer<DateInterval.Builder> timePeriod) Sets the start date and end date for retrieving Amazon Web Services costs.timePeriod(DateInterval timePeriod) Sets the start date and end date for retrieving Amazon Web Services costs.Methods inherited from interface software.amazon.awssdk.awscore.AwsRequest.Builder
overrideConfigurationMethods inherited from interface software.amazon.awssdk.utils.builder.CopyableBuilder
copyMethods inherited from interface software.amazon.awssdk.services.costexplorer.model.CostExplorerRequest.Builder
buildMethods inherited from interface software.amazon.awssdk.utils.builder.SdkBuilder
applyMutation, buildMethods inherited from interface software.amazon.awssdk.core.SdkPojo
equalsBySdkFields, sdkFieldNameToField, sdkFields
-
Method Details
-
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
startis2017-01-01andendis2017-05-01, then the cost and usage data is retrieved from2017-01-01up to and including2017-04-30but not including2017-05-01.- Parameters:
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, ifstartis2017-01-01andendis2017-05-01, then the cost and usage data is retrieved from2017-01-01up to and including2017-04-30but not including2017-05-01.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
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
This is a convenience method that creates an instance of thestartis2017-01-01andendis2017-05-01, then the cost and usage data is retrieved from2017-01-01up to and including2017-04-30but not including2017-05-01.DateInterval.Builderavoiding the need to create one manually viaDateInterval.builder().When the
Consumercompletes,SdkBuilder.build()is called immediately and its result is passed totimePeriod(DateInterval).- Parameters:
timePeriod- a consumer that will call methods onDateInterval.Builder- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
granularity
Sets the Amazon Web Services cost granularity to
MONTHLYorDAILY, orHOURLY. IfGranularityisn't set, the response object doesn't include theGranularity, eitherMONTHLYorDAILY, orHOURLY.- Parameters:
granularity- Sets the Amazon Web Services cost granularity toMONTHLYorDAILY, orHOURLY. IfGranularityisn't set, the response object doesn't include theGranularity, eitherMONTHLYorDAILY, orHOURLY.- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
granularity
Sets the Amazon Web Services cost granularity to
MONTHLYorDAILY, orHOURLY. IfGranularityisn't set, the response object doesn't include theGranularity, eitherMONTHLYorDAILY, orHOURLY.- Parameters:
granularity- Sets the Amazon Web Services cost granularity toMONTHLYorDAILY, orHOURLY. IfGranularityisn't set, the response object doesn't include theGranularity, eitherMONTHLYorDAILY, orHOURLY.- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
filter
Filters Amazon Web Services costs by different dimensions. For example, you can specify
SERVICEandLINKED_ACCOUNTand get the costs that are associated with that account's usage of that service. You can nestExpressionobjects to define any combination of dimension filters. For more information, see Expression.Valid values for
MatchOptionsforDimensionsareEQUALSandCASE_SENSITIVE.Valid values for
MatchOptionsforCostCategories,Tags, andProductAttributesareEQUALS,ABSENT, andCASE_SENSITIVE. Default values areEQUALSandCASE_SENSITIVE.You can filter by product attributes with or without grouping by them. If you filter or group by product attributes, the results include only the costs of supported services, and a
SERVICEfilter is optional. For more information, see ProductAttributeValues.If you include a
SERVICEfilter, it must apply to the whole request: combine it with other filters by usingAnd, and include it in every branch of anOr. ASERVICEfilter insideNotdoesn't meet this requirement, and the request fails with aValidationException.- Parameters:
filter- Filters Amazon Web Services costs by different dimensions. For example, you can specifySERVICEandLINKED_ACCOUNTand get the costs that are associated with that account's usage of that service. You can nestExpressionobjects to define any combination of dimension filters. For more information, see Expression.Valid values for
MatchOptionsforDimensionsareEQUALSandCASE_SENSITIVE.Valid values for
MatchOptionsforCostCategories,Tags, andProductAttributesareEQUALS,ABSENT, andCASE_SENSITIVE. Default values areEQUALSandCASE_SENSITIVE.You can filter by product attributes with or without grouping by them. If you filter or group by product attributes, the results include only the costs of supported services, and a
SERVICEfilter is optional. For more information, see ProductAttributeValues.If you include a
SERVICEfilter, it must apply to the whole request: combine it with other filters by usingAnd, and include it in every branch of anOr. ASERVICEfilter insideNotdoesn't meet this requirement, and the request fails with aValidationException.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
filter
Filters Amazon Web Services costs by different dimensions. For example, you can specify
SERVICEandLINKED_ACCOUNTand get the costs that are associated with that account's usage of that service. You can nestExpressionobjects to define any combination of dimension filters. For more information, see Expression.Valid values for
MatchOptionsforDimensionsareEQUALSandCASE_SENSITIVE.Valid values for
MatchOptionsforCostCategories,Tags, andProductAttributesareEQUALS,ABSENT, andCASE_SENSITIVE. Default values areEQUALSandCASE_SENSITIVE.You can filter by product attributes with or without grouping by them. If you filter or group by product attributes, the results include only the costs of supported services, and a
SERVICEfilter is optional. For more information, see ProductAttributeValues.If you include a
This is a convenience method that creates an instance of theSERVICEfilter, it must apply to the whole request: combine it with other filters by usingAnd, and include it in every branch of anOr. ASERVICEfilter insideNotdoesn't meet this requirement, and the request fails with aValidationException.Expression.Builderavoiding the need to create one manually viaExpression.builder().When the
Consumercompletes,SdkBuilder.build()is called immediately and its result is passed tofilter(Expression).- Parameters:
filter- a consumer that will call methods onExpression.Builder- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
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, andUsageQuantity.If you return the
UsageQuantitymetric, the service aggregates all usage numbers without taking into account the units. For example, if you aggregateusageQuantityacross 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 meaningfulUsageQuantitymetrics, filter byUsageTypeorUsageTypeGroups.Metricsis required forGetCostAndUsagerequests.- Parameters:
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, andUsageQuantity.If you return the
UsageQuantitymetric, the service aggregates all usage numbers without taking into account the units. For example, if you aggregateusageQuantityacross 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 meaningfulUsageQuantitymetrics, filter byUsageTypeorUsageTypeGroups.Metricsis required forGetCostAndUsagerequests.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
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, andUsageQuantity.If you return the
UsageQuantitymetric, the service aggregates all usage numbers without taking into account the units. For example, if you aggregateusageQuantityacross 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 meaningfulUsageQuantitymetrics, filter byUsageTypeorUsageTypeGroups.Metricsis required forGetCostAndUsagerequests.- Parameters:
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, andUsageQuantity.If you return the
UsageQuantitymetric, the service aggregates all usage numbers without taking into account the units. For example, if you aggregateusageQuantityacross 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 meaningfulUsageQuantitymetrics, filter byUsageTypeorUsageTypeGroups.Metricsis required forGetCostAndUsagerequests.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
groupBy
You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.
Valid values for the
DIMENSIONtype areAZ,INSTANCE_TYPE,LEGAL_ENTITY_NAME,INVOICING_ENTITY,LINKED_ACCOUNT,OPERATION,PLATFORM,PURCHASE_TYPE,SERVICE,TENANCY,RECORD_TYPE, andUSAGE_TYPE.When you group by the
TAGtype and include a valid tag key, you get all tag values, including empty strings.To group by the
PRODUCT_ATTRIBUTEtype, setKeyto a product attribute key, such asmodel. For the keys of each supported service, see ProductAttributeValues. The results include only the costs of supported services, and if you have no such costs, the response contains no groups.In the response, each group key has the format
key$value, for example,model$Claude Sonnet 5. Costs that have no value for the key are in the groupkey$, for example,model$. Remove thekey$prefix before you use a value in aProductAttributesfilter. Keys are case-sensitive: if you group by a key that doesn't exist, such asModel, all of your costs of supported services are in the groupModel$.- Parameters:
groupBy- You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.Valid values for the
DIMENSIONtype areAZ,INSTANCE_TYPE,LEGAL_ENTITY_NAME,INVOICING_ENTITY,LINKED_ACCOUNT,OPERATION,PLATFORM,PURCHASE_TYPE,SERVICE,TENANCY,RECORD_TYPE, andUSAGE_TYPE.When you group by the
TAGtype and include a valid tag key, you get all tag values, including empty strings.To group by the
PRODUCT_ATTRIBUTEtype, setKeyto a product attribute key, such asmodel. For the keys of each supported service, see ProductAttributeValues. The results include only the costs of supported services, and if you have no such costs, the response contains no groups.In the response, each group key has the format
key$value, for example,model$Claude Sonnet 5. Costs that have no value for the key are in the groupkey$, for example,model$. Remove thekey$prefix before you use a value in aProductAttributesfilter. Keys are case-sensitive: if you group by a key that doesn't exist, such asModel, all of your costs of supported services are in the groupModel$.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
groupBy
You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.
Valid values for the
DIMENSIONtype areAZ,INSTANCE_TYPE,LEGAL_ENTITY_NAME,INVOICING_ENTITY,LINKED_ACCOUNT,OPERATION,PLATFORM,PURCHASE_TYPE,SERVICE,TENANCY,RECORD_TYPE, andUSAGE_TYPE.When you group by the
TAGtype and include a valid tag key, you get all tag values, including empty strings.To group by the
PRODUCT_ATTRIBUTEtype, setKeyto a product attribute key, such asmodel. For the keys of each supported service, see ProductAttributeValues. The results include only the costs of supported services, and if you have no such costs, the response contains no groups.In the response, each group key has the format
key$value, for example,model$Claude Sonnet 5. Costs that have no value for the key are in the groupkey$, for example,model$. Remove thekey$prefix before you use a value in aProductAttributesfilter. Keys are case-sensitive: if you group by a key that doesn't exist, such asModel, all of your costs of supported services are in the groupModel$.- Parameters:
groupBy- You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.Valid values for the
DIMENSIONtype areAZ,INSTANCE_TYPE,LEGAL_ENTITY_NAME,INVOICING_ENTITY,LINKED_ACCOUNT,OPERATION,PLATFORM,PURCHASE_TYPE,SERVICE,TENANCY,RECORD_TYPE, andUSAGE_TYPE.When you group by the
TAGtype and include a valid tag key, you get all tag values, including empty strings.To group by the
PRODUCT_ATTRIBUTEtype, setKeyto a product attribute key, such asmodel. For the keys of each supported service, see ProductAttributeValues. The results include only the costs of supported services, and if you have no such costs, the response contains no groups.In the response, each group key has the format
key$value, for example,model$Claude Sonnet 5. Costs that have no value for the key are in the groupkey$, for example,model$. Remove thekey$prefix before you use a value in aProductAttributesfilter. Keys are case-sensitive: if you group by a key that doesn't exist, such asModel, all of your costs of supported services are in the groupModel$.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
groupBy
You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, product attributes, or any two group by types.
Valid values for the
DIMENSIONtype areAZ,INSTANCE_TYPE,LEGAL_ENTITY_NAME,INVOICING_ENTITY,LINKED_ACCOUNT,OPERATION,PLATFORM,PURCHASE_TYPE,SERVICE,TENANCY,RECORD_TYPE, andUSAGE_TYPE.When you group by the
TAGtype and include a valid tag key, you get all tag values, including empty strings.To group by the
PRODUCT_ATTRIBUTEtype, setKeyto a product attribute key, such asmodel. For the keys of each supported service, see ProductAttributeValues. The results include only the costs of supported services, and if you have no such costs, the response contains no groups.In the response, each group key has the format
This is a convenience method that creates an instance of thekey$value, for example,model$Claude Sonnet 5. Costs that have no value for the key are in the groupkey$, for example,model$. Remove thekey$prefix before you use a value in aProductAttributesfilter. Keys are case-sensitive: if you group by a key that doesn't exist, such asModel, all of your costs of supported services are in the groupModel$.GroupDefinition.Builderavoiding the need to create one manually viaGroupDefinition.builder().When the
Consumercompletes,SdkBuilder.build()is called immediately and its result is passed togroupBy(List<GroupDefinition>).- Parameters:
groupBy- a consumer that will call methods onGroupDefinition.Builder- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
billingViewArn
The Amazon Resource Name (ARN) that uniquely identifies a specific billing view. The ARN is used to specify which particular billing view you want to interact with or retrieve information from when making API calls related to Amazon Web Services Billing and Cost Management features. The BillingViewArn can be retrieved by calling the ListBillingViews API.
- Parameters:
billingViewArn- The Amazon Resource Name (ARN) that uniquely identifies a specific billing view. The ARN is used to specify which particular billing view you want to interact with or retrieve information from when making API calls related to Amazon Web Services Billing and Cost Management features. The BillingViewArn can be retrieved by calling the ListBillingViews API.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
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.
- Parameters:
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.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
overrideConfiguration
GetCostAndUsageRequest.Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration) Description copied from interface:AwsRequest.BuilderAdd an optional request override configuration.- Specified by:
overrideConfigurationin interfaceAwsRequest.Builder- Parameters:
overrideConfiguration- The override configuration.- Returns:
- This object for method chaining.
-
overrideConfiguration
GetCostAndUsageRequest.Builder overrideConfiguration(Consumer<AwsRequestOverrideConfiguration.Builder> builderConsumer) Description copied from interface:AwsRequest.BuilderAdd an optional request override configuration.- Specified by:
overrideConfigurationin interfaceAwsRequest.Builder- Parameters:
builderConsumer- AConsumerto which an emptyAwsRequestOverrideConfiguration.Builderwill be given.- Returns:
- This object for method chaining.
-