- Navigation GuideYou are on a Command (operation) page with structural examples. Use the navigation breadcrumb if you would like to return to the Client landing page.
UpdateCostCategoryDefinitionCommand
Updates an existing Cost Category. Changes made to the Cost Category rules will be used to categorize the current month’s expenses and future expenses. This won’t change categorization for the previous months.
Example Syntax
Use a bare-bones client and the command you need to make an API call.
import { CostExplorerClient, UpdateCostCategoryDefinitionCommand } from "@aws-sdk/client-cost-explorer"; // ES Modules import
// const { CostExplorerClient, UpdateCostCategoryDefinitionCommand } = require("@aws-sdk/client-cost-explorer"); // CommonJS import
const client = new CostExplorerClient(config);
const input = { // UpdateCostCategoryDefinitionRequest
CostCategoryArn: "STRING_VALUE", // required
EffectiveStart: "STRING_VALUE",
RuleVersion: "CostCategoryExpression.v1", // required
Rules: [ // CostCategoryRulesList // required
{ // CostCategoryRule
Value: "STRING_VALUE",
Rule: { // Expression
Or: [ // Expressions
{
Or: [
"<Expression>",
],
And: [
"<Expression>",
],
Not: "<Expression>",
Dimensions: { // DimensionValues
Key: "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" || "INVOICING_ENTITY" || "ANOMALY_TOTAL_IMPACT_ABSOLUTE" || "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
Values: [ // Values
"STRING_VALUE",
],
MatchOptions: [ // MatchOptions
"EQUALS" || "ABSENT" || "STARTS_WITH" || "ENDS_WITH" || "CONTAINS" || "CASE_SENSITIVE" || "CASE_INSENSITIVE" || "GREATER_THAN_OR_EQUAL",
],
},
Tags: { // TagValues
Key: "STRING_VALUE",
Values: [
"STRING_VALUE",
],
MatchOptions: [
"EQUALS" || "ABSENT" || "STARTS_WITH" || "ENDS_WITH" || "CONTAINS" || "CASE_SENSITIVE" || "CASE_INSENSITIVE" || "GREATER_THAN_OR_EQUAL",
],
},
CostCategories: { // CostCategoryValues
Key: "STRING_VALUE",
Values: [
"STRING_VALUE",
],
MatchOptions: [
"EQUALS" || "ABSENT" || "STARTS_WITH" || "ENDS_WITH" || "CONTAINS" || "CASE_SENSITIVE" || "CASE_INSENSITIVE" || "GREATER_THAN_OR_EQUAL",
],
},
},
],
And: [
"<Expression>",
],
Not: "<Expression>",
Dimensions: {
Key: "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" || "INVOICING_ENTITY" || "ANOMALY_TOTAL_IMPACT_ABSOLUTE" || "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
Values: [
"STRING_VALUE",
],
MatchOptions: [
"EQUALS" || "ABSENT" || "STARTS_WITH" || "ENDS_WITH" || "CONTAINS" || "CASE_SENSITIVE" || "CASE_INSENSITIVE" || "GREATER_THAN_OR_EQUAL",
],
},
Tags: {
Key: "STRING_VALUE",
Values: [
"STRING_VALUE",
],
MatchOptions: [
"EQUALS" || "ABSENT" || "STARTS_WITH" || "ENDS_WITH" || "CONTAINS" || "CASE_SENSITIVE" || "CASE_INSENSITIVE" || "GREATER_THAN_OR_EQUAL",
],
},
CostCategories: {
Key: "STRING_VALUE",
Values: "<Values>",
MatchOptions: "<MatchOptions>",
},
},
InheritedValue: { // CostCategoryInheritedValueDimension
DimensionName: "LINKED_ACCOUNT_NAME" || "TAG",
DimensionKey: "STRING_VALUE",
},
Type: "REGULAR" || "INHERITED_VALUE",
},
],
DefaultValue: "STRING_VALUE",
SplitChargeRules: [ // CostCategorySplitChargeRulesList
{ // CostCategorySplitChargeRule
Source: "STRING_VALUE", // required
Targets: [ // CostCategorySplitChargeRuleTargetsList // required
"STRING_VALUE",
],
Method: "FIXED" || "PROPORTIONAL" || "EVEN", // required
Parameters: [ // CostCategorySplitChargeRuleParametersList
{ // CostCategorySplitChargeRuleParameter
Type: "ALLOCATION_PERCENTAGES", // required
Values: [ // CostCategorySplitChargeRuleParameterValuesList // required
"STRING_VALUE",
],
},
],
},
],
};
const command = new UpdateCostCategoryDefinitionCommand(input);
const response = await client.send(command);
// { // UpdateCostCategoryDefinitionResponse
// CostCategoryArn: "STRING_VALUE",
// EffectiveStart: "STRING_VALUE",
// };
UpdateCostCategoryDefinitionCommand Input
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
CostCategoryArn Required | string | undefined | The unique identifier for your Cost Category. |
RuleVersion Required | CostCategoryRuleVersion | undefined | The rule schema version in this particular Cost Category. |
Rules Required | CostCategoryRule[] | undefined | The |
DefaultValue | string | undefined | The default value for the cost category. |
EffectiveStart | string | undefined | The Cost Category's effective start date. It can only be a billing start date (first day of the month). If the date isn't provided, it's the first day of the current month. Dates can't be before the previous twelve months, or in the future. |
SplitChargeRules | CostCategorySplitChargeRule[] | undefined | The split charge rules used to allocate your charges between your Cost Category values. |
UpdateCostCategoryDefinitionCommand Output
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
$metadata Required | ResponseMetadata | Metadata pertaining to this request. |
CostCategoryArn | string | undefined | The unique identifier for your Cost Category. |
EffectiveStart | string | undefined | The Cost Category's effective start date. It can only be a billing start date (first day of the month). |
Throws
Name | Fault | Details |
---|
Name | Fault | Details |
---|---|---|
LimitExceededException | client | You made too many calls in a short period of time. Try again later. |
ResourceNotFoundException | client | The specified ARN in the request doesn't exist. |
ServiceQuotaExceededException | client | You've reached the limit on the number of resources you can create, or exceeded the size of an individual resource. |
CostExplorerServiceException | Base exception class for all service exceptions from CostExplorer service. |