Skip to content

Commit fc6eb08

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add template_variables to Notebooks v1 API spec (#1811)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent 65f2402 commit fc6eb08

13 files changed

Lines changed: 894 additions & 4 deletions

.generator/schemas/v1/openapi.yaml

Lines changed: 146 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11287,6 +11287,12 @@ components:
1128711287
type: string
1128811288
status:
1128911289
$ref: "#/components/schemas/NotebookStatus"
11290+
template_variables:
11291+
description: List of template variables for this notebook.
11292+
items:
11293+
$ref: "#/components/schemas/NotebookTemplateVariable"
11294+
nullable: true
11295+
type: array
1129011296
time:
1129111297
$ref: "#/components/schemas/NotebookGlobalTime"
1129211298
required:
@@ -11506,6 +11512,12 @@ components:
1150611512
type: string
1150711513
status:
1150811514
$ref: "#/components/schemas/NotebookStatus"
11515+
template_variables:
11516+
description: List of template variables for this notebook.
11517+
items:
11518+
$ref: "#/components/schemas/NotebookTemplateVariable"
11519+
nullable: true
11520+
type: array
1150911521
time:
1151011522
$ref: "#/components/schemas/NotebookGlobalTime"
1151111523
required:
@@ -11548,6 +11560,128 @@ components:
1154811560
type: string
1154911561
x-enum-varnames:
1155011562
- PUBLISHED
11563+
NotebookTemplateVariable:
11564+
additionalProperties: false
11565+
description: Notebook template variable.
11566+
properties:
11567+
available_values:
11568+
description: The list of values that the template variable drop-down is limited to.
11569+
example: ["my-host", "host1", "host2"]
11570+
items:
11571+
description: Template variable value.
11572+
minLength: 1
11573+
type: string
11574+
nullable: true
11575+
type: array
11576+
uniqueItems: true
11577+
available_values_query:
11578+
$ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQuery"
11579+
data_source_mappings:
11580+
additionalProperties:
11581+
description: The value for the given data source.
11582+
type: string
11583+
description: Mapping of data source names to template variable values.
11584+
type: object
11585+
default:
11586+
deprecated: true
11587+
description: |-
11588+
(deprecated) The default value for the template variable on notebook load.
11589+
Cannot be used in conjunction with `defaults`.
11590+
example: my-host
11591+
nullable: true
11592+
type: string
11593+
defaults:
11594+
description: One or many default values for the template variable. Cannot be used in conjunction with `default`.
11595+
example: ["my-host-1", "my-host-2"]
11596+
items:
11597+
description: A default value for the template variable.
11598+
minLength: 1
11599+
type: string
11600+
type: array
11601+
uniqueItems: true
11602+
name:
11603+
description: The name of the variable.
11604+
example: host1
11605+
type: string
11606+
placement:
11607+
description: The placement of the template variable in the notebook.
11608+
example: global
11609+
type: string
11610+
prefix:
11611+
description: The tag prefix associated with the variable. Only tags with this prefix appear in the variable drop-down.
11612+
example: host
11613+
nullable: true
11614+
type: string
11615+
type:
11616+
description: The type of the template variable.
11617+
example: tag
11618+
type: string
11619+
required:
11620+
- name
11621+
type: object
11622+
NotebookTemplateVariableAvailableValuesQuery:
11623+
description: Query used to dynamically populate the list of available values for the template variable.
11624+
oneOf:
11625+
- $ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQueryLogRumSpans"
11626+
- $ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQueryMetrics"
11627+
NotebookTemplateVariableAvailableValuesQueryGroupBy:
11628+
additionalProperties: false
11629+
description: A group-by facet for an available values query.
11630+
properties:
11631+
facet:
11632+
description: The facet name to group by.
11633+
example: host
11634+
type: string
11635+
required:
11636+
- facet
11637+
type: object
11638+
NotebookTemplateVariableAvailableValuesQueryLogRumSpans:
11639+
additionalProperties: false
11640+
description: Available values query for logs, RUM, or spans data sources.
11641+
properties:
11642+
data_source:
11643+
description: The data source for the query. Must be one of `logs`, `rum`, or `spans`.
11644+
example: logs
11645+
type: string
11646+
group_by:
11647+
description: Group-by fields for the query.
11648+
items:
11649+
$ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQueryGroupBy"
11650+
type: array
11651+
search:
11652+
$ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQuerySearch"
11653+
required:
11654+
- data_source
11655+
- search
11656+
- group_by
11657+
type: object
11658+
NotebookTemplateVariableAvailableValuesQueryMetrics:
11659+
additionalProperties: false
11660+
description: Available values query for the metrics data source.
11661+
properties:
11662+
data_source:
11663+
description: The data source for the query. Must be `metrics`.
11664+
example: metrics
11665+
type: string
11666+
query:
11667+
description: The metrics query string.
11668+
example: "avg:system.cpu.user{*} by {host}"
11669+
type: string
11670+
required:
11671+
- data_source
11672+
- query
11673+
type: object
11674+
NotebookTemplateVariableAvailableValuesQuerySearch:
11675+
additionalProperties: false
11676+
description: Search parameters for an available values query.
11677+
properties:
11678+
query:
11679+
description: The search query string.
11680+
example: "service:web"
11681+
type: string
11682+
required:
11683+
- query
11684+
type: object
1155111685
NotebookTimeseriesCellAttributes:
1155211686
description: The attributes of a notebook `timeseries` cell.
1155311687
properties:
@@ -11613,6 +11747,12 @@ components:
1161311747
type: string
1161411748
status:
1161511749
$ref: "#/components/schemas/NotebookStatus"
11750+
template_variables:
11751+
description: List of template variables for this notebook.
11752+
items:
11753+
$ref: "#/components/schemas/NotebookTemplateVariable"
11754+
nullable: true
11755+
type: array
1161611756
time:
1161711757
$ref: "#/components/schemas/NotebookGlobalTime"
1161811758
required:
@@ -11689,6 +11829,12 @@ components:
1168911829
type: string
1169011830
status:
1169111831
$ref: "#/components/schemas/NotebookStatus"
11832+
template_variables:
11833+
description: List of template variables for this notebook.
11834+
items:
11835+
$ref: "#/components/schemas/NotebookTemplateVariable"
11836+
nullable: true
11837+
type: array
1169211838
time:
1169311839
$ref: "#/components/schemas/NotebookGlobalTime"
1169411840
required:

src/datadogV1/model/mod.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1454,6 +1454,18 @@ pub mod model_notebook_metadata_type;
14541454
pub use self::model_notebook_metadata_type::NotebookMetadataType;
14551455
pub mod model_notebook_status;
14561456
pub use self::model_notebook_status::NotebookStatus;
1457+
pub mod model_notebook_template_variable;
1458+
pub use self::model_notebook_template_variable::NotebookTemplateVariable;
1459+
pub mod model_notebook_template_variable_available_values_query_log_rum_spans;
1460+
pub use self::model_notebook_template_variable_available_values_query_log_rum_spans::NotebookTemplateVariableAvailableValuesQueryLogRumSpans;
1461+
pub mod model_notebook_template_variable_available_values_query_group_by;
1462+
pub use self::model_notebook_template_variable_available_values_query_group_by::NotebookTemplateVariableAvailableValuesQueryGroupBy;
1463+
pub mod model_notebook_template_variable_available_values_query_search;
1464+
pub use self::model_notebook_template_variable_available_values_query_search::NotebookTemplateVariableAvailableValuesQuerySearch;
1465+
pub mod model_notebook_template_variable_available_values_query_metrics;
1466+
pub use self::model_notebook_template_variable_available_values_query_metrics::NotebookTemplateVariableAvailableValuesQueryMetrics;
1467+
pub mod model_notebook_template_variable_available_values_query;
1468+
pub use self::model_notebook_template_variable_available_values_query::NotebookTemplateVariableAvailableValuesQuery;
14571469
pub mod model_notebook_global_time;
14581470
pub use self::model_notebook_global_time::NotebookGlobalTime;
14591471
pub mod model_notebook_resource_type;

src/datadogV1/model/model_notebook_create_data_attributes.rs

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,13 @@ pub struct NotebookCreateDataAttributes {
2323
/// Publication status of the notebook. For now, always "published".
2424
#[serde(rename = "status")]
2525
pub status: Option<crate::datadogV1::model::NotebookStatus>,
26+
/// List of template variables for this notebook.
27+
#[serde(
28+
rename = "template_variables",
29+
default,
30+
with = "::serde_with::rust::double_option"
31+
)]
32+
pub template_variables: Option<Option<Vec<crate::datadogV1::model::NotebookTemplateVariable>>>,
2633
/// Notebook global timeframe.
2734
#[serde(rename = "time")]
2835
pub time: crate::datadogV1::model::NotebookGlobalTime,
@@ -44,6 +51,7 @@ impl NotebookCreateDataAttributes {
4451
metadata: None,
4552
name,
4653
status: None,
54+
template_variables: None,
4755
time,
4856
additional_properties: std::collections::BTreeMap::new(),
4957
_unparsed: false,
@@ -60,6 +68,14 @@ impl NotebookCreateDataAttributes {
6068
self
6169
}
6270

71+
pub fn template_variables(
72+
mut self,
73+
value: Option<Vec<crate::datadogV1::model::NotebookTemplateVariable>>,
74+
) -> Self {
75+
self.template_variables = Some(value);
76+
self
77+
}
78+
6379
pub fn additional_properties(
6480
mut self,
6581
value: std::collections::BTreeMap<String, serde_json::Value>,
@@ -91,6 +107,9 @@ impl<'de> Deserialize<'de> for NotebookCreateDataAttributes {
91107
let mut metadata: Option<crate::datadogV1::model::NotebookMetadata> = None;
92108
let mut name: Option<String> = None;
93109
let mut status: Option<crate::datadogV1::model::NotebookStatus> = None;
110+
let mut template_variables: Option<
111+
Option<Vec<crate::datadogV1::model::NotebookTemplateVariable>>,
112+
> = None;
94113
let mut time: Option<crate::datadogV1::model::NotebookGlobalTime> = None;
95114
let mut additional_properties: std::collections::BTreeMap<
96115
String,
@@ -128,6 +147,10 @@ impl<'de> Deserialize<'de> for NotebookCreateDataAttributes {
128147
}
129148
}
130149
}
150+
"template_variables" => {
151+
template_variables =
152+
Some(serde_json::from_value(v).map_err(M::Error::custom)?);
153+
}
131154
"time" => {
132155
time = Some(serde_json::from_value(v).map_err(M::Error::custom)?);
133156
if let Some(ref _time) = time {
@@ -157,6 +180,7 @@ impl<'de> Deserialize<'de> for NotebookCreateDataAttributes {
157180
metadata,
158181
name,
159182
status,
183+
template_variables,
160184
time,
161185
additional_properties,
162186
_unparsed,

src/datadogV1/model/model_notebook_response_data_attributes.rs

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,13 @@ pub struct NotebookResponseDataAttributes {
3232
/// Publication status of the notebook. For now, always "published".
3333
#[serde(rename = "status")]
3434
pub status: Option<crate::datadogV1::model::NotebookStatus>,
35+
/// List of template variables for this notebook.
36+
#[serde(
37+
rename = "template_variables",
38+
default,
39+
with = "::serde_with::rust::double_option"
40+
)]
41+
pub template_variables: Option<Option<Vec<crate::datadogV1::model::NotebookTemplateVariable>>>,
3542
/// Notebook global timeframe.
3643
#[serde(rename = "time")]
3744
pub time: crate::datadogV1::model::NotebookGlobalTime,
@@ -56,6 +63,7 @@ impl NotebookResponseDataAttributes {
5663
modified: None,
5764
name,
5865
status: None,
66+
template_variables: None,
5967
time,
6068
additional_properties: std::collections::BTreeMap::new(),
6169
_unparsed: false,
@@ -87,6 +95,14 @@ impl NotebookResponseDataAttributes {
8795
self
8896
}
8997

98+
pub fn template_variables(
99+
mut self,
100+
value: Option<Vec<crate::datadogV1::model::NotebookTemplateVariable>>,
101+
) -> Self {
102+
self.template_variables = Some(value);
103+
self
104+
}
105+
90106
pub fn additional_properties(
91107
mut self,
92108
value: std::collections::BTreeMap<String, serde_json::Value>,
@@ -120,6 +136,9 @@ impl<'de> Deserialize<'de> for NotebookResponseDataAttributes {
120136
let mut modified: Option<chrono::DateTime<chrono::Utc>> = None;
121137
let mut name: Option<String> = None;
122138
let mut status: Option<crate::datadogV1::model::NotebookStatus> = None;
139+
let mut template_variables: Option<
140+
Option<Vec<crate::datadogV1::model::NotebookTemplateVariable>>,
141+
> = None;
123142
let mut time: Option<crate::datadogV1::model::NotebookGlobalTime> = None;
124143
let mut additional_properties: std::collections::BTreeMap<
125144
String,
@@ -175,6 +194,10 @@ impl<'de> Deserialize<'de> for NotebookResponseDataAttributes {
175194
}
176195
}
177196
}
197+
"template_variables" => {
198+
template_variables =
199+
Some(serde_json::from_value(v).map_err(M::Error::custom)?);
200+
}
178201
"time" => {
179202
time = Some(serde_json::from_value(v).map_err(M::Error::custom)?);
180203
if let Some(ref _time) = time {
@@ -207,6 +230,7 @@ impl<'de> Deserialize<'de> for NotebookResponseDataAttributes {
207230
modified,
208231
name,
209232
status,
233+
template_variables,
210234
time,
211235
additional_properties,
212236
_unparsed,

0 commit comments

Comments
 (0)