Skip to content

Commit 202c15d

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Regenerate client from commit 7a70f56 of spec repo (#3431)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent 47e1642 commit 202c15d

File tree

12 files changed

+318
-9
lines changed

12 files changed

+318
-9
lines changed

.generator/schemas/v1/openapi.yaml

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19536,6 +19536,23 @@ components:
1953619536
x-enum-varnames:
1953719537
- BARS
1953819538
- AREA
19539+
TimeseriesRequestStyle:
19540+
description: Define request widget style for timeseries widgets.
19541+
properties:
19542+
has_value_labels:
19543+
description: If true, the value is displayed as a label relative to the
19544+
data point.
19545+
type: boolean
19546+
line_type:
19547+
$ref: '#/components/schemas/WidgetLineType'
19548+
line_width:
19549+
$ref: '#/components/schemas/WidgetLineWidth'
19550+
order_by:
19551+
$ref: '#/components/schemas/WidgetStyleOrderBy'
19552+
palette:
19553+
description: Color palette to apply to the widget.
19554+
type: string
19555+
type: object
1953919556
TimeseriesWidgetDefinition:
1954019557
description: The timeseries visualization allows you to display the evolution
1954119558
of one or more metrics, log events, or Indexed Spans over time.
@@ -19711,7 +19728,7 @@ components:
1971119728
deprecated: true
1971219729
description: Deprecated - Use `queries` and `formulas` instead.
1971319730
style:
19714-
$ref: '#/components/schemas/WidgetRequestStyle'
19731+
$ref: '#/components/schemas/TimeseriesRequestStyle'
1971519732
type: object
1971619733
ToplistWidgetDefinition:
1971719734
description: The top list visualization enables you to display a list of Tag
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"2026-03-02T17:38:31.339Z"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
{
2+
"log": {
3+
"_recordingName": "Dashboards/Create a new dashboard with timeseries widget using has_value_labels",
4+
"creator": {
5+
"comment": "persister:fs",
6+
"name": "Polly.JS",
7+
"version": "6.0.5"
8+
},
9+
"entries": [
10+
{
11+
"_id": "9737dfcdb2556e0aa0c569ecc50601a7",
12+
"_order": 0,
13+
"cache": {},
14+
"request": {
15+
"bodySize": 367,
16+
"cookies": [],
17+
"headers": [
18+
{
19+
"_fromType": "array",
20+
"name": "accept",
21+
"value": "application/json"
22+
},
23+
{
24+
"_fromType": "array",
25+
"name": "content-type",
26+
"value": "application/json"
27+
}
28+
],
29+
"headersSize": 559,
30+
"httpVersion": "HTTP/1.1",
31+
"method": "POST",
32+
"postData": {
33+
"mimeType": "application/json",
34+
"params": [],
35+
"text": "{\"layout_type\":\"ordered\",\"title\":\"Test-Create_a_new_dashboard_with_timeseries_widget_using_has_value_labels-1772473111 with has_value_labels\",\"widgets\":[{\"definition\":{\"requests\":[{\"display_type\":\"line\",\"q\":\"avg:system.cpu.user{*} by {host}\",\"style\":{\"has_value_labels\":true,\"line_type\":\"solid\",\"line_width\":\"normal\",\"palette\":\"dog_classic\"}}],\"type\":\"timeseries\"}}]}"
36+
},
37+
"queryString": [],
38+
"url": "https://api.datadoghq.com/api/v1/dashboard"
39+
},
40+
"response": {
41+
"bodySize": 784,
42+
"content": {
43+
"mimeType": "application/json",
44+
"size": 784,
45+
"text": "{\"id\":\"ue9-kuc-ix2\",\"title\":\"Test-Create_a_new_dashboard_with_timeseries_widget_using_has_value_labels-1772473111 with has_value_labels\",\"description\":null,\"author_handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"author_name\":\"CI Account\",\"layout_type\":\"ordered\",\"url\":\"/dashboard/ue9-kuc-ix2/test-createanewdashboardwithtimeserieswidgetusinghasvaluelabels-1772473111-with\",\"template_variables\":null,\"widgets\":[{\"definition\":{\"requests\":[{\"display_type\":\"line\",\"q\":\"avg:system.cpu.user{*} by {host}\",\"style\":{\"has_value_labels\":true,\"line_type\":\"solid\",\"line_width\":\"normal\",\"palette\":\"dog_classic\"}}],\"type\":\"timeseries\"},\"id\":3800027122356131}],\"notify_list\":null,\"created_at\":\"2026-03-02T17:38:31.488630+00:00\",\"modified_at\":\"2026-03-02T17:38:31.488630+00:00\",\"restricted_roles\":[]}"
46+
},
47+
"cookies": [],
48+
"headers": [
49+
{
50+
"name": "content-type",
51+
"value": "application/json"
52+
}
53+
],
54+
"headersSize": 380,
55+
"httpVersion": "HTTP/1.1",
56+
"redirectURL": "",
57+
"status": 200,
58+
"statusText": "OK"
59+
},
60+
"startedDateTime": "2026-03-02T17:38:31.347Z",
61+
"time": 192
62+
},
63+
{
64+
"_id": "f06daf00268667a011d63be15789ac13",
65+
"_order": 0,
66+
"cache": {},
67+
"request": {
68+
"bodySize": 0,
69+
"cookies": [],
70+
"headers": [
71+
{
72+
"_fromType": "array",
73+
"name": "accept",
74+
"value": "application/json"
75+
}
76+
],
77+
"headersSize": 520,
78+
"httpVersion": "HTTP/1.1",
79+
"method": "DELETE",
80+
"queryString": [],
81+
"url": "https://api.datadoghq.com/api/v1/dashboard/ue9-kuc-ix2"
82+
},
83+
"response": {
84+
"bodySize": 38,
85+
"content": {
86+
"mimeType": "application/json",
87+
"size": 38,
88+
"text": "{\"deleted_dashboard_id\":\"ue9-kuc-ix2\"}"
89+
},
90+
"cookies": [],
91+
"headers": [
92+
{
93+
"name": "content-type",
94+
"value": "application/json"
95+
}
96+
],
97+
"headersSize": 379,
98+
"httpVersion": "HTTP/1.1",
99+
"redirectURL": "",
100+
"status": 200,
101+
"statusText": "OK"
102+
},
103+
"startedDateTime": "2026-03-02T17:38:31.547Z",
104+
"time": 402
105+
}
106+
],
107+
"pages": [],
108+
"version": "1.2"
109+
}
110+
}

features/v1/dashboards.feature

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -966,6 +966,17 @@ Feature: Dashboards
966966
And the response "widgets[0].definition.requests[0].display_type" is equal to "bars"
967967
And the response "widgets[0].definition.requests[0].q" is equal to "sum:trace.test.errors{env:prod,service:datadog-api-spec} by {resource_name}.as_count()"
968968

969+
@team:DataDog/dashboards-backend
970+
Scenario: Create a new dashboard with timeseries widget using has_value_labels
971+
Given new "CreateDashboard" request
972+
And body with value {"layout_type": "ordered", "title": "{{ unique }} with has_value_labels","widgets": [{"definition": {"type": "timeseries","requests": [{"q": "avg:system.cpu.user{*} by {host}","style": {"palette": "dog_classic","line_type": "solid","line_width": "normal","has_value_labels": true},"display_type": "line"}]}}]}
973+
When the request is sent
974+
Then the response status is 200 OK
975+
And the response "widgets[0].definition.requests[0].style.has_value_labels" is equal to true
976+
And the response "widgets[0].definition.requests[0].style.palette" is equal to "dog_classic"
977+
And the response "widgets[0].definition.requests[0].style.line_type" is equal to "solid"
978+
And the response "widgets[0].definition.requests[0].style.line_width" is equal to "normal"
979+
969980
@team:DataDog/dashboards-backend
970981
Scenario: Create a new dashboard with timeseries widget using order_by tags
971982
Given new "CreateDashboard" request

services/dashboards/src/v1/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,7 @@ export { TableWidgetTextFormatReplaceSubstringType } from "./models/TableWidgetT
237237
export { TableWidgetTextFormatRule } from "./models/TableWidgetTextFormatRule";
238238
export { TimeseriesBackground } from "./models/TimeseriesBackground";
239239
export { TimeseriesBackgroundType } from "./models/TimeseriesBackgroundType";
240+
export { TimeseriesRequestStyle } from "./models/TimeseriesRequestStyle";
240241
export { TimeseriesWidgetDefinition } from "./models/TimeseriesWidgetDefinition";
241242
export { TimeseriesWidgetDefinitionType } from "./models/TimeseriesWidgetDefinitionType";
242243
export { TimeseriesWidgetExpressionAlias } from "./models/TimeseriesWidgetExpressionAlias";
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
import { AttributeTypeMap } from "@datadog/datadog-api-client";
2+
3+
import { WidgetLineType } from "./WidgetLineType";
4+
import { WidgetLineWidth } from "./WidgetLineWidth";
5+
import { WidgetStyleOrderBy } from "./WidgetStyleOrderBy";
6+
7+
/**
8+
* Define request widget style for timeseries widgets.
9+
*/
10+
export class TimeseriesRequestStyle {
11+
/**
12+
* If true, the value is displayed as a label relative to the data point.
13+
*/
14+
"hasValueLabels"?: boolean;
15+
/**
16+
* Type of lines displayed.
17+
*/
18+
"lineType"?: WidgetLineType;
19+
/**
20+
* Width of line displayed.
21+
*/
22+
"lineWidth"?: WidgetLineWidth;
23+
/**
24+
* How to order series in timeseries visualizations.
25+
* - `tags`: Order series alphabetically by tag name (default behavior)
26+
* - `values`: Order series by their current metric values (typically descending)
27+
*/
28+
"orderBy"?: WidgetStyleOrderBy;
29+
/**
30+
* Color palette to apply to the widget.
31+
*/
32+
"palette"?: string;
33+
/**
34+
* A container for additional, undeclared properties.
35+
* This is a holder for any undeclared properties as specified with
36+
* the 'additionalProperties' keyword in the OAS document.
37+
*/
38+
"additionalProperties"?: { [key: string]: any };
39+
/**
40+
* @ignore
41+
*/
42+
"_unparsed"?: boolean;
43+
44+
/**
45+
* @ignore
46+
*/
47+
static readonly attributeTypeMap: AttributeTypeMap = {
48+
hasValueLabels: {
49+
baseName: "has_value_labels",
50+
type: "boolean",
51+
},
52+
lineType: {
53+
baseName: "line_type",
54+
type: "WidgetLineType",
55+
},
56+
lineWidth: {
57+
baseName: "line_width",
58+
type: "WidgetLineWidth",
59+
},
60+
orderBy: {
61+
baseName: "order_by",
62+
type: "WidgetStyleOrderBy",
63+
},
64+
palette: {
65+
baseName: "palette",
66+
type: "string",
67+
},
68+
additionalProperties: {
69+
baseName: "additionalProperties",
70+
type: "{ [key: string]: any; }",
71+
},
72+
};
73+
74+
/**
75+
* @ignore
76+
*/
77+
static getAttributeTypeMap(): AttributeTypeMap {
78+
return TimeseriesRequestStyle.attributeTypeMap;
79+
}
80+
81+
public constructor() {}
82+
}

services/dashboards/src/v1/models/TimeseriesWidgetRequest.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ import { FormulaAndFunctionQueryDefinition } from "./FormulaAndFunctionQueryDefi
44
import { FormulaAndFunctionResponseFormat } from "./FormulaAndFunctionResponseFormat";
55
import { LogQueryDefinition } from "./LogQueryDefinition";
66
import { ProcessQueryDefinition } from "./ProcessQueryDefinition";
7+
import { TimeseriesRequestStyle } from "./TimeseriesRequestStyle";
78
import { TimeseriesWidgetExpressionAlias } from "./TimeseriesWidgetExpressionAlias";
89
import { WidgetDisplayType } from "./WidgetDisplayType";
910
import { WidgetFormula } from "./WidgetFormula";
10-
import { WidgetRequestStyle } from "./WidgetRequestStyle";
1111

1212
/**
1313
* Updated timeseries widget.
@@ -78,9 +78,9 @@ export class TimeseriesWidgetRequest {
7878
*/
7979
"securityQuery"?: LogQueryDefinition;
8080
/**
81-
* Define request widget style.
81+
* Define request widget style for timeseries widgets.
8282
*/
83-
"style"?: WidgetRequestStyle;
83+
"style"?: TimeseriesRequestStyle;
8484
/**
8585
* A container for additional, undeclared properties.
8686
* This is a holder for any undeclared properties as specified with
@@ -162,7 +162,7 @@ export class TimeseriesWidgetRequest {
162162
},
163163
style: {
164164
baseName: "style",
165-
type: "WidgetRequestStyle",
165+
type: "TimeseriesRequestStyle",
166166
},
167167
additionalProperties: {
168168
baseName: "additionalProperties",

services/dashboards/src/v1/models/TypingInfo.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ import { TableWidgetTextFormatReplaceAll } from "./TableWidgetTextFormatReplaceA
128128
import { TableWidgetTextFormatReplaceSubstring } from "./TableWidgetTextFormatReplaceSubstring";
129129
import { TableWidgetTextFormatRule } from "./TableWidgetTextFormatRule";
130130
import { TimeseriesBackground } from "./TimeseriesBackground";
131+
import { TimeseriesRequestStyle } from "./TimeseriesRequestStyle";
131132
import { TimeseriesWidgetDefinition } from "./TimeseriesWidgetDefinition";
132133
import { TimeseriesWidgetExpressionAlias } from "./TimeseriesWidgetExpressionAlias";
133134
import { TimeseriesWidgetRequest } from "./TimeseriesWidgetRequest";
@@ -743,6 +744,7 @@ export const TypingInfo: ModelTypingInfo = {
743744
TableWidgetTextFormatReplaceSubstring,
744745
TableWidgetTextFormatRule: TableWidgetTextFormatRule,
745746
TimeseriesBackground: TimeseriesBackground,
747+
TimeseriesRequestStyle: TimeseriesRequestStyle,
746748
TimeseriesWidgetDefinition: TimeseriesWidgetDefinition,
747749
TimeseriesWidgetExpressionAlias: TimeseriesWidgetExpressionAlias,
748750
TimeseriesWidgetRequest: TimeseriesWidgetRequest,

services/notebooks/src/v1/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ export { NumberFormatUnitScaleType } from "./models/NumberFormatUnitScaleType";
111111
export { ProcessQueryDefinition } from "./models/ProcessQueryDefinition";
112112
export { QuerySortOrder } from "./models/QuerySortOrder";
113113
export { TableWidgetCellDisplayMode } from "./models/TableWidgetCellDisplayMode";
114+
export { TimeseriesRequestStyle } from "./models/TimeseriesRequestStyle";
114115
export { TimeseriesWidgetDefinition } from "./models/TimeseriesWidgetDefinition";
115116
export { TimeseriesWidgetDefinitionType } from "./models/TimeseriesWidgetDefinitionType";
116117
export { TimeseriesWidgetExpressionAlias } from "./models/TimeseriesWidgetExpressionAlias";
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
import { AttributeTypeMap } from "@datadog/datadog-api-client";
2+
3+
import { WidgetLineType } from "./WidgetLineType";
4+
import { WidgetLineWidth } from "./WidgetLineWidth";
5+
import { WidgetStyleOrderBy } from "./WidgetStyleOrderBy";
6+
7+
/**
8+
* Define request widget style for timeseries widgets.
9+
*/
10+
export class TimeseriesRequestStyle {
11+
/**
12+
* If true, the value is displayed as a label relative to the data point.
13+
*/
14+
"hasValueLabels"?: boolean;
15+
/**
16+
* Type of lines displayed.
17+
*/
18+
"lineType"?: WidgetLineType;
19+
/**
20+
* Width of line displayed.
21+
*/
22+
"lineWidth"?: WidgetLineWidth;
23+
/**
24+
* How to order series in timeseries visualizations.
25+
* - `tags`: Order series alphabetically by tag name (default behavior)
26+
* - `values`: Order series by their current metric values (typically descending)
27+
*/
28+
"orderBy"?: WidgetStyleOrderBy;
29+
/**
30+
* Color palette to apply to the widget.
31+
*/
32+
"palette"?: string;
33+
/**
34+
* A container for additional, undeclared properties.
35+
* This is a holder for any undeclared properties as specified with
36+
* the 'additionalProperties' keyword in the OAS document.
37+
*/
38+
"additionalProperties"?: { [key: string]: any };
39+
/**
40+
* @ignore
41+
*/
42+
"_unparsed"?: boolean;
43+
44+
/**
45+
* @ignore
46+
*/
47+
static readonly attributeTypeMap: AttributeTypeMap = {
48+
hasValueLabels: {
49+
baseName: "has_value_labels",
50+
type: "boolean",
51+
},
52+
lineType: {
53+
baseName: "line_type",
54+
type: "WidgetLineType",
55+
},
56+
lineWidth: {
57+
baseName: "line_width",
58+
type: "WidgetLineWidth",
59+
},
60+
orderBy: {
61+
baseName: "order_by",
62+
type: "WidgetStyleOrderBy",
63+
},
64+
palette: {
65+
baseName: "palette",
66+
type: "string",
67+
},
68+
additionalProperties: {
69+
baseName: "additionalProperties",
70+
type: "{ [key: string]: any; }",
71+
},
72+
};
73+
74+
/**
75+
* @ignore
76+
*/
77+
static getAttributeTypeMap(): AttributeTypeMap {
78+
return TimeseriesRequestStyle.attributeTypeMap;
79+
}
80+
81+
public constructor() {}
82+
}

0 commit comments

Comments
 (0)