class Aws::CostExplorer::Types::UpdateCostCategoryDefinitionRequest

@note When making an API call, you may pass UpdateCostCategoryDefinitionRequest

data as a hash:

    {
      cost_category_arn: "Arn", # required
      rule_version: "CostCategoryExpression.v1", # required, accepts CostCategoryExpression.v1
      rules: [ # required
        {
          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
        },
      ],
      default_value: "CostCategoryValue",
      split_charge_rules: [
        {
          source: "GenericString", # required
          targets: ["GenericString"], # required
          method: "FIXED", # required, accepts FIXED, PROPORTIONAL, EVEN
          parameters: [
            {
              type: "ALLOCATION_PERCENTAGES", # required, accepts ALLOCATION_PERCENTAGES
              values: ["GenericString"], # required
            },
          ],
        },
      ],
    }

@!attribute [rw] cost_category_arn

The unique identifier for your Cost Category.
@return [String]

@!attribute [rw] rule_version

The rule schema version in this particular Cost Category.
@return [String]

@!attribute [rw] rules

The `Expression` object used to categorize costs. For more
information, see [CostCategoryRule ][1].

[1]: https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_CostCategoryRule.html
@return [Array<Types::CostCategoryRule>]

@!attribute [rw] default_value

The default value for the cost category.
@return [String]

@!attribute [rw] split_charge_rules

The split charge rules used to allocate your charges between your
Cost Category values.
@return [Array<Types::CostCategorySplitChargeRule>]

@see docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/UpdateCostCategoryDefinitionRequest AWS API Documentation

Constants

SENSITIVE