Skip to content

Commit c6e289f

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 7d9ac347 of spec repo
1 parent 062ecff commit c6e289f

File tree

9 files changed

+190
-14
lines changed

9 files changed

+190
-14
lines changed

.apigentools-info

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
"spec_versions": {
55
"v1": {
66
"apigentools_version": "1.6.4",
7-
"regenerated": "2023-06-22 16:27:12.578518",
8-
"spec_repo_commit": "3823e339"
7+
"regenerated": "2023-06-22 19:42:16.458020",
8+
"spec_repo_commit": "7d9ac347"
99
},
1010
"v2": {
1111
"apigentools_version": "1.6.4",
12-
"regenerated": "2023-06-22 16:27:12.592916",
13-
"spec_repo_commit": "3823e339"
12+
"regenerated": "2023-06-22 19:42:16.474406",
13+
"spec_repo_commit": "7d9ac347"
1414
}
1515
}
1616
}

.generator/schemas/v1/openapi.yaml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2735,11 +2735,13 @@ components:
27352735
enum:
27362736
- timeseries
27372737
- scalar
2738+
- event_list
27382739
example: timeseries
27392740
type: string
27402741
x-enum-varnames:
27412742
- TIMESERIES
27422743
- SCALAR
2744+
- EVENT_LIST
27432745
FormulaAndFunctionSLODataSource:
27442746
description: Data source for SLO measures queries.
27452747
enum:
@@ -3059,8 +3061,6 @@ components:
30593061
query: <METRIC_1>{<SCOPE_1>}
30603062
items:
30613063
$ref: '#/components/schemas/GeomapWidgetRequest'
3062-
maxItems: 1
3063-
minItems: 1
30643064
type: array
30653065
style:
30663066
$ref: '#/components/schemas/GeomapWidgetDefinitionStyle'
@@ -3127,6 +3127,16 @@ components:
31273127
GeomapWidgetRequest:
31283128
description: An updated geomap widget.
31293129
properties:
3130+
columns:
3131+
description: Widget columns.
3132+
example:
3133+
- field: timestamp
3134+
width: auto
3135+
- field: content
3136+
width: full
3137+
items:
3138+
$ref: '#/components/schemas/ListStreamColumn'
3139+
type: array
31303140
formulas:
31313141
description: List of formulas that operate on queries.
31323142
items:
@@ -3142,6 +3152,8 @@ components:
31423152
items:
31433153
$ref: '#/components/schemas/FormulaAndFunctionQueryDefinition'
31443154
type: array
3155+
query:
3156+
$ref: '#/components/schemas/ListStreamQuery'
31453157
response_format:
31463158
$ref: '#/components/schemas/FormulaAndFunctionResponseFormat'
31473159
rum_query:
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
"""
2+
Create a geomap widget using an event_list request
3+
"""
4+
5+
from datadog_api_client import ApiClient, Configuration
6+
from datadog_api_client.v1.api.dashboards_api import DashboardsApi
7+
from datadog_api_client.v1.model.dashboard import Dashboard
8+
from datadog_api_client.v1.model.dashboard_layout_type import DashboardLayoutType
9+
from datadog_api_client.v1.model.dashboard_reflow_type import DashboardReflowType
10+
from datadog_api_client.v1.model.formula_and_function_response_format import FormulaAndFunctionResponseFormat
11+
from datadog_api_client.v1.model.geomap_widget_definition import GeomapWidgetDefinition
12+
from datadog_api_client.v1.model.geomap_widget_definition_style import GeomapWidgetDefinitionStyle
13+
from datadog_api_client.v1.model.geomap_widget_definition_type import GeomapWidgetDefinitionType
14+
from datadog_api_client.v1.model.geomap_widget_definition_view import GeomapWidgetDefinitionView
15+
from datadog_api_client.v1.model.geomap_widget_request import GeomapWidgetRequest
16+
from datadog_api_client.v1.model.list_stream_column import ListStreamColumn
17+
from datadog_api_client.v1.model.list_stream_column_width import ListStreamColumnWidth
18+
from datadog_api_client.v1.model.list_stream_query import ListStreamQuery
19+
from datadog_api_client.v1.model.list_stream_source import ListStreamSource
20+
from datadog_api_client.v1.model.widget import Widget
21+
from datadog_api_client.v1.model.widget_layout import WidgetLayout
22+
from datadog_api_client.v1.model.widget_text_align import WidgetTextAlign
23+
24+
body = Dashboard(
25+
title="Example-Dashboard",
26+
description="Example-Dashboard",
27+
widgets=[
28+
Widget(
29+
definition=GeomapWidgetDefinition(
30+
title="",
31+
title_size="16",
32+
title_align=WidgetTextAlign.LEFT,
33+
type=GeomapWidgetDefinitionType.GEOMAP,
34+
requests=[
35+
GeomapWidgetRequest(
36+
response_format=FormulaAndFunctionResponseFormat.EVENT_LIST,
37+
query=ListStreamQuery(
38+
data_source=ListStreamSource.LOGS_STREAM,
39+
query_string="",
40+
indexes=[],
41+
),
42+
columns=[
43+
ListStreamColumn(
44+
field="@network.client.geoip.location.latitude",
45+
width=ListStreamColumnWidth.AUTO,
46+
),
47+
ListStreamColumn(
48+
field="@network.client.geoip.location.longitude",
49+
width=ListStreamColumnWidth.AUTO,
50+
),
51+
ListStreamColumn(
52+
field="@network.client.geoip.country.iso_code",
53+
width=ListStreamColumnWidth.AUTO,
54+
),
55+
ListStreamColumn(
56+
field="@network.client.geoip.subdivision.name",
57+
width=ListStreamColumnWidth.AUTO,
58+
),
59+
ListStreamColumn(
60+
field="classic",
61+
width=ListStreamColumnWidth.AUTO,
62+
),
63+
ListStreamColumn(
64+
field="",
65+
width=ListStreamColumnWidth.AUTO,
66+
),
67+
],
68+
),
69+
],
70+
style=GeomapWidgetDefinitionStyle(
71+
palette="hostmap_blues",
72+
palette_flip=False,
73+
),
74+
view=GeomapWidgetDefinitionView(
75+
focus="WORLD",
76+
),
77+
),
78+
layout=WidgetLayout(
79+
x=0,
80+
y=0,
81+
width=12,
82+
height=6,
83+
),
84+
),
85+
],
86+
template_variables=[],
87+
layout_type=DashboardLayoutType.ORDERED,
88+
notify_list=[],
89+
reflow_type=DashboardReflowType.FIXED,
90+
tags=[],
91+
)
92+
93+
configuration = Configuration()
94+
with ApiClient(configuration) as api_client:
95+
api_instance = DashboardsApi(api_client)
96+
response = api_instance.create_dashboard(body=body)
97+
98+
print(response)

src/datadog_api_client/v1/model/formula_and_function_response_format.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,18 @@ class FormulaAndFunctionResponseFormat(ModelSimple):
1616
"""
1717
Timeseries or Scalar response.
1818
19-
:param value: Must be one of ["timeseries", "scalar"].
19+
:param value: Must be one of ["timeseries", "scalar", "event_list"].
2020
:type value: str
2121
"""
2222

2323
allowed_values = {
2424
"timeseries",
2525
"scalar",
26+
"event_list",
2627
}
2728
TIMESERIES: ClassVar["FormulaAndFunctionResponseFormat"]
2829
SCALAR: ClassVar["FormulaAndFunctionResponseFormat"]
30+
EVENT_LIST: ClassVar["FormulaAndFunctionResponseFormat"]
2931

3032
@cached_property
3133
def openapi_types(_):
@@ -36,3 +38,4 @@ def openapi_types(_):
3638

3739
FormulaAndFunctionResponseFormat.TIMESERIES = FormulaAndFunctionResponseFormat("timeseries")
3840
FormulaAndFunctionResponseFormat.SCALAR = FormulaAndFunctionResponseFormat("scalar")
41+
FormulaAndFunctionResponseFormat.EVENT_LIST = FormulaAndFunctionResponseFormat("event_list")

src/datadog_api_client/v1/model/geomap_widget_definition.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,6 @@
2424

2525

2626
class GeomapWidgetDefinition(ModelNormal):
27-
validations = {
28-
"requests": {
29-
"max_items": 1,
30-
"min_items": 1,
31-
},
32-
}
33-
3427
@cached_property
3528
def openapi_types(_):
3629
from datadog_api_client.v1.model.widget_custom_link import WidgetCustomLink

src/datadog_api_client/v1/model/geomap_widget_request.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,11 @@
1414

1515

1616
if TYPE_CHECKING:
17+
from datadog_api_client.v1.model.list_stream_column import ListStreamColumn
1718
from datadog_api_client.v1.model.widget_formula import WidgetFormula
1819
from datadog_api_client.v1.model.log_query_definition import LogQueryDefinition
1920
from datadog_api_client.v1.model.formula_and_function_query_definition import FormulaAndFunctionQueryDefinition
21+
from datadog_api_client.v1.model.list_stream_query import ListStreamQuery
2022
from datadog_api_client.v1.model.formula_and_function_response_format import FormulaAndFunctionResponseFormat
2123
from datadog_api_client.v1.model.formula_and_function_metric_query_definition import (
2224
FormulaAndFunctionMetricQueryDefinition,
@@ -41,33 +43,40 @@
4143
class GeomapWidgetRequest(ModelNormal):
4244
@cached_property
4345
def openapi_types(_):
46+
from datadog_api_client.v1.model.list_stream_column import ListStreamColumn
4447
from datadog_api_client.v1.model.widget_formula import WidgetFormula
4548
from datadog_api_client.v1.model.log_query_definition import LogQueryDefinition
4649
from datadog_api_client.v1.model.formula_and_function_query_definition import FormulaAndFunctionQueryDefinition
50+
from datadog_api_client.v1.model.list_stream_query import ListStreamQuery
4751
from datadog_api_client.v1.model.formula_and_function_response_format import FormulaAndFunctionResponseFormat
4852

4953
return {
54+
"columns": ([ListStreamColumn],),
5055
"formulas": ([WidgetFormula],),
5156
"log_query": (LogQueryDefinition,),
5257
"q": (str,),
5358
"queries": ([FormulaAndFunctionQueryDefinition],),
59+
"query": (ListStreamQuery,),
5460
"response_format": (FormulaAndFunctionResponseFormat,),
5561
"rum_query": (LogQueryDefinition,),
5662
"security_query": (LogQueryDefinition,),
5763
}
5864

5965
attribute_map = {
66+
"columns": "columns",
6067
"formulas": "formulas",
6168
"log_query": "log_query",
6269
"q": "q",
6370
"queries": "queries",
71+
"query": "query",
6472
"response_format": "response_format",
6573
"rum_query": "rum_query",
6674
"security_query": "security_query",
6775
}
6876

6977
def __init__(
7078
self_,
79+
columns: Union[List[ListStreamColumn], UnsetType] = unset,
7180
formulas: Union[List[WidgetFormula], UnsetType] = unset,
7281
log_query: Union[LogQueryDefinition, UnsetType] = unset,
7382
q: Union[str, UnsetType] = unset,
@@ -85,6 +94,7 @@ def __init__(
8594
],
8695
UnsetType,
8796
] = unset,
97+
query: Union[ListStreamQuery, UnsetType] = unset,
8898
response_format: Union[FormulaAndFunctionResponseFormat, UnsetType] = unset,
8999
rum_query: Union[LogQueryDefinition, UnsetType] = unset,
90100
security_query: Union[LogQueryDefinition, UnsetType] = unset,
@@ -93,6 +103,9 @@ def __init__(
93103
"""
94104
An updated geomap widget.
95105
106+
:param columns: Widget columns.
107+
:type columns: [ListStreamColumn], optional
108+
96109
:param formulas: List of formulas that operate on queries.
97110
:type formulas: [WidgetFormula], optional
98111
@@ -105,6 +118,9 @@ def __init__(
105118
:param queries: List of queries that can be returned directly or used in formulas.
106119
:type queries: [FormulaAndFunctionQueryDefinition], optional
107120
121+
:param query: Updated list stream widget.
122+
:type query: ListStreamQuery, optional
123+
108124
:param response_format: Timeseries or Scalar response.
109125
:type response_format: FormulaAndFunctionResponseFormat, optional
110126
@@ -114,6 +130,8 @@ def __init__(
114130
:param security_query: The log query.
115131
:type security_query: LogQueryDefinition, optional
116132
"""
133+
if columns is not unset:
134+
kwargs["columns"] = columns
117135
if formulas is not unset:
118136
kwargs["formulas"] = formulas
119137
if log_query is not unset:
@@ -122,6 +140,8 @@ def __init__(
122140
kwargs["q"] = q
123141
if queries is not unset:
124142
kwargs["queries"] = queries
143+
if query is not unset:
144+
kwargs["query"] = query
125145
if response_format is not unset:
126146
kwargs["response_format"] = response_format
127147
if rum_query is not unset:
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2023-06-21T19:29:03.584Z
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
interactions:
2+
- request:
3+
body: '{"description":"Test-Create_a_geomap_widget_using_an_event_list_request-1687375743","layout_type":"ordered","notify_list":[],"reflow_type":"fixed","tags":[],"template_variables":[],"title":"Test-Create_a_geomap_widget_using_an_event_list_request-1687375743","widgets":[{"definition":{"requests":[{"columns":[{"field":"@network.client.geoip.location.latitude","width":"auto"},{"field":"@network.client.geoip.location.longitude","width":"auto"},{"field":"@network.client.geoip.country.iso_code","width":"auto"},{"field":"@network.client.geoip.subdivision.name","width":"auto"},{"field":"classic","width":"auto"},{"field":"","width":"auto"}],"query":{"data_source":"logs_stream","indexes":[],"query_string":""},"response_format":"event_list"}],"style":{"palette":"hostmap_blues","palette_flip":false},"title":"","title_align":"left","title_size":"16","type":"geomap","view":{"focus":"WORLD"}},"layout":{"height":6,"width":12,"x":0,"y":0}}]}'
4+
headers:
5+
accept:
6+
- application/json
7+
content-type:
8+
- application/json
9+
method: POST
10+
uri: https://api.datadoghq.com/api/v1/dashboard
11+
response:
12+
body:
13+
string: '{"id":"cn7-qfm-s9w","title":"Test-Create_a_geomap_widget_using_an_event_list_request-1687375743","description":"Test-Create_a_geomap_widget_using_an_event_list_request-1687375743","author_handle":"[email protected]","author_name":null,"layout_type":"ordered","url":"/dashboard/cn7-qfm-s9w/test-createageomapwidgetusinganeventlistrequest-1687375743","is_read_only":false,"template_variables":[],"widgets":[{"definition":{"requests":[{"columns":[{"field":"@network.client.geoip.location.latitude","width":"auto"},{"field":"@network.client.geoip.location.longitude","width":"auto"},{"field":"@network.client.geoip.country.iso_code","width":"auto"},{"field":"@network.client.geoip.subdivision.name","width":"auto"},{"field":"classic","width":"auto"},{"field":"","width":"auto"}],"query":{"data_source":"logs_stream","indexes":[],"query_string":""},"response_format":"event_list"}],"style":{"palette":"hostmap_blues","palette_flip":false},"title":"","title_align":"left","title_size":"16","type":"geomap","view":{"focus":"WORLD"}},"layout":{"height":6,"width":12,"x":0,"y":0},"id":8506811379916619}],"notify_list":[],"created_at":"2023-06-21T19:29:03.801081+00:00","modified_at":"2023-06-21T19:29:03.801081+00:00","reflow_type":"fixed","tags":[],"restricted_roles":[]}
14+
15+
'
16+
headers:
17+
content-type:
18+
- application/json
19+
status:
20+
code: 200
21+
message: OK
22+
- request:
23+
body: null
24+
headers:
25+
accept:
26+
- application/json
27+
method: DELETE
28+
uri: https://api.datadoghq.com/api/v1/dashboard/cn7-qfm-s9w
29+
response:
30+
body:
31+
string: '{"deleted_dashboard_id":"cn7-qfm-s9w"}
32+
33+
'
34+
headers:
35+
content-type:
36+
- application/json
37+
status:
38+
code: 200
39+
message: OK
40+
version: 1

tests/v1/features/dashboards.feature

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,15 @@ Feature: Dashboards
5454
And the response "widgets[0].definition.requests[0].query.data_source" is equal to "metrics"
5555
And the response "widgets[0].definition.requests[0].query.name" is equal to "query1"
5656

57+
@team:DataDog/dashboards-backend
58+
Scenario: Create a geomap widget using an event_list request
59+
Given new "CreateDashboard" request
60+
And body with value {"title": "{{ unique }}","description": "{{ unique }}","widgets":[{"definition":{"title":"","title_size":"16","title_align":"left","type":"geomap","requests":[{"response_format":"event_list","query":{"data_source":"logs_stream","query_string":"","indexes":[]},"columns":[{"field":"@network.client.geoip.location.latitude","width":"auto"},{"field":"@network.client.geoip.location.longitude","width":"auto"},{"field":"@network.client.geoip.country.iso_code","width":"auto"},{"field":"@network.client.geoip.subdivision.name","width":"auto"},{"field":"classic","width":"auto"},{"field":"","width":"auto"}]}],"style":{"palette":"hostmap_blues","palette_flip":false},"view":{"focus":"WORLD"}},"layout":{"x":0,"y":0,"width":12,"height":6}}],"template_variables":[],"layout_type":"ordered","notify_list":[],"reflow_type":"fixed","tags":[]}
61+
When the request is sent
62+
Then the response status is 200 OK
63+
And the response "widgets[0].definition.requests[0].response_format" is equal to "event_list"
64+
And the response "widgets[0].definition.requests[0].query.data_source" is equal to "logs_stream"
65+
5766
@generated @skip @team:DataDog/dashboards-backend
5867
Scenario: Create a new dashboard returns "Bad Request" response
5968
Given new "CreateDashboard" request

0 commit comments

Comments
 (0)