diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 035a0b32780..24530d7eac4 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -13765,6 +13765,13 @@ components:
data:
$ref: "#/components/schemas/ConvertJobResultsToSignalsData"
type: object
+ CostAggregationType:
+ description: "Controls how costs are aggregated when using `start_date`. The `cumulative` option returns month-to-date running totals."
+ enum:
+ - cumulative
+ type: string
+ x-enum-varnames:
+ - CUMULATIVE
CostAttributionAggregates:
description: An array of available aggregates.
items:
@@ -106713,6 +106720,12 @@ paths:
schema:
format: date-time
type: string
+ - description: "Controls how costs are aggregated when using `start_date`. The `cumulative` option returns month-to-date running totals."
+ in: query
+ name: cost_aggregation
+ required: false
+ schema:
+ $ref: "#/components/schemas/CostAggregationType"
- description: "Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`."
in: query
name: include_connected_accounts
diff --git a/src/main/java/com/datadog/api/client/v2/api/UsageMeteringApi.java b/src/main/java/com/datadog/api/client/v2/api/UsageMeteringApi.java
index 38128cc383e..9e0179eea88 100644
--- a/src/main/java/com/datadog/api/client/v2/api/UsageMeteringApi.java
+++ b/src/main/java/com/datadog/api/client/v2/api/UsageMeteringApi.java
@@ -6,6 +6,7 @@
import com.datadog.api.client.Pair;
import com.datadog.api.client.v2.model.ActiveBillingDimensionsResponse;
import com.datadog.api.client.v2.model.BillingDimensionsMappingResponse;
+import com.datadog.api.client.v2.model.CostAggregationType;
import com.datadog.api.client.v2.model.CostByOrgResponse;
import com.datadog.api.client.v2.model.HourlyUsageResponse;
import com.datadog.api.client.v2.model.MonthlyCostAttributionResponse;
@@ -595,6 +596,7 @@ public static class GetEstimatedCostByOrgOptionalParameters {
private OffsetDateTime endMonth;
private OffsetDateTime startDate;
private OffsetDateTime endDate;
+ private CostAggregationType costAggregation;
private Boolean includeConnectedAccounts;
/**
@@ -662,6 +664,19 @@ public GetEstimatedCostByOrgOptionalParameters endDate(OffsetDateTime endDate) {
return this;
}
+ /**
+ * Set costAggregation.
+ *
+ * @param costAggregation Controls how costs are aggregated when using start_date.
+ * The cumulative option returns month-to-date running totals. (optional)
+ * @return GetEstimatedCostByOrgOptionalParameters
+ */
+ public GetEstimatedCostByOrgOptionalParameters costAggregation(
+ CostAggregationType costAggregation) {
+ this.costAggregation = costAggregation;
+ return this;
+ }
+
/**
* Set includeConnectedAccounts.
*
@@ -767,6 +782,7 @@ public ApiResponse getEstimatedCostByOrgWithHttpInfo(
OffsetDateTime endMonth = parameters.endMonth;
OffsetDateTime startDate = parameters.startDate;
OffsetDateTime endDate = parameters.endDate;
+ CostAggregationType costAggregation = parameters.costAggregation;
Boolean includeConnectedAccounts = parameters.includeConnectedAccounts;
// create path and map variables
String localVarPath = "/api/v2/usage/estimated_cost";
@@ -779,6 +795,7 @@ public ApiResponse getEstimatedCostByOrgWithHttpInfo(
localVarQueryParams.addAll(apiClient.parameterToPairs("", "end_month", endMonth));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "start_date", startDate));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "end_date", endDate));
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "cost_aggregation", costAggregation));
localVarQueryParams.addAll(
apiClient.parameterToPairs("", "include_connected_accounts", includeConnectedAccounts));
@@ -818,6 +835,7 @@ public CompletableFuture> getEstimatedCostByOrgWi
OffsetDateTime endMonth = parameters.endMonth;
OffsetDateTime startDate = parameters.startDate;
OffsetDateTime endDate = parameters.endDate;
+ CostAggregationType costAggregation = parameters.costAggregation;
Boolean includeConnectedAccounts = parameters.includeConnectedAccounts;
// create path and map variables
String localVarPath = "/api/v2/usage/estimated_cost";
@@ -830,6 +848,7 @@ public CompletableFuture> getEstimatedCostByOrgWi
localVarQueryParams.addAll(apiClient.parameterToPairs("", "end_month", endMonth));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "start_date", startDate));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "end_date", endDate));
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "cost_aggregation", costAggregation));
localVarQueryParams.addAll(
apiClient.parameterToPairs("", "include_connected_accounts", includeConnectedAccounts));
diff --git a/src/main/java/com/datadog/api/client/v2/model/CostAggregationType.java b/src/main/java/com/datadog/api/client/v2/model/CostAggregationType.java
new file mode 100644
index 00000000000..e0b732a52bf
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CostAggregationType.java
@@ -0,0 +1,57 @@
+/*
+ * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
+ * Copyright 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.datadog.api.client.ModelEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
+
+/**
+ * Controls how costs are aggregated when using start_date. The cumulative
+ * option returns month-to-date running totals.
+ */
+@JsonSerialize(using = CostAggregationType.CostAggregationTypeSerializer.class)
+public class CostAggregationType extends ModelEnum {
+
+ private static final Set allowedValues = new HashSet(Arrays.asList("cumulative"));
+
+ public static final CostAggregationType CUMULATIVE = new CostAggregationType("cumulative");
+
+ CostAggregationType(String value) {
+ super(value, allowedValues);
+ }
+
+ public static class CostAggregationTypeSerializer extends StdSerializer {
+ public CostAggregationTypeSerializer(Class t) {
+ super(t);
+ }
+
+ public CostAggregationTypeSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ CostAggregationType value, JsonGenerator jgen, SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.value);
+ }
+ }
+
+ @JsonCreator
+ public static CostAggregationType fromValue(String value) {
+ return new CostAggregationType(value);
+ }
+}