diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 10a5a5875cd..82aecd68139 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -4260,7 +4260,7 @@ components:
provider:
- aws
- gcp
- rule_name: Example Arbitrary Cost Rule
+ rule_name: Example custom allocation rule
strategy:
allocated_by_tag_keys:
- team
@@ -4289,15 +4289,145 @@ components:
type: object
ArbitraryRuleResponseArray:
description: The definition of `ArbitraryRuleResponseArray` object.
+ example:
+ data:
+ - attributes:
+ costs_to_allocate:
+ - condition: like
+ tag: service
+ value: orgstore-csm*
+ values: null
+ created: '2024-11-20T03:44:37Z'
+ enabled: true
+ last_modified_user_uuid: user-example-uuid
+ order_id: 1
+ processing_status: done
+ provider:
+ - gcp
+ rule_name: gcp-orgstore-csm-team-allocation
+ strategy:
+ allocated_by:
+ - allocated_tags:
+ - key: team
+ value: csm-activation
+ percentage: 0.34
+ - allocated_tags:
+ - key: team
+ value: csm-agentless
+ percentage: 0.66
+ method: percent
+ type: shared
+ updated: '2025-09-02T21:28:32Z'
+ version: 1
+ id: '19'
+ type: arbitrary_rule
+ - attributes:
+ costs_to_allocate:
+ - condition: is
+ tag: env
+ value: staging
+ values: null
+ created: '2025-05-27T18:48:05Z'
+ enabled: true
+ last_modified_user_uuid: user-example-uuid-2
+ order_id: 2
+ processing_status: done
+ provider:
+ - aws
+ rule_name: test-even-2
+ strategy:
+ allocated_by_tag_keys:
+ - team
+ based_on_costs:
+ - condition: is
+ tag: aws_product
+ value: s3
+ values: null
+ granularity: daily
+ method: even
+ type: shared
+ updated: '2025-09-03T21:00:49Z'
+ version: 1
+ id: '311'
+ type: arbitrary_rule
+ - attributes:
+ costs_to_allocate:
+ - condition: is
+ tag: servicename
+ value: s3
+ values: null
+ created: '2025-03-21T20:42:40Z'
+ enabled: false
+ last_modified_user_uuid: user-example-uuid-3
+ order_id: 3
+ processing_status: done
+ provider:
+ - aws
+ rule_name: test-s3-timeseries
+ strategy:
+ granularity: daily
+ method: proportional_timeseries
+ type: shared
+ updated: '2025-09-02T21:16:50Z'
+ version: 1
+ id: '289'
+ type: arbitrary_rule
+ - attributes:
+ costs_to_allocate:
+ - condition: '='
+ tag: aws_product
+ value: msk
+ values: null
+ - condition: is
+ tag: product
+ value: 'null'
+ values: null
+ created: '2025-08-27T14:39:31Z'
+ enabled: true
+ last_modified_user_uuid: user-example-uuid-4
+ order_id: 4
+ processing_status: done
+ provider:
+ - aws
+ rule_name: azure-unallocated-by-product-2
+ strategy:
+ allocated_by_tag_keys:
+ - aws_product
+ based_on_costs:
+ - condition: '='
+ tag: aws_product
+ value: msk
+ values: null
+ - condition: is not
+ tag: product
+ value: 'null'
+ values: null
+ granularity: daily
+ method: proportional
+ type: shared
+ updated: '2025-09-02T21:28:32Z'
+ version: 1
+ id: '523'
+ type: arbitrary_rule
properties:
data:
description: The `ArbitraryRuleResponseArray` `data`.
items:
$ref: '#/components/schemas/ArbitraryRuleResponseData'
type: array
+ meta:
+ $ref: '#/components/schemas/ArbitraryRuleResponseArrayMeta'
required:
- data
type: object
+ ArbitraryRuleResponseArrayMeta:
+ description: The `ArbitraryRuleResponseArray` `meta`.
+ properties:
+ total_count:
+ description: The `meta` `total_count`.
+ format: int64
+ type: integer
+ type: object
ArbitraryRuleResponseData:
description: The definition of `ArbitraryRuleResponseData` object.
properties:
@@ -4337,6 +4467,10 @@ components:
example: 0
format: int64
type: integer
+ processing_status:
+ description: The `attributes` `processing_status`.
+ example: ''
+ type: string
provider:
description: The `attributes` `provider`.
example:
@@ -38486,6 +38620,14 @@ components:
- ARBITRARY_RULE
ReorderRulesetResourceArray:
description: The definition of `ReorderRulesetResourceArray` object.
+ example:
+ data:
+ - id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10
+ type: ruleset
+ - id: a7b8c9d0-1234-5678-9abc-def012345678
+ type: ruleset
+ - id: f1e2d3c4-b5a6-9780-1234-567890abcdef
+ type: ruleset
properties:
data:
description: The `ReorderRulesetResourceArray` `data`.
@@ -39746,6 +39888,82 @@ components:
type: object
RulesetRespArray:
description: The definition of `RulesetRespArray` object.
+ example:
+ data:
+ - attributes:
+ created: null
+ enabled: true
+ last_modified_user_uuid: ''
+ modified: null
+ name: Production Cost Allocation Rules
+ position: 0
+ rules:
+ - enabled: true
+ mapping: null
+ metadata: null
+ name: AWS Production Account Tagging
+ query:
+ addition:
+ key: environment
+ value: production
+ case_insensitivity: false
+ if_not_exists: true
+ query: billingcurrency:"USD" AND account_name:"prod-account"
+ reference_table: null
+ - enabled: true
+ mapping:
+ destination_key: team_owner
+ if_not_exists: true
+ source_keys:
+ - account_name
+ - service
+ metadata: null
+ name: Team Mapping Rule
+ query: null
+ reference_table: null
+ - enabled: true
+ mapping: null
+ metadata: null
+ name: New table rule with new UI
+ query: null
+ reference_table:
+ case_insensitivity: true
+ field_pairs:
+ - input_column: status_type
+ output_key: status
+ - input_column: status_description
+ output_key: dess
+ if_not_exists: false
+ source_keys:
+ - http_status
+ - status_description
+ table_name: http_status_codes
+ version: 2
+ id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10
+ type: ruleset
+ - attributes:
+ created: null
+ enabled: true
+ last_modified_user_uuid: ''
+ modified: null
+ name: Development Environment Rules
+ position: 0
+ rules:
+ - enabled: true
+ mapping: null
+ metadata: null
+ name: Dev Account Cost Center
+ query:
+ addition:
+ key: cost_center
+ value: engineering
+ case_insensitivity: true
+ if_not_exists: true
+ query: account_name:"dev-*"
+ reference_table: null
+ version: 1
+ id: a7b8c9d0-1234-5678-9abc-def012345678
+ type: ruleset
properties:
data:
description: The `RulesetRespArray` `data`.
@@ -39793,6 +40011,10 @@ components:
format: int32
maximum: 2147483647
type: integer
+ processing_status:
+ description: The `attributes` `processing_status`.
+ example: ''
+ type: string
rules:
description: The `attributes` `rules`.
items:
@@ -49984,7 +50206,20 @@ components:
attributes:
enabled: true
last_version: 1
+ name: Updated Ruleset
rules:
+ - enabled: true
+ mapping: null
+ metadata: null
+ name: Add Cost Center Tag
+ query:
+ addition:
+ key: cost_center
+ value: engineering
+ case_insensitivity: false
+ if_not_exists: true
+ query: account_id:"123456789" AND service:"web-api"
+ reference_table: null
- enabled: true
mapping:
destination_key: team_owner
@@ -49996,6 +50231,23 @@ components:
name: Account Name Mapping
query: null
reference_table: null
+ - enabled: true
+ mapping: null
+ metadata: null
+ name: New table rule with new UI
+ query: null
+ reference_table:
+ case_insensitivity: true
+ field_pairs:
+ - input_column: status_type
+ output_key: status
+ - input_column: status_description
+ output_key: dess
+ if_not_exists: false
+ source_keys:
+ - http_status
+ - status_description
+ table_name: http_status_codes
type: update_ruleset
properties:
data:
@@ -56472,9 +56724,9 @@ paths:
permissions: []
/api/v2/cost/arbitrary_rule:
get:
- description: List all arbitrary cost rules - Retrieve a list of all arbitrary
- cost rules for the organization
- operationId: ListArbitraryCostRules
+ description: List all custom allocation rules - Retrieve a list of all custom
+ allocation rules for the organization
+ operationId: ListCustomAllocationRules
responses:
'200':
content:
@@ -56489,12 +56741,12 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_read
- summary: List arbitrary cost rules
+ summary: List custom allocation rules
tags:
- Cloud Cost Management
post:
- description: 'Create a new arbitrary cost rule with the specified filters and
- allocation strategy.
+ description: 'Create a new custom allocation rule with the specified filters
+ and allocation strategy.
**Strategy Methods:**
@@ -56522,7 +56774,7 @@ paths:
**Supported operators**: is, is not, is all values, is untagged, contains,
does not contain, in, not in, =, !=, like, not like'
- operationId: CreateArbitraryCostRule
+ operationId: CreateCustomAllocationRule
requestBody:
content:
application/json:
@@ -56543,20 +56795,20 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Create arbitrary cost rule
+ summary: Create custom allocation rule
tags:
- Cloud Cost Management
/api/v2/cost/arbitrary_rule/reorder:
post:
- description: "Reorder arbitrary cost rules - Change the execution order of arbitrary
- cost rules.\n\n**Important**: You must provide the **complete list** of all
- rule IDs in the desired execution order. The API will reorder ALL rules according
- to the provided sequence.\n\nRules are executed in the order specified, with
- lower indices (earlier in the array) having higher priority.\n\n**Example**:
+ description: "Reorder custom allocation rules - Change the execution order of
+ custom allocation rules.\n\n**Important**: You must provide the **complete
+ list** of all rule IDs in the desired execution order. The API will reorder
+ ALL rules according to the provided sequence.\n\nRules are executed in the
+ order specified, with lower indices (earlier in the array) having higher priority.\n\n**Example**:
If you have rules with IDs [123, 456, 789] and want to change order from 123\u2192456\u2192789
to 456\u2192123\u2192789, send: [{\"id\": \"456\"}, {\"id\": \"123\"}, {\"id\":
\"789\"}]"
- operationId: ReorderArbitraryCostRules
+ operationId: ReorderCustomAllocationRules
requestBody:
content:
application/json:
@@ -56573,16 +56825,16 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Reorder arbitrary cost rules
+ summary: Reorder custom allocation rules
tags:
- Cloud Cost Management
/api/v2/cost/arbitrary_rule/{rule_id}:
delete:
- description: Delete an arbitrary cost rule - Delete an existing arbitrary cost
+ description: Delete a custom allocation rule - Delete an existing custom allocation
rule by its ID
- operationId: DeleteArbitraryCostRule
+ operationId: DeleteCustomAllocationRule
parameters:
- - description: The unique identifier of the arbitrary cost rule
+ - description: The unique identifier of the custom allocation rule
in: path
name: rule_id
required: true
@@ -56599,15 +56851,15 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Delete arbitrary cost rule
+ summary: Delete custom allocation rule
tags:
- Cloud Cost Management
get:
- description: Get a specific arbitrary cost rule - Retrieve a specific arbitrary
- cost rule by its ID
- operationId: GetArbitraryCostRule
+ description: Get a specific custom allocation rule - Retrieve a specific custom
+ allocation rule by its ID
+ operationId: GetCustomAllocationRule
parameters:
- - description: The unique identifier of the arbitrary cost rule
+ - description: The unique identifier of the custom allocation rule
in: path
name: rule_id
required: true
@@ -56628,12 +56880,12 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_read
- summary: Get arbitrary cost rule
+ summary: Get custom allocation rule
tags:
- Cloud Cost Management
patch:
- description: 'Update an existing arbitrary cost rule with new filters and allocation
- strategy.
+ description: 'Update an existing custom allocation rule with new filters and
+ allocation strategy.
**Strategy Methods:**
@@ -56663,9 +56915,9 @@ paths:
**Supported operators**: is, is not, is all values, is untagged, contains,
does not contain, in, not in, =, !=, like, not like'
- operationId: UpdateArbitraryCostRule
+ operationId: UpdateCustomAllocationRule
parameters:
- - description: The unique identifier of the arbitrary cost rule
+ - description: The unique identifier of the custom allocation rule
in: path
name: rule_id
required: true
@@ -56692,7 +56944,7 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Update arbitrary cost rule
+ summary: Update custom allocation rule
tags:
- Cloud Cost Management
/api/v2/cost/aws_cur_config:
@@ -74842,7 +75094,7 @@ paths:
get:
description: List all tag pipeline rulesets - Retrieve a list of all tag pipeline
rulesets for the organization
- operationId: ListRulesets
+ operationId: ListTagPipelinesRulesets
responses:
'200':
content:
@@ -74857,13 +75109,13 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_read
- summary: List rulesets
+ summary: List tag pipeline rulesets
tags:
- Cloud Cost Management
post:
description: Create a new tag pipeline ruleset with the specified rules and
configuration
- operationId: CreateRuleset
+ operationId: CreateTagPipelinesRuleset
requestBody:
content:
application/json:
@@ -74884,14 +75136,14 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Create ruleset
+ summary: Create tag pipeline ruleset
tags:
- Cloud Cost Management
/api/v2/tags/enrichment/reorder:
post:
description: Reorder tag pipeline rulesets - Change the execution order of tag
pipeline rulesets
- operationId: ReorderRulesets
+ operationId: ReorderTagPipelinesRulesets
requestBody:
content:
application/json:
@@ -74908,7 +75160,7 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Reorder rulesets
+ summary: Reorder tag pipeline rulesets
tags:
- Cloud Cost Management
/api/v2/tags/enrichment/validate-query:
@@ -74943,7 +75195,7 @@ paths:
delete:
description: Delete a tag pipeline ruleset - Delete an existing tag pipeline
ruleset by its ID
- operationId: DeleteRuleset
+ operationId: DeleteTagPipelinesRuleset
parameters:
- description: The unique identifier of the ruleset
in: path
@@ -74961,13 +75213,13 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Delete ruleset
+ summary: Delete tag pipeline ruleset
tags:
- Cloud Cost Management
get:
description: Get a specific tag pipeline ruleset - Retrieve a specific tag pipeline
ruleset by its ID
- operationId: GetRuleset
+ operationId: GetTagPipelinesRuleset
parameters:
- description: The unique identifier of the ruleset
in: path
@@ -74995,7 +75247,7 @@ paths:
patch:
description: Update a tag pipeline ruleset - Update an existing tag pipeline
ruleset with new rules and configuration
- operationId: UpdateRuleset
+ operationId: UpdateTagPipelinesRuleset
parameters:
- description: The unique identifier of the ruleset
in: path
@@ -75023,7 +75275,7 @@ paths:
appKeyAuth: []
- AuthZ:
- cloud_cost_management_write
- summary: Update ruleset
+ summary: Update tag pipeline ruleset
tags:
- Cloud Cost Management
/api/v2/team:
diff --git a/examples/v2/cloud-cost-management/CreateArbitraryCostRule.java b/examples/v2/cloud-cost-management/CreateCustomAllocationRule.java
similarity index 93%
rename from examples/v2/cloud-cost-management/CreateArbitraryCostRule.java
rename to examples/v2/cloud-cost-management/CreateCustomAllocationRule.java
index 9baef79324e..1dd5d1783ab 100644
--- a/examples/v2/cloud-cost-management/CreateArbitraryCostRule.java
+++ b/examples/v2/cloud-cost-management/CreateCustomAllocationRule.java
@@ -1,4 +1,4 @@
-// Create arbitrary cost rule returns "OK" response
+// Create custom allocation rule returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -59,10 +59,11 @@ public static void main(String[] args) {
.type(ArbitraryCostUpsertRequestDataType.UPSERT_ARBITRARY_RULE));
try {
- ArbitraryRuleResponse result = apiInstance.createArbitraryCostRule(body);
+ ArbitraryRuleResponse result = apiInstance.createCustomAllocationRule(body);
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#createArbitraryCostRule");
+ System.err.println(
+ "Exception when calling CloudCostManagementApi#createCustomAllocationRule");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/CreateRuleset.java b/examples/v2/cloud-cost-management/CreateTagPipelinesRuleset.java
similarity index 94%
rename from examples/v2/cloud-cost-management/CreateRuleset.java
rename to examples/v2/cloud-cost-management/CreateTagPipelinesRuleset.java
index 360b3e8b90e..9f921e6fef7 100644
--- a/examples/v2/cloud-cost-management/CreateRuleset.java
+++ b/examples/v2/cloud-cost-management/CreateTagPipelinesRuleset.java
@@ -1,4 +1,4 @@
-// Create ruleset returns "OK" response
+// Create tag pipeline ruleset returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -48,10 +48,10 @@ public static void main(String[] args) {
.type(CreateRulesetRequestDataType.CREATE_RULESET));
try {
- RulesetResp result = apiInstance.createRuleset(body);
+ RulesetResp result = apiInstance.createTagPipelinesRuleset(body);
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#createRuleset");
+ System.err.println("Exception when calling CloudCostManagementApi#createTagPipelinesRuleset");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/DeleteRuleset.java b/examples/v2/cloud-cost-management/DeleteCustomAllocationRule.java
similarity index 73%
rename from examples/v2/cloud-cost-management/DeleteRuleset.java
rename to examples/v2/cloud-cost-management/DeleteCustomAllocationRule.java
index e0f32c17ddc..3c6a21c12bb 100644
--- a/examples/v2/cloud-cost-management/DeleteRuleset.java
+++ b/examples/v2/cloud-cost-management/DeleteCustomAllocationRule.java
@@ -1,4 +1,4 @@
-// Delete ruleset returns "No Content" response
+// Delete custom allocation rule returns "No Content" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -10,9 +10,10 @@ public static void main(String[] args) {
CloudCostManagementApi apiInstance = new CloudCostManagementApi(defaultClient);
try {
- apiInstance.deleteRuleset("1c5dae14-237d-4b9a-a515-aa55b3939142");
+ apiInstance.deleteCustomAllocationRule(683L);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#deleteRuleset");
+ System.err.println(
+ "Exception when calling CloudCostManagementApi#deleteCustomAllocationRule");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/DeleteArbitraryCostRule.java b/examples/v2/cloud-cost-management/DeleteTagPipelinesRuleset.java
similarity index 79%
rename from examples/v2/cloud-cost-management/DeleteArbitraryCostRule.java
rename to examples/v2/cloud-cost-management/DeleteTagPipelinesRuleset.java
index 7cbc13e5209..99c1b9ecf0e 100644
--- a/examples/v2/cloud-cost-management/DeleteArbitraryCostRule.java
+++ b/examples/v2/cloud-cost-management/DeleteTagPipelinesRuleset.java
@@ -1,4 +1,4 @@
-// Delete arbitrary cost rule returns "No Content" response
+// Delete tag pipeline ruleset returns "No Content" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -10,9 +10,9 @@ public static void main(String[] args) {
CloudCostManagementApi apiInstance = new CloudCostManagementApi(defaultClient);
try {
- apiInstance.deleteArbitraryCostRule(123456L);
+ apiInstance.deleteTagPipelinesRuleset("ee10c3ff-312f-464c-b4f6-46adaa6d00a1");
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#deleteArbitraryCostRule");
+ System.err.println("Exception when calling CloudCostManagementApi#deleteTagPipelinesRuleset");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/GetArbitraryCostRule.java b/examples/v2/cloud-cost-management/GetCustomAllocationRule.java
similarity index 82%
rename from examples/v2/cloud-cost-management/GetArbitraryCostRule.java
rename to examples/v2/cloud-cost-management/GetCustomAllocationRule.java
index c19bc14117f..1b182bae935 100644
--- a/examples/v2/cloud-cost-management/GetArbitraryCostRule.java
+++ b/examples/v2/cloud-cost-management/GetCustomAllocationRule.java
@@ -1,4 +1,4 @@
-// Get arbitrary cost rule returns "OK" response
+// Get custom allocation rule returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -11,10 +11,10 @@ public static void main(String[] args) {
CloudCostManagementApi apiInstance = new CloudCostManagementApi(defaultClient);
try {
- ArbitraryRuleResponse result = apiInstance.getArbitraryCostRule(123456L);
+ ArbitraryRuleResponse result = apiInstance.getCustomAllocationRule(683L);
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#getArbitraryCostRule");
+ System.err.println("Exception when calling CloudCostManagementApi#getCustomAllocationRule");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/GetRuleset.java b/examples/v2/cloud-cost-management/GetTagPipelinesRuleset.java
similarity index 87%
rename from examples/v2/cloud-cost-management/GetRuleset.java
rename to examples/v2/cloud-cost-management/GetTagPipelinesRuleset.java
index 90e4a028629..421f5241102 100644
--- a/examples/v2/cloud-cost-management/GetRuleset.java
+++ b/examples/v2/cloud-cost-management/GetTagPipelinesRuleset.java
@@ -11,10 +11,10 @@ public static void main(String[] args) {
CloudCostManagementApi apiInstance = new CloudCostManagementApi(defaultClient);
try {
- RulesetResp result = apiInstance.getRuleset("da0e30e2-615d-4dae-9a22-38cf86a87dde");
+ RulesetResp result = apiInstance.getTagPipelinesRuleset("ruleset_id");
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#getRuleset");
+ System.err.println("Exception when calling CloudCostManagementApi#getTagPipelinesRuleset");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/GetTagPipelinesRuleset_2339377367.java b/examples/v2/cloud-cost-management/GetTagPipelinesRuleset_2339377367.java
new file mode 100644
index 00000000000..c2952f8fab6
--- /dev/null
+++ b/examples/v2/cloud-cost-management/GetTagPipelinesRuleset_2339377367.java
@@ -0,0 +1,25 @@
+// Get tag pipeline ruleset returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.CloudCostManagementApi;
+import com.datadog.api.client.v2.model.RulesetResp;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ CloudCostManagementApi apiInstance = new CloudCostManagementApi(defaultClient);
+
+ try {
+ RulesetResp result =
+ apiInstance.getTagPipelinesRuleset("ee10c3ff-312f-464c-b4f6-46adaa6d00a1");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling CloudCostManagementApi#getTagPipelinesRuleset");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/cloud-cost-management/ListArbitraryCostRules.java b/examples/v2/cloud-cost-management/ListCustomAllocationRules.java
similarity index 82%
rename from examples/v2/cloud-cost-management/ListArbitraryCostRules.java
rename to examples/v2/cloud-cost-management/ListCustomAllocationRules.java
index f112a796cb1..ed5ac03f89b 100644
--- a/examples/v2/cloud-cost-management/ListArbitraryCostRules.java
+++ b/examples/v2/cloud-cost-management/ListCustomAllocationRules.java
@@ -1,4 +1,4 @@
-// List arbitrary cost rules returns "OK" response
+// List custom allocation rules returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -11,10 +11,10 @@ public static void main(String[] args) {
CloudCostManagementApi apiInstance = new CloudCostManagementApi(defaultClient);
try {
- ArbitraryRuleResponseArray result = apiInstance.listArbitraryCostRules();
+ ArbitraryRuleResponseArray result = apiInstance.listCustomAllocationRules();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#listArbitraryCostRules");
+ System.err.println("Exception when calling CloudCostManagementApi#listCustomAllocationRules");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/ListRulesets.java b/examples/v2/cloud-cost-management/ListTagPipelinesRulesets.java
similarity index 83%
rename from examples/v2/cloud-cost-management/ListRulesets.java
rename to examples/v2/cloud-cost-management/ListTagPipelinesRulesets.java
index 3a22908a4e5..a7f01845b16 100644
--- a/examples/v2/cloud-cost-management/ListRulesets.java
+++ b/examples/v2/cloud-cost-management/ListTagPipelinesRulesets.java
@@ -1,4 +1,4 @@
-// List rulesets returns "OK" response
+// List tag pipeline rulesets returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -11,10 +11,10 @@ public static void main(String[] args) {
CloudCostManagementApi apiInstance = new CloudCostManagementApi(defaultClient);
try {
- RulesetRespArray result = apiInstance.listRulesets();
+ RulesetRespArray result = apiInstance.listTagPipelinesRulesets();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#listRulesets");
+ System.err.println("Exception when calling CloudCostManagementApi#listTagPipelinesRulesets");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/ReorderArbitraryCostRules.java b/examples/v2/cloud-cost-management/ReorderCustomAllocationRules.java
similarity index 85%
rename from examples/v2/cloud-cost-management/ReorderArbitraryCostRules.java
rename to examples/v2/cloud-cost-management/ReorderCustomAllocationRules.java
index 5a7430bba9b..caff212bc43 100644
--- a/examples/v2/cloud-cost-management/ReorderArbitraryCostRules.java
+++ b/examples/v2/cloud-cost-management/ReorderCustomAllocationRules.java
@@ -1,4 +1,4 @@
-// Reorder arbitrary cost rules returns "Successfully reordered rules" response
+// Reorder custom allocation rules returns "Successfully reordered rules" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -28,9 +28,10 @@ public static void main(String[] args) {
.type(ReorderRuleResourceDataType.ARBITRARY_RULE)));
try {
- apiInstance.reorderArbitraryCostRules(body);
+ apiInstance.reorderCustomAllocationRules(body);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#reorderArbitraryCostRules");
+ System.err.println(
+ "Exception when calling CloudCostManagementApi#reorderCustomAllocationRules");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/ReorderRulesets.java b/examples/v2/cloud-cost-management/ReorderTagPipelinesRulesets.java
similarity index 51%
rename from examples/v2/cloud-cost-management/ReorderRulesets.java
rename to examples/v2/cloud-cost-management/ReorderTagPipelinesRulesets.java
index 0305c10f340..ff6cf207de7 100644
--- a/examples/v2/cloud-cost-management/ReorderRulesets.java
+++ b/examples/v2/cloud-cost-management/ReorderTagPipelinesRulesets.java
@@ -1,4 +1,4 @@
-// Reorder rulesets returns "Successfully reordered rulesets" response
+// Reorder tag pipeline rulesets returns "Successfully reordered rulesets" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -6,7 +6,7 @@
import com.datadog.api.client.v2.model.ReorderRulesetResourceArray;
import com.datadog.api.client.v2.model.ReorderRulesetResourceData;
import com.datadog.api.client.v2.model.ReorderRulesetResourceDataType;
-import java.util.Collections;
+import java.util.Arrays;
public class Example {
public static void main(String[] args) {
@@ -16,13 +16,22 @@ public static void main(String[] args) {
ReorderRulesetResourceArray body =
new ReorderRulesetResourceArray()
.data(
- Collections.singletonList(
- new ReorderRulesetResourceData().type(ReorderRulesetResourceDataType.RULESET)));
+ Arrays.asList(
+ new ReorderRulesetResourceData()
+ .id("55ef2385-9ae1-4410-90c4-5ac1b60fec10")
+ .type(ReorderRulesetResourceDataType.RULESET),
+ new ReorderRulesetResourceData()
+ .id("a7b8c9d0-1234-5678-9abc-def012345678")
+ .type(ReorderRulesetResourceDataType.RULESET),
+ new ReorderRulesetResourceData()
+ .id("f1e2d3c4-b5a6-9780-1234-567890abcdef")
+ .type(ReorderRulesetResourceDataType.RULESET)));
try {
- apiInstance.reorderRulesets(body);
+ apiInstance.reorderTagPipelinesRulesets(body);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#reorderRulesets");
+ System.err.println(
+ "Exception when calling CloudCostManagementApi#reorderTagPipelinesRulesets");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/UpdateArbitraryCostRule.java b/examples/v2/cloud-cost-management/UpdateCustomAllocationRule.java
similarity index 93%
rename from examples/v2/cloud-cost-management/UpdateArbitraryCostRule.java
rename to examples/v2/cloud-cost-management/UpdateCustomAllocationRule.java
index 0302db608a6..2223dd726c7 100644
--- a/examples/v2/cloud-cost-management/UpdateArbitraryCostRule.java
+++ b/examples/v2/cloud-cost-management/UpdateCustomAllocationRule.java
@@ -1,4 +1,4 @@
-// Update arbitrary cost rule returns "OK" response
+// Update custom allocation rule returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -59,10 +59,11 @@ public static void main(String[] args) {
.type(ArbitraryCostUpsertRequestDataType.UPSERT_ARBITRARY_RULE));
try {
- ArbitraryRuleResponse result = apiInstance.updateArbitraryCostRule(123456L, body);
+ ArbitraryRuleResponse result = apiInstance.updateCustomAllocationRule(683L, body);
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#updateArbitraryCostRule");
+ System.err.println(
+ "Exception when calling CloudCostManagementApi#updateCustomAllocationRule");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/examples/v2/cloud-cost-management/UpdateRuleset.java b/examples/v2/cloud-cost-management/UpdateTagPipelinesRuleset.java
similarity index 89%
rename from examples/v2/cloud-cost-management/UpdateRuleset.java
rename to examples/v2/cloud-cost-management/UpdateTagPipelinesRuleset.java
index 10b1d1d3712..934be510385 100644
--- a/examples/v2/cloud-cost-management/UpdateRuleset.java
+++ b/examples/v2/cloud-cost-management/UpdateTagPipelinesRuleset.java
@@ -1,4 +1,4 @@
-// Update ruleset returns "OK" response
+// Update tag pipeline ruleset returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
@@ -25,7 +25,7 @@ public static void main(String[] args) {
.attributes(
new UpdateRulesetRequestDataAttributes()
.enabled(true)
- .lastVersion(3601919L)
+ .lastVersion(3611102L)
.rules(
Collections.singletonList(
new UpdateRulesetRequestDataAttributesRulesItems()
@@ -39,13 +39,15 @@ public static void main(String[] args) {
.name("Account Name Mapping")
.query(null)
.referenceTable(null))))
+ .id("New Ruleset")
.type(UpdateRulesetRequestDataType.UPDATE_RULESET));
try {
- RulesetResp result = apiInstance.updateRuleset("1c5dae14-237d-4b9a-a515-aa55b3939142", body);
+ RulesetResp result =
+ apiInstance.updateTagPipelinesRuleset("ee10c3ff-312f-464c-b4f6-46adaa6d00a1", body);
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling CloudCostManagementApi#updateRuleset");
+ System.err.println("Exception when calling CloudCostManagementApi#updateTagPipelinesRuleset");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/src/main/java/com/datadog/api/client/v2/api/CloudCostManagementApi.java b/src/main/java/com/datadog/api/client/v2/api/CloudCostManagementApi.java
index 616af9916a7..96f805cd5bb 100644
--- a/src/main/java/com/datadog/api/client/v2/api/CloudCostManagementApi.java
+++ b/src/main/java/com/datadog/api/client/v2/api/CloudCostManagementApi.java
@@ -74,153 +74,6 @@ public void setApiClient(ApiClient apiClient) {
this.apiClient = apiClient;
}
- /**
- * Create arbitrary cost rule.
- *
- *
See {@link #createArbitraryCostRuleWithHttpInfo}.
- *
- * @param body (required)
- * @return ArbitraryRuleResponse
- * @throws ApiException if fails to make API call
- */
- public ArbitraryRuleResponse createArbitraryCostRule(ArbitraryCostUpsertRequest body)
- throws ApiException {
- return createArbitraryCostRuleWithHttpInfo(body).getData();
- }
-
- /**
- * Create arbitrary cost rule.
- *
- *
See {@link #createArbitraryCostRuleWithHttpInfoAsync}.
- *
- * @param body (required)
- * @return CompletableFuture<ArbitraryRuleResponse>
- */
- public CompletableFuture createArbitraryCostRuleAsync(
- ArbitraryCostUpsertRequest body) {
- return createArbitraryCostRuleWithHttpInfoAsync(body)
- .thenApply(
- response -> {
- return response.getData();
- });
- }
-
- /**
- * Create a new arbitrary cost rule with the specified filters and allocation strategy.
- *
- * Strategy Methods: - PROPORTIONAL/EVEN: Allocates costs
- * proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys.
- * Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys,
- * evaluate_grouped_by_filters. - PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES:
- * Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional:
- * evaluate_grouped_by_tag_keys. - PERCENT: Allocates fixed percentages to
- * specific tags. Requires: allocated_by (array of percentage allocations).
- *
- *
Filter Conditions: - Use value for single-value
- * conditions: "is", "is not", "contains", "does not contain", "=", "!=", "like", "not like", "is
- * all values", "is untagged" - Use values for multi-value conditions: "in", "not
- * in" - Cannot use both value and values simultaneously.
- *
- *
Supported operators: is, is not, is all values, is untagged, contains, does
- * not contain, in, not in, =, !=, like, not like
- *
- * @param body (required)
- * @return ApiResponse<ArbitraryRuleResponse>
- * @throws ApiException if fails to make API call
- * @http.response.details
- *
- * Response details
- * | Status Code | Description | Response Headers |
- * | 200 | OK | - |
- * | 429 | Too many requests | - |
- *
- */
- public ApiResponse createArbitraryCostRuleWithHttpInfo(
- ArbitraryCostUpsertRequest body) throws ApiException {
- Object localVarPostBody = body;
-
- // verify the required parameter 'body' is set
- if (body == null) {
- throw new ApiException(
- 400, "Missing the required parameter 'body' when calling createArbitraryCostRule");
- }
- // create path and map variables
- String localVarPath = "/api/v2/cost/arbitrary_rule";
-
- Map localVarHeaderParams = new HashMap();
-
- Invocation.Builder builder =
- apiClient.createBuilder(
- "v2.CloudCostManagementApi.createArbitraryCostRule",
- localVarPath,
- new ArrayList(),
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
- return apiClient.invokeAPI(
- "POST",
- builder,
- localVarHeaderParams,
- new String[] {"application/json"},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-
- /**
- * Create arbitrary cost rule.
- *
- * See {@link #createArbitraryCostRuleWithHttpInfo}.
- *
- * @param body (required)
- * @return CompletableFuture<ApiResponse<ArbitraryRuleResponse>>
- */
- public CompletableFuture>
- createArbitraryCostRuleWithHttpInfoAsync(ArbitraryCostUpsertRequest body) {
- Object localVarPostBody = body;
-
- // verify the required parameter 'body' is set
- if (body == null) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(
- 400, "Missing the required parameter 'body' when calling createArbitraryCostRule"));
- return result;
- }
- // create path and map variables
- String localVarPath = "/api/v2/cost/arbitrary_rule";
-
- Map localVarHeaderParams = new HashMap();
-
- Invocation.Builder builder;
- try {
- builder =
- apiClient.createBuilder(
- "v2.CloudCostManagementApi.createArbitraryCostRule",
- localVarPath,
- new ArrayList(),
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
- } catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(ex);
- return result;
- }
- return apiClient.invokeAPIAsync(
- "POST",
- builder,
- localVarHeaderParams,
- new String[] {"application/json"},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-
/**
* Create Cloud Cost Management AWS CUR config.
*
@@ -622,28 +475,30 @@ public ApiResponse createCostGCPUsageCostConfigWithH
}
/**
- * Create ruleset.
+ * Create custom allocation rule.
*
- * See {@link #createRulesetWithHttpInfo}.
+ *
See {@link #createCustomAllocationRuleWithHttpInfo}.
*
* @param body (required)
- * @return RulesetResp
+ * @return ArbitraryRuleResponse
* @throws ApiException if fails to make API call
*/
- public RulesetResp createRuleset(CreateRulesetRequest body) throws ApiException {
- return createRulesetWithHttpInfo(body).getData();
+ public ArbitraryRuleResponse createCustomAllocationRule(ArbitraryCostUpsertRequest body)
+ throws ApiException {
+ return createCustomAllocationRuleWithHttpInfo(body).getData();
}
/**
- * Create ruleset.
+ * Create custom allocation rule.
*
- *
See {@link #createRulesetWithHttpInfoAsync}.
+ *
See {@link #createCustomAllocationRuleWithHttpInfoAsync}.
*
* @param body (required)
- * @return CompletableFuture<RulesetResp>
+ * @return CompletableFuture<ArbitraryRuleResponse>
*/
- public CompletableFuture createRulesetAsync(CreateRulesetRequest body) {
- return createRulesetWithHttpInfoAsync(body)
+ public CompletableFuture createCustomAllocationRuleAsync(
+ ArbitraryCostUpsertRequest body) {
+ return createCustomAllocationRuleWithHttpInfoAsync(body)
.thenApply(
response -> {
return response.getData();
@@ -651,10 +506,26 @@ public CompletableFuture createRulesetAsync(CreateRulesetRequest bo
}
/**
- * Create a new tag pipeline ruleset with the specified rules and configuration
+ * Create a new custom allocation rule with the specified filters and allocation strategy.
+ *
+ * Strategy Methods: - PROPORTIONAL/EVEN: Allocates costs
+ * proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys.
+ * Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys,
+ * evaluate_grouped_by_filters. - PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES:
+ * Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional:
+ * evaluate_grouped_by_tag_keys. - PERCENT: Allocates fixed percentages to
+ * specific tags. Requires: allocated_by (array of percentage allocations).
+ *
+ *
Filter Conditions: - Use value for single-value
+ * conditions: "is", "is not", "contains", "does not contain", "=", "!=", "like", "not like", "is
+ * all values", "is untagged" - Use values for multi-value conditions: "in", "not
+ * in" - Cannot use both value and values simultaneously.
+ *
+ *
Supported operators: is, is not, is all values, is untagged, contains, does
+ * not contain, in, not in, =, !=, like, not like
*
* @param body (required)
- * @return ApiResponse<RulesetResp>
+ * @return ApiResponse<ArbitraryRuleResponse>
* @throws ApiException if fails to make API call
* @http.response.details
*
@@ -664,23 +535,23 @@ public CompletableFuture createRulesetAsync(CreateRulesetRequest bo
* | 429 | Too many requests | - |
*
*/
- public ApiResponse createRulesetWithHttpInfo(CreateRulesetRequest body)
- throws ApiException {
+ public ApiResponse createCustomAllocationRuleWithHttpInfo(
+ ArbitraryCostUpsertRequest body) throws ApiException {
Object localVarPostBody = body;
// verify the required parameter 'body' is set
if (body == null) {
throw new ApiException(
- 400, "Missing the required parameter 'body' when calling createRuleset");
+ 400, "Missing the required parameter 'body' when calling createCustomAllocationRule");
}
// create path and map variables
- String localVarPath = "/api/v2/tags/enrichment";
+ String localVarPath = "/api/v2/cost/arbitrary_rule";
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.createRuleset",
+ "v2.CloudCostManagementApi.createCustomAllocationRule",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -695,31 +566,32 @@ public ApiResponse createRulesetWithHttpInfo(CreateRulesetRequest b
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ new GenericType() {});
}
/**
- * Create ruleset.
+ * Create custom allocation rule.
*
- * See {@link #createRulesetWithHttpInfo}.
+ *
See {@link #createCustomAllocationRuleWithHttpInfo}.
*
* @param body (required)
- * @return CompletableFuture<ApiResponse<RulesetResp>>
+ * @return CompletableFuture<ApiResponse<ArbitraryRuleResponse>>
*/
- public CompletableFuture> createRulesetWithHttpInfoAsync(
- CreateRulesetRequest body) {
+ public CompletableFuture>
+ createCustomAllocationRuleWithHttpInfoAsync(ArbitraryCostUpsertRequest body) {
Object localVarPostBody = body;
// verify the required parameter 'body' is set
if (body == null) {
- CompletableFuture> result = new CompletableFuture<>();
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(
new ApiException(
- 400, "Missing the required parameter 'body' when calling createRuleset"));
+ 400,
+ "Missing the required parameter 'body' when calling createCustomAllocationRule"));
return result;
}
// create path and map variables
- String localVarPath = "/api/v2/tags/enrichment";
+ String localVarPath = "/api/v2/cost/arbitrary_rule";
Map localVarHeaderParams = new HashMap();
@@ -727,7 +599,7 @@ public CompletableFuture> createRulesetWithHttpInfoAsyn
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.createRuleset",
+ "v2.CloudCostManagementApi.createCustomAllocationRule",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -735,7 +607,7 @@ public CompletableFuture> createRulesetWithHttpInfoAsyn
new String[] {"application/json"},
new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
} catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(ex);
return result;
}
@@ -747,31 +619,32 @@ public CompletableFuture> createRulesetWithHttpInfoAsyn
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ new GenericType() {});
}
/**
- * Delete arbitrary cost rule.
+ * Create tag pipeline ruleset.
*
- * See {@link #deleteArbitraryCostRuleWithHttpInfo}.
+ *
See {@link #createTagPipelinesRulesetWithHttpInfo}.
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
+ * @param body (required)
+ * @return RulesetResp
* @throws ApiException if fails to make API call
*/
- public void deleteArbitraryCostRule(Long ruleId) throws ApiException {
- deleteArbitraryCostRuleWithHttpInfo(ruleId);
+ public RulesetResp createTagPipelinesRuleset(CreateRulesetRequest body) throws ApiException {
+ return createTagPipelinesRulesetWithHttpInfo(body).getData();
}
/**
- * Delete arbitrary cost rule.
+ * Create tag pipeline ruleset.
*
- *
See {@link #deleteArbitraryCostRuleWithHttpInfoAsync}.
+ *
See {@link #createTagPipelinesRulesetWithHttpInfoAsync}.
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
- * @return CompletableFuture
+ * @param body (required)
+ * @return CompletableFuture<RulesetResp>
*/
- public CompletableFuture deleteArbitraryCostRuleAsync(Long ruleId) {
- return deleteArbitraryCostRuleWithHttpInfoAsync(ruleId)
+ public CompletableFuture createTagPipelinesRulesetAsync(CreateRulesetRequest body) {
+ return createTagPipelinesRulesetWithHttpInfoAsync(body)
.thenApply(
response -> {
return response.getData();
@@ -779,78 +652,75 @@ public CompletableFuture deleteArbitraryCostRuleAsync(Long ruleId) {
}
/**
- * Delete an arbitrary cost rule - Delete an existing arbitrary cost rule by its ID
+ * Create a new tag pipeline ruleset with the specified rules and configuration
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
- * @return ApiResponse<Void>
+ * @param body (required)
+ * @return ApiResponse<RulesetResp>
* @throws ApiException if fails to make API call
* @http.response.details
*
* Response details
* | Status Code | Description | Response Headers |
- * | 204 | No Content | - |
+ * | 200 | OK | - |
* | 429 | Too many requests | - |
*
*/
- public ApiResponse deleteArbitraryCostRuleWithHttpInfo(Long ruleId) throws ApiException {
- Object localVarPostBody = null;
+ public ApiResponse createTagPipelinesRulesetWithHttpInfo(CreateRulesetRequest body)
+ throws ApiException {
+ Object localVarPostBody = body;
- // verify the required parameter 'ruleId' is set
- if (ruleId == null) {
+ // verify the required parameter 'body' is set
+ if (body == null) {
throw new ApiException(
- 400, "Missing the required parameter 'ruleId' when calling deleteArbitraryCostRule");
+ 400, "Missing the required parameter 'body' when calling createTagPipelinesRuleset");
}
// create path and map variables
- String localVarPath =
- "/api/v2/cost/arbitrary_rule/{rule_id}"
- .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
+ String localVarPath = "/api/v2/tags/enrichment";
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.deleteArbitraryCostRule",
+ "v2.CloudCostManagementApi.createTagPipelinesRuleset",
localVarPath,
new ArrayList(),
localVarHeaderParams,
new HashMap(),
- new String[] {"*/*"},
+ new String[] {"application/json"},
new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
return apiClient.invokeAPI(
- "DELETE",
+ "POST",
builder,
localVarHeaderParams,
- new String[] {},
+ new String[] {"application/json"},
localVarPostBody,
new HashMap(),
false,
- null);
+ new GenericType() {});
}
/**
- * Delete arbitrary cost rule.
+ * Create tag pipeline ruleset.
*
- * See {@link #deleteArbitraryCostRuleWithHttpInfo}.
+ *
See {@link #createTagPipelinesRulesetWithHttpInfo}.
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
- * @return CompletableFuture<ApiResponse<Void>>
+ * @param body (required)
+ * @return CompletableFuture<ApiResponse<RulesetResp>>
*/
- public CompletableFuture> deleteArbitraryCostRuleWithHttpInfoAsync(
- Long ruleId) {
- Object localVarPostBody = null;
+ public CompletableFuture> createTagPipelinesRulesetWithHttpInfoAsync(
+ CreateRulesetRequest body) {
+ Object localVarPostBody = body;
- // verify the required parameter 'ruleId' is set
- if (ruleId == null) {
- CompletableFuture> result = new CompletableFuture<>();
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(
new ApiException(
- 400, "Missing the required parameter 'ruleId' when calling deleteArbitraryCostRule"));
+ 400, "Missing the required parameter 'body' when calling createTagPipelinesRuleset"));
return result;
}
// create path and map variables
- String localVarPath =
- "/api/v2/cost/arbitrary_rule/{rule_id}"
- .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
+ String localVarPath = "/api/v2/tags/enrichment";
Map localVarHeaderParams = new HashMap();
@@ -858,27 +728,27 @@ public CompletableFuture> deleteArbitraryCostRuleWithHttpInfoA
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.deleteArbitraryCostRule",
+ "v2.CloudCostManagementApi.createTagPipelinesRuleset",
localVarPath,
new ArrayList(),
localVarHeaderParams,
new HashMap(),
- new String[] {"*/*"},
+ new String[] {"application/json"},
new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
} catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(ex);
return result;
}
return apiClient.invokeAPIAsync(
- "DELETE",
+ "POST",
builder,
localVarHeaderParams,
- new String[] {},
+ new String[] {"application/json"},
localVarPostBody,
new HashMap(),
false,
- null);
+ new GenericType() {});
}
/**
@@ -1437,27 +1307,27 @@ public CompletableFuture> deleteCostGCPUsageCostConfigWithHttp
}
/**
- * Delete Custom Costs file.
+ * Delete custom allocation rule.
*
- * See {@link #deleteCustomCostsFileWithHttpInfo}.
+ *
See {@link #deleteCustomAllocationRuleWithHttpInfo}.
*
- * @param fileId File ID. (required)
+ * @param ruleId The unique identifier of the custom allocation rule (required)
* @throws ApiException if fails to make API call
*/
- public void deleteCustomCostsFile(String fileId) throws ApiException {
- deleteCustomCostsFileWithHttpInfo(fileId);
+ public void deleteCustomAllocationRule(Long ruleId) throws ApiException {
+ deleteCustomAllocationRuleWithHttpInfo(ruleId);
}
/**
- * Delete Custom Costs file.
+ * Delete custom allocation rule.
*
- *
See {@link #deleteCustomCostsFileWithHttpInfoAsync}.
+ *
See {@link #deleteCustomAllocationRuleWithHttpInfoAsync}.
*
- * @param fileId File ID. (required)
+ * @param ruleId The unique identifier of the custom allocation rule (required)
* @return CompletableFuture
*/
- public CompletableFuture deleteCustomCostsFileAsync(String fileId) {
- return deleteCustomCostsFileWithHttpInfoAsync(fileId)
+ public CompletableFuture deleteCustomAllocationRuleAsync(Long ruleId) {
+ return deleteCustomAllocationRuleWithHttpInfoAsync(ruleId)
.thenApply(
response -> {
return response.getData();
@@ -1465,9 +1335,9 @@ public CompletableFuture deleteCustomCostsFileAsync(String fileId) {
}
/**
- * Delete the specified Custom Costs file.
+ * Delete a custom allocation rule - Delete an existing custom allocation rule by its ID
*
- * @param fileId File ID. (required)
+ * @param ruleId The unique identifier of the custom allocation rule (required)
* @return ApiResponse<Void>
* @throws ApiException if fails to make API call
* @http.response.details
@@ -1475,29 +1345,27 @@ public CompletableFuture deleteCustomCostsFileAsync(String fileId) {
* Response details
* | Status Code | Description | Response Headers |
* | 204 | No Content | - |
- * | 403 | Forbidden | - |
- * | 404 | Not Found | - |
* | 429 | Too many requests | - |
*
*/
- public ApiResponse deleteCustomCostsFileWithHttpInfo(String fileId) throws ApiException {
+ public ApiResponse deleteCustomAllocationRuleWithHttpInfo(Long ruleId) throws ApiException {
Object localVarPostBody = null;
- // verify the required parameter 'fileId' is set
- if (fileId == null) {
+ // verify the required parameter 'ruleId' is set
+ if (ruleId == null) {
throw new ApiException(
- 400, "Missing the required parameter 'fileId' when calling deleteCustomCostsFile");
+ 400, "Missing the required parameter 'ruleId' when calling deleteCustomAllocationRule");
}
// create path and map variables
String localVarPath =
- "/api/v2/cost/custom_costs/{file_id}"
- .replaceAll("\\{" + "file_id" + "\\}", apiClient.escapeString(fileId.toString()));
+ "/api/v2/cost/arbitrary_rule/{rule_id}"
+ .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.deleteCustomCostsFile",
+ "v2.CloudCostManagementApi.deleteCustomAllocationRule",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -1516,29 +1384,30 @@ public ApiResponse deleteCustomCostsFileWithHttpInfo(String fileId) throws
}
/**
- * Delete Custom Costs file.
+ * Delete custom allocation rule.
*
- * See {@link #deleteCustomCostsFileWithHttpInfo}.
+ *
See {@link #deleteCustomAllocationRuleWithHttpInfo}.
*
- * @param fileId File ID. (required)
+ * @param ruleId The unique identifier of the custom allocation rule (required)
* @return CompletableFuture<ApiResponse<Void>>
*/
- public CompletableFuture> deleteCustomCostsFileWithHttpInfoAsync(
- String fileId) {
+ public CompletableFuture> deleteCustomAllocationRuleWithHttpInfoAsync(
+ Long ruleId) {
Object localVarPostBody = null;
- // verify the required parameter 'fileId' is set
- if (fileId == null) {
+ // verify the required parameter 'ruleId' is set
+ if (ruleId == null) {
CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(
new ApiException(
- 400, "Missing the required parameter 'fileId' when calling deleteCustomCostsFile"));
+ 400,
+ "Missing the required parameter 'ruleId' when calling deleteCustomAllocationRule"));
return result;
}
// create path and map variables
String localVarPath =
- "/api/v2/cost/custom_costs/{file_id}"
- .replaceAll("\\{" + "file_id" + "\\}", apiClient.escapeString(fileId.toString()));
+ "/api/v2/cost/arbitrary_rule/{rule_id}"
+ .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
Map localVarHeaderParams = new HashMap();
@@ -1546,7 +1415,7 @@ public CompletableFuture> deleteCustomCostsFileWithHttpInfoAsy
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.deleteCustomCostsFile",
+ "v2.CloudCostManagementApi.deleteCustomAllocationRule",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -1570,27 +1439,27 @@ public CompletableFuture> deleteCustomCostsFileWithHttpInfoAsy
}
/**
- * Delete ruleset.
+ * Delete Custom Costs file.
*
- * See {@link #deleteRulesetWithHttpInfo}.
+ *
See {@link #deleteCustomCostsFileWithHttpInfo}.
*
- * @param rulesetId The unique identifier of the ruleset (required)
+ * @param fileId File ID. (required)
* @throws ApiException if fails to make API call
*/
- public void deleteRuleset(String rulesetId) throws ApiException {
- deleteRulesetWithHttpInfo(rulesetId);
+ public void deleteCustomCostsFile(String fileId) throws ApiException {
+ deleteCustomCostsFileWithHttpInfo(fileId);
}
/**
- * Delete ruleset.
+ * Delete Custom Costs file.
*
- *
See {@link #deleteRulesetWithHttpInfoAsync}.
+ *
See {@link #deleteCustomCostsFileWithHttpInfoAsync}.
*
- * @param rulesetId The unique identifier of the ruleset (required)
+ * @param fileId File ID. (required)
* @return CompletableFuture
*/
- public CompletableFuture deleteRulesetAsync(String rulesetId) {
- return deleteRulesetWithHttpInfoAsync(rulesetId)
+ public CompletableFuture deleteCustomCostsFileAsync(String fileId) {
+ return deleteCustomCostsFileWithHttpInfoAsync(fileId)
.thenApply(
response -> {
return response.getData();
@@ -1598,9 +1467,9 @@ public CompletableFuture deleteRulesetAsync(String rulesetId) {
}
/**
- * Delete a tag pipeline ruleset - Delete an existing tag pipeline ruleset by its ID
+ * Delete the specified Custom Costs file.
*
- * @param rulesetId The unique identifier of the ruleset (required)
+ * @param fileId File ID. (required)
* @return ApiResponse<Void>
* @throws ApiException if fails to make API call
* @http.response.details
@@ -1608,27 +1477,29 @@ public CompletableFuture deleteRulesetAsync(String rulesetId) {
* Response details
* | Status Code | Description | Response Headers |
* | 204 | No Content | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
* | 429 | Too many requests | - |
*
*/
- public ApiResponse deleteRulesetWithHttpInfo(String rulesetId) throws ApiException {
+ public ApiResponse deleteCustomCostsFileWithHttpInfo(String fileId) throws ApiException {
Object localVarPostBody = null;
- // verify the required parameter 'rulesetId' is set
- if (rulesetId == null) {
+ // verify the required parameter 'fileId' is set
+ if (fileId == null) {
throw new ApiException(
- 400, "Missing the required parameter 'rulesetId' when calling deleteRuleset");
+ 400, "Missing the required parameter 'fileId' when calling deleteCustomCostsFile");
}
// create path and map variables
String localVarPath =
- "/api/v2/tags/enrichment/{ruleset_id}"
- .replaceAll("\\{" + "ruleset_id" + "\\}", apiClient.escapeString(rulesetId.toString()));
+ "/api/v2/cost/custom_costs/{file_id}"
+ .replaceAll("\\{" + "file_id" + "\\}", apiClient.escapeString(fileId.toString()));
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.deleteRuleset",
+ "v2.CloudCostManagementApi.deleteCustomCostsFile",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -1647,28 +1518,29 @@ public ApiResponse deleteRulesetWithHttpInfo(String rulesetId) throws ApiE
}
/**
- * Delete ruleset.
+ * Delete Custom Costs file.
*
- * See {@link #deleteRulesetWithHttpInfo}.
+ *
See {@link #deleteCustomCostsFileWithHttpInfo}.
*
- * @param rulesetId The unique identifier of the ruleset (required)
+ * @param fileId File ID. (required)
* @return CompletableFuture<ApiResponse<Void>>
*/
- public CompletableFuture> deleteRulesetWithHttpInfoAsync(String rulesetId) {
+ public CompletableFuture> deleteCustomCostsFileWithHttpInfoAsync(
+ String fileId) {
Object localVarPostBody = null;
- // verify the required parameter 'rulesetId' is set
- if (rulesetId == null) {
+ // verify the required parameter 'fileId' is set
+ if (fileId == null) {
CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(
new ApiException(
- 400, "Missing the required parameter 'rulesetId' when calling deleteRuleset"));
+ 400, "Missing the required parameter 'fileId' when calling deleteCustomCostsFile"));
return result;
}
// create path and map variables
String localVarPath =
- "/api/v2/tags/enrichment/{ruleset_id}"
- .replaceAll("\\{" + "ruleset_id" + "\\}", apiClient.escapeString(rulesetId.toString()));
+ "/api/v2/cost/custom_costs/{file_id}"
+ .replaceAll("\\{" + "file_id" + "\\}", apiClient.escapeString(fileId.toString()));
Map localVarHeaderParams = new HashMap();
@@ -1676,7 +1548,7 @@ public CompletableFuture> deleteRulesetWithHttpInfoAsync(Strin
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.deleteRuleset",
+ "v2.CloudCostManagementApi.deleteCustomCostsFile",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -1700,28 +1572,27 @@ public CompletableFuture> deleteRulesetWithHttpInfoAsync(Strin
}
/**
- * Get arbitrary cost rule.
+ * Delete tag pipeline ruleset.
*
- * See {@link #getArbitraryCostRuleWithHttpInfo}.
+ *
See {@link #deleteTagPipelinesRulesetWithHttpInfo}.
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
- * @return ArbitraryRuleResponse
+ * @param rulesetId The unique identifier of the ruleset (required)
* @throws ApiException if fails to make API call
*/
- public ArbitraryRuleResponse getArbitraryCostRule(Long ruleId) throws ApiException {
- return getArbitraryCostRuleWithHttpInfo(ruleId).getData();
+ public void deleteTagPipelinesRuleset(String rulesetId) throws ApiException {
+ deleteTagPipelinesRulesetWithHttpInfo(rulesetId);
}
/**
- * Get arbitrary cost rule.
+ * Delete tag pipeline ruleset.
*
- *
See {@link #getArbitraryCostRuleWithHttpInfoAsync}.
+ *
See {@link #deleteTagPipelinesRulesetWithHttpInfoAsync}.
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
- * @return CompletableFuture<ArbitraryRuleResponse>
+ * @param rulesetId The unique identifier of the ruleset (required)
+ * @return CompletableFuture
*/
- public CompletableFuture getArbitraryCostRuleAsync(Long ruleId) {
- return getArbitraryCostRuleWithHttpInfoAsync(ruleId)
+ public CompletableFuture deleteTagPipelinesRulesetAsync(String rulesetId) {
+ return deleteTagPipelinesRulesetWithHttpInfoAsync(rulesetId)
.thenApply(
response -> {
return response.getData();
@@ -1729,79 +1600,80 @@ public CompletableFuture getArbitraryCostRuleAsync(Long r
}
/**
- * Get a specific arbitrary cost rule - Retrieve a specific arbitrary cost rule by its ID
+ * Delete a tag pipeline ruleset - Delete an existing tag pipeline ruleset by its ID
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
- * @return ApiResponse<ArbitraryRuleResponse>
+ * @param rulesetId The unique identifier of the ruleset (required)
+ * @return ApiResponse<Void>
* @throws ApiException if fails to make API call
* @http.response.details
*
* Response details
* | Status Code | Description | Response Headers |
- * | 200 | OK | - |
+ * | 204 | No Content | - |
* | 429 | Too many requests | - |
*
*/
- public ApiResponse getArbitraryCostRuleWithHttpInfo(Long ruleId)
+ public ApiResponse deleteTagPipelinesRulesetWithHttpInfo(String rulesetId)
throws ApiException {
Object localVarPostBody = null;
- // verify the required parameter 'ruleId' is set
- if (ruleId == null) {
+ // verify the required parameter 'rulesetId' is set
+ if (rulesetId == null) {
throw new ApiException(
- 400, "Missing the required parameter 'ruleId' when calling getArbitraryCostRule");
+ 400, "Missing the required parameter 'rulesetId' when calling deleteTagPipelinesRuleset");
}
// create path and map variables
String localVarPath =
- "/api/v2/cost/arbitrary_rule/{rule_id}"
- .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
+ "/api/v2/tags/enrichment/{ruleset_id}"
+ .replaceAll("\\{" + "ruleset_id" + "\\}", apiClient.escapeString(rulesetId.toString()));
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.getArbitraryCostRule",
+ "v2.CloudCostManagementApi.deleteTagPipelinesRuleset",
localVarPath,
new ArrayList(),
localVarHeaderParams,
new HashMap(),
- new String[] {"application/json"},
+ new String[] {"*/*"},
new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
return apiClient.invokeAPI(
- "GET",
+ "DELETE",
builder,
localVarHeaderParams,
new String[] {},
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ null);
}
/**
- * Get arbitrary cost rule.
+ * Delete tag pipeline ruleset.
*
- * See {@link #getArbitraryCostRuleWithHttpInfo}.
+ *
See {@link #deleteTagPipelinesRulesetWithHttpInfo}.
*
- * @param ruleId The unique identifier of the arbitrary cost rule (required)
- * @return CompletableFuture<ApiResponse<ArbitraryRuleResponse>>
+ * @param rulesetId The unique identifier of the ruleset (required)
+ * @return CompletableFuture<ApiResponse<Void>>
*/
- public CompletableFuture>
- getArbitraryCostRuleWithHttpInfoAsync(Long ruleId) {
+ public CompletableFuture> deleteTagPipelinesRulesetWithHttpInfoAsync(
+ String rulesetId) {
Object localVarPostBody = null;
- // verify the required parameter 'ruleId' is set
- if (ruleId == null) {
- CompletableFuture> result = new CompletableFuture<>();
+ // verify the required parameter 'rulesetId' is set
+ if (rulesetId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(
new ApiException(
- 400, "Missing the required parameter 'ruleId' when calling getArbitraryCostRule"));
+ 400,
+ "Missing the required parameter 'rulesetId' when calling deleteTagPipelinesRuleset"));
return result;
}
// create path and map variables
String localVarPath =
- "/api/v2/cost/arbitrary_rule/{rule_id}"
- .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
+ "/api/v2/tags/enrichment/{ruleset_id}"
+ .replaceAll("\\{" + "ruleset_id" + "\\}", apiClient.escapeString(rulesetId.toString()));
Map localVarHeaderParams = new HashMap();
@@ -1809,27 +1681,27 @@ public ApiResponse getArbitraryCostRuleWithHttpInfo(Long
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.getArbitraryCostRule",
+ "v2.CloudCostManagementApi.deleteTagPipelinesRuleset",
localVarPath,
new ArrayList(),
localVarHeaderParams,
new HashMap(),
- new String[] {"application/json"},
+ new String[] {"*/*"},
new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
} catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(ex);
return result;
}
return apiClient.invokeAPIAsync(
- "GET",
+ "DELETE",
builder,
localVarHeaderParams,
new String[] {},
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ null);
}
/**
@@ -2383,6 +2255,139 @@ public ApiResponse getCostGCPUsageCostConfigWithHttpInfo(Lo
new GenericType() {});
}
+ /**
+ * Get custom allocation rule.
+ *
+ * See {@link #getCustomAllocationRuleWithHttpInfo}.
+ *
+ * @param ruleId The unique identifier of the custom allocation rule (required)
+ * @return ArbitraryRuleResponse
+ * @throws ApiException if fails to make API call
+ */
+ public ArbitraryRuleResponse getCustomAllocationRule(Long ruleId) throws ApiException {
+ return getCustomAllocationRuleWithHttpInfo(ruleId).getData();
+ }
+
+ /**
+ * Get custom allocation rule.
+ *
+ *
See {@link #getCustomAllocationRuleWithHttpInfoAsync}.
+ *
+ * @param ruleId The unique identifier of the custom allocation rule (required)
+ * @return CompletableFuture<ArbitraryRuleResponse>
+ */
+ public CompletableFuture getCustomAllocationRuleAsync(Long ruleId) {
+ return getCustomAllocationRuleWithHttpInfoAsync(ruleId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get a specific custom allocation rule - Retrieve a specific custom allocation rule by its ID
+ *
+ * @param ruleId The unique identifier of the custom allocation rule (required)
+ * @return ApiResponse<ArbitraryRuleResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse getCustomAllocationRuleWithHttpInfo(Long ruleId)
+ throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'ruleId' is set
+ if (ruleId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'ruleId' when calling getCustomAllocationRule");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/cost/arbitrary_rule/{rule_id}"
+ .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.CloudCostManagementApi.getCustomAllocationRule",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get custom allocation rule.
+ *
+ * See {@link #getCustomAllocationRuleWithHttpInfo}.
+ *
+ * @param ruleId The unique identifier of the custom allocation rule (required)
+ * @return CompletableFuture<ApiResponse<ArbitraryRuleResponse>>
+ */
+ public CompletableFuture>
+ getCustomAllocationRuleWithHttpInfoAsync(Long ruleId) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'ruleId' is set
+ if (ruleId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'ruleId' when calling getCustomAllocationRule"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/cost/arbitrary_rule/{rule_id}"
+ .replaceAll("\\{" + "rule_id" + "\\}", apiClient.escapeString(ruleId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.CloudCostManagementApi.getCustomAllocationRule",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
/**
* Get Custom Costs file.
*
@@ -2521,26 +2526,26 @@ public ApiResponse getCustomCostsFileWithHttpInfo(St
/**
* Get ruleset.
*
- * See {@link #getRulesetWithHttpInfo}.
+ *
See {@link #getTagPipelinesRulesetWithHttpInfo}.
*
* @param rulesetId The unique identifier of the ruleset (required)
* @return RulesetResp
* @throws ApiException if fails to make API call
*/
- public RulesetResp getRuleset(String rulesetId) throws ApiException {
- return getRulesetWithHttpInfo(rulesetId).getData();
+ public RulesetResp getTagPipelinesRuleset(String rulesetId) throws ApiException {
+ return getTagPipelinesRulesetWithHttpInfo(rulesetId).getData();
}
/**
* Get ruleset.
*
- *
See {@link #getRulesetWithHttpInfoAsync}.
+ *
See {@link #getTagPipelinesRulesetWithHttpInfoAsync}.
*
* @param rulesetId The unique identifier of the ruleset (required)
* @return CompletableFuture<RulesetResp>
*/
- public CompletableFuture getRulesetAsync(String rulesetId) {
- return getRulesetWithHttpInfoAsync(rulesetId)
+ public CompletableFuture getTagPipelinesRulesetAsync(String rulesetId) {
+ return getTagPipelinesRulesetWithHttpInfoAsync(rulesetId)
.thenApply(
response -> {
return response.getData();
@@ -2561,13 +2566,14 @@ public CompletableFuture getRulesetAsync(String rulesetId) {
* | 429 | Too many requests | - |
*
*/
- public ApiResponse getRulesetWithHttpInfo(String rulesetId) throws ApiException {
+ public ApiResponse getTagPipelinesRulesetWithHttpInfo(String rulesetId)
+ throws ApiException {
Object localVarPostBody = null;
// verify the required parameter 'rulesetId' is set
if (rulesetId == null) {
throw new ApiException(
- 400, "Missing the required parameter 'rulesetId' when calling getRuleset");
+ 400, "Missing the required parameter 'rulesetId' when calling getTagPipelinesRuleset");
}
// create path and map variables
String localVarPath =
@@ -2578,7 +2584,7 @@ public ApiResponse getRulesetWithHttpInfo(String rulesetId) throws
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.getRuleset",
+ "v2.CloudCostManagementApi.getTagPipelinesRuleset",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -2599,12 +2605,13 @@ public ApiResponse getRulesetWithHttpInfo(String rulesetId) throws
/**
* Get ruleset.
*
- * See {@link #getRulesetWithHttpInfo}.
+ *
See {@link #getTagPipelinesRulesetWithHttpInfo}.
*
* @param rulesetId The unique identifier of the ruleset (required)
* @return CompletableFuture<ApiResponse<RulesetResp>>
*/
- public CompletableFuture> getRulesetWithHttpInfoAsync(String rulesetId) {
+ public CompletableFuture> getTagPipelinesRulesetWithHttpInfoAsync(
+ String rulesetId) {
Object localVarPostBody = null;
// verify the required parameter 'rulesetId' is set
@@ -2612,7 +2619,8 @@ public CompletableFuture> getRulesetWithHttpInfoAsync(S
CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(
new ApiException(
- 400, "Missing the required parameter 'rulesetId' when calling getRuleset"));
+ 400,
+ "Missing the required parameter 'rulesetId' when calling getTagPipelinesRuleset"));
return result;
}
// create path and map variables
@@ -2626,7 +2634,7 @@ public CompletableFuture> getRulesetWithHttpInfoAsync(S
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.getRuleset",
+ "v2.CloudCostManagementApi.getTagPipelinesRuleset",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -2650,26 +2658,26 @@ public CompletableFuture> getRulesetWithHttpInfoAsync(S
}
/**
- * List arbitrary cost rules.
+ * List budgets.
*
- * See {@link #listArbitraryCostRulesWithHttpInfo}.
+ *
See {@link #listBudgetsWithHttpInfo}.
*
- * @return ArbitraryRuleResponseArray
+ * @return BudgetArray
* @throws ApiException if fails to make API call
*/
- public ArbitraryRuleResponseArray listArbitraryCostRules() throws ApiException {
- return listArbitraryCostRulesWithHttpInfo().getData();
+ public BudgetArray listBudgets() throws ApiException {
+ return listBudgetsWithHttpInfo().getData();
}
/**
- * List arbitrary cost rules.
+ * List budgets.
*
- *
See {@link #listArbitraryCostRulesWithHttpInfoAsync}.
+ *
See {@link #listBudgetsWithHttpInfoAsync}.
*
- * @return CompletableFuture<ArbitraryRuleResponseArray>
+ * @return CompletableFuture<BudgetArray>
*/
- public CompletableFuture listArbitraryCostRulesAsync() {
- return listArbitraryCostRulesWithHttpInfoAsync()
+ public CompletableFuture listBudgetsAsync() {
+ return listBudgetsWithHttpInfoAsync()
.thenApply(
response -> {
return response.getData();
@@ -2677,10 +2685,9 @@ public CompletableFuture listArbitraryCostRulesAsync
}
/**
- * List all arbitrary cost rules - Retrieve a list of all arbitrary cost rules for the
- * organization
+ * List budgets.
*
- * @return ApiResponse<ArbitraryRuleResponseArray>
+ * @return ApiResponse<BudgetArray>
* @throws ApiException if fails to make API call
* @http.response.details
*
@@ -2690,17 +2697,16 @@ public CompletableFuture listArbitraryCostRulesAsync
* | 429 | Too many requests | - |
*
*/
- public ApiResponse listArbitraryCostRulesWithHttpInfo()
- throws ApiException {
+ public ApiResponse listBudgetsWithHttpInfo() throws ApiException {
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v2/cost/arbitrary_rule";
+ String localVarPath = "/api/v2/cost/budgets";
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.listArbitraryCostRules",
+ "v2.CloudCostManagementApi.listBudgets",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -2715,21 +2721,20 @@ public ApiResponse listArbitraryCostRulesWithHttpInf
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ new GenericType() {});
}
/**
- * List arbitrary cost rules.
+ * List budgets.
*
- * See {@link #listArbitraryCostRulesWithHttpInfo}.
+ *
See {@link #listBudgetsWithHttpInfo}.
*
- * @return CompletableFuture<ApiResponse<ArbitraryRuleResponseArray>>
+ * @return CompletableFuture<ApiResponse<BudgetArray>>
*/
- public CompletableFuture>
- listArbitraryCostRulesWithHttpInfoAsync() {
+ public CompletableFuture> listBudgetsWithHttpInfoAsync() {
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v2/cost/arbitrary_rule";
+ String localVarPath = "/api/v2/cost/budgets";
Map localVarHeaderParams = new HashMap();
@@ -2737,7 +2742,7 @@ public ApiResponse listArbitraryCostRulesWithHttpInf
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.listArbitraryCostRules",
+ "v2.CloudCostManagementApi.listBudgets",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -2745,7 +2750,7 @@ public ApiResponse listArbitraryCostRulesWithHttpInf
new String[] {"application/json"},
new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
} catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(ex);
return result;
}
@@ -2757,30 +2762,30 @@ public ApiResponse listArbitraryCostRulesWithHttpInf
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ new GenericType() {});
}
/**
- * List budgets.
+ * List Cloud Cost Management AWS CUR configs.
*
- * See {@link #listBudgetsWithHttpInfo}.
+ *
See {@link #listCostAWSCURConfigsWithHttpInfo}.
*
- * @return BudgetArray
+ * @return AwsCURConfigsResponse
* @throws ApiException if fails to make API call
*/
- public BudgetArray listBudgets() throws ApiException {
- return listBudgetsWithHttpInfo().getData();
+ public AwsCURConfigsResponse listCostAWSCURConfigs() throws ApiException {
+ return listCostAWSCURConfigsWithHttpInfo().getData();
}
/**
- * List budgets.
+ * List Cloud Cost Management AWS CUR configs.
*
- *
See {@link #listBudgetsWithHttpInfoAsync}.
+ *
See {@link #listCostAWSCURConfigsWithHttpInfoAsync}.
*
- * @return CompletableFuture<BudgetArray>
+ * @return CompletableFuture<AwsCURConfigsResponse>
*/
- public CompletableFuture listBudgetsAsync() {
- return listBudgetsWithHttpInfoAsync()
+ public CompletableFuture listCostAWSCURConfigsAsync() {
+ return listCostAWSCURConfigsWithHttpInfoAsync()
.thenApply(
response -> {
return response.getData();
@@ -2788,28 +2793,30 @@ public CompletableFuture listBudgetsAsync() {
}
/**
- * List budgets.
+ * List the AWS CUR configs.
*
- * @return ApiResponse<BudgetArray>
+ * @return ApiResponse<AwsCURConfigsResponse>
* @throws ApiException if fails to make API call
* @http.response.details
*
* Response details
* | Status Code | Description | Response Headers |
* | 200 | OK | - |
+ * | 403 | Forbidden | - |
* | 429 | Too many requests | - |
*
*/
- public ApiResponse listBudgetsWithHttpInfo() throws ApiException {
+ public ApiResponse listCostAWSCURConfigsWithHttpInfo()
+ throws ApiException {
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v2/cost/budgets";
+ String localVarPath = "/api/v2/cost/aws_cur_config";
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.listBudgets",
+ "v2.CloudCostManagementApi.listCostAWSCURConfigs",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -2824,20 +2831,21 @@ public ApiResponse listBudgetsWithHttpInfo() throws ApiException {
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ new GenericType() {});
}
/**
- * List budgets.
+ * List Cloud Cost Management AWS CUR configs.
*
- * See {@link #listBudgetsWithHttpInfo}.
+ *
See {@link #listCostAWSCURConfigsWithHttpInfo}.
*
- * @return CompletableFuture<ApiResponse<BudgetArray>>
+ * @return CompletableFuture<ApiResponse<AwsCURConfigsResponse>>
*/
- public CompletableFuture> listBudgetsWithHttpInfoAsync() {
+ public CompletableFuture>
+ listCostAWSCURConfigsWithHttpInfoAsync() {
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v2/cost/budgets";
+ String localVarPath = "/api/v2/cost/aws_cur_config";
Map localVarHeaderParams = new HashMap();
@@ -2845,7 +2853,7 @@ public CompletableFuture> listBudgetsWithHttpInfoAsync(
try {
builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.listBudgets",
+ "v2.CloudCostManagementApi.listCostAWSCURConfigs",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -2853,7 +2861,7 @@ public CompletableFuture> listBudgetsWithHttpInfoAsync(
new String[] {"application/json"},
new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
} catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
+ CompletableFuture> result = new CompletableFuture<>();
result.completeExceptionally(ex);
return result;
}
@@ -2865,30 +2873,30 @@ public CompletableFuture> listBudgetsWithHttpInfoAsync(
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ new GenericType() {});
}
/**
- * List Cloud Cost Management AWS CUR configs.
+ * List Cloud Cost Management Azure configs.
*
- * See {@link #listCostAWSCURConfigsWithHttpInfo}.
+ *
See {@link #listCostAzureUCConfigsWithHttpInfo}.
*
- * @return AwsCURConfigsResponse
+ * @return AzureUCConfigsResponse
* @throws ApiException if fails to make API call
*/
- public AwsCURConfigsResponse listCostAWSCURConfigs() throws ApiException {
- return listCostAWSCURConfigsWithHttpInfo().getData();
+ public AzureUCConfigsResponse listCostAzureUCConfigs() throws ApiException {
+ return listCostAzureUCConfigsWithHttpInfo().getData();
}
/**
- * List Cloud Cost Management AWS CUR configs.
+ * List Cloud Cost Management Azure configs.
*
- *
See {@link #listCostAWSCURConfigsWithHttpInfoAsync}.
+ *
See {@link #listCostAzureUCConfigsWithHttpInfoAsync}.
*
- * @return CompletableFuture<AwsCURConfigsResponse>
+ * @return CompletableFuture<AzureUCConfigsResponse>
*/
- public CompletableFuture listCostAWSCURConfigsAsync() {
- return listCostAWSCURConfigsWithHttpInfoAsync()
+ public CompletableFuture listCostAzureUCConfigsAsync() {
+ return listCostAzureUCConfigsWithHttpInfoAsync()
.thenApply(
response -> {
return response.getData();
@@ -2896,9 +2904,9 @@ public CompletableFuture listCostAWSCURConfigsAsync() {
}
/**
- * List the AWS CUR configs.
+ * List the Azure configs.
*
- * @return ApiResponse<AwsCURConfigsResponse>
+ * @return ApiResponse<AzureUCConfigsResponse>
* @throws ApiException if fails to make API call
* @http.response.details
*
@@ -2909,17 +2917,17 @@ public CompletableFuture listCostAWSCURConfigsAsync() {
* | 429 | Too many requests | - |
*
*/
- public ApiResponse listCostAWSCURConfigsWithHttpInfo()
+ public ApiResponse listCostAzureUCConfigsWithHttpInfo()
throws ApiException {
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v2/cost/aws_cur_config";
+ String localVarPath = "/api/v2/cost/azure_uc_config";
Map localVarHeaderParams = new HashMap();
Invocation.Builder builder =
apiClient.createBuilder(
- "v2.CloudCostManagementApi.listCostAWSCURConfigs",
+ "v2.CloudCostManagementApi.listCostAzureUCConfigs",
localVarPath,
new ArrayList(),
localVarHeaderParams,
@@ -2934,21 +2942,21 @@ public ApiResponse listCostAWSCURConfigsWithHttpInfo()
localVarPostBody,
new HashMap(),
false,
- new GenericType() {});
+ new GenericType() {});
}
/**
- * List Cloud Cost Management AWS CUR configs.
+ * List Cloud Cost Management Azure configs.
*
- * See {@link #listCostAWSCURConfigsWithHttpInfo}.
+ *
See {@link #listCostAzureUCConfigsWithHttpInfo}.
*
- * @return CompletableFuture<ApiResponse<AwsCURConfigsResponse>>
+ * @return CompletableFuture<ApiResponse<AzureUCConfigsResponse>>
*/
- public CompletableFuture>
- listCostAWSCURConfigsWithHttpInfoAsync() {
+ public CompletableFuture>
+ listCostAzureUCConfigsWithHttpInfoAsync() {
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v2/cost/aws_cur_config";
+ String localVarPath = "/api/v2/cost/azure_uc_config";
Map localVarHeaderParams = new HashMap();
@@ -2956,7 +2964,7 @@ public ApiResponse