Class: Aws::CostExplorer::Types::CostCategoryRule
- Inherits:
-
Struct
- Object
- Struct
- Aws::CostExplorer::Types::CostCategoryRule
- Includes:
- Structure
- Defined in:
- lib/aws-sdk-costexplorer/types.rb
Overview
When making an API call, you may pass CostCategoryRule data as a hash:
{
value: "CostCategoryValue",
rule: {
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, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
tags: {
key: "TagKey",
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
cost_categories: {
key: "CostCategoryName",
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
},
inherited_value: {
dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
dimension_key: "GenericString",
},
type: "REGULAR", # accepts REGULAR, INHERITED_VALUE
}
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.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#inherited_value ⇒ Types::CostCategoryInheritedValueDimension
The value the line item will be categorized as, if the line item contains the matched dimension.
-
#rule ⇒ Types::Expression
An [Expression] object used to categorize costs.
-
#type ⇒ String
You can define the ‘CostCategoryRule` rule type as either `REGULAR` or `INHERITED_VALUE`.
-
#value ⇒ String
The default value for the cost category.
Instance Attribute Details
#inherited_value ⇒ Types::CostCategoryInheritedValueDimension
The value the line item will be categorized as, if the line item contains the matched dimension.
603 604 605 606 607 608 609 610 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 603 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |
#rule ⇒ Types::Expression
An [Expression] object used to categorize costs. This supports dimensions, tags, and nested expressions. Currently the only dimensions supported are ‘LINKED_ACCOUNT`, `SERVICE_CODE`, `RECORD_TYPE`, and `LINKED_ACCOUNT_NAME`.
Root level ‘OR` is not supported. We recommend that you create a separate rule instead.
‘RECORD_TYPE` is a dimension used for Cost Explorer APIs, and is also supported for Cost Category expressions. This dimension uses different terms, depending on whether you’re using the console or API/JSON editor. For a detailed comparison, see [Term Comparisons] in the *AWS Billing and Cost Management User Guide*.
[1]: docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html [2]: docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/manage-cost-categories.html#cost-categories-terms
603 604 605 606 607 608 609 610 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 603 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |
#type ⇒ String
You can define the ‘CostCategoryRule` rule type as either `REGULAR` or `INHERITED_VALUE`. The `INHERITED_VALUE` 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.
603 604 605 606 607 608 609 610 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 603 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |
#value ⇒ String
The default value for the cost category.
603 604 605 606 607 608 609 610 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 603 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |