Skip to content

Commit 4ad7f9c

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 463c2da of spec repo
1 parent 2135f5e commit 4ad7f9c

9 files changed

Lines changed: 268 additions & 3 deletions

File tree

.generated-info

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
2-
"spec_repo_commit": "8ca2883",
3-
"generated": "2025-07-22 07:15:04.416"
2+
"spec_repo_commit": "463c2da",
3+
"generated": "2025-07-22 13:55:54.632"
44
}

.generator/schemas/v2/openapi.yaml

Lines changed: 61 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12537,6 +12537,14 @@ components:
1253712537
required:
1253812538
- data
1253912539
type: object
12540+
DatasetEditRequest:
12541+
description: Edit request for a dataset.
12542+
properties:
12543+
data:
12544+
$ref: '#/components/schemas/Dataset'
12545+
required:
12546+
- data
12547+
type: object
1254012548
DatasetResponseMulti:
1254112549
description: Response containing a list of datasets.
1254212550
properties:
@@ -48166,7 +48174,14 @@ paths:
4816648174
permissions:
4816748175
- user_access_read
4816848176
post:
48169-
description: Create a dataset with the configurations in the request.
48177+
description: "Create a dataset with the configurations in the request.\n\n###
48178+
Datasets Constraints\n\n- **Tag Limit per Dataset**:\n - Each Restricted
48179+
Dataset supports a maximum of 10 key:value pairs.\n\n- **Tag Key Rules per
48180+
Telemetry Type**:\n - Only one tag key or attribute may be used to define
48181+
access within a single telemetry type.\n - The same or different tag key
48182+
may be used across different telemetry types.\n\n- **Tag Value Uniqueness**:\n
48183+
\ - Tag values must be unique within a single dataset.\n - A tag value used
48184+
in one dataset cannot be reused in another dataset of the same telemetry type."
4817048185
operationId: CreateDataset
4817148186
requestBody:
4817248187
content:
@@ -48271,6 +48286,51 @@ paths:
4827148286
x-permission:
4827248287
operator: OPEN
4827348288
permissions: []
48289+
put:
48290+
description: "Edits the dataset associated with the ID.\n\n### Datasets Constraints\n\n-
48291+
**Tag Limit per Dataset**:\n - Each Restricted Dataset supports a maximum
48292+
of 10 key:value pairs.\n\n- **Tag Key Rules per Telemetry Type**:\n - Only
48293+
one tag key or attribute may be used to define access within a single telemetry
48294+
type.\n - The same or different tag key may be used across different telemetry
48295+
types.\n\n- **Tag Value Uniqueness**:\n - Tag values must be unique within
48296+
a single dataset.\n - A tag value used in one dataset cannot be reused in
48297+
another dataset of the same telemetry type."
48298+
operationId: EditDataset
48299+
parameters:
48300+
- $ref: '#/components/parameters/DatasetID'
48301+
requestBody:
48302+
content:
48303+
application/json:
48304+
schema:
48305+
$ref: '#/components/schemas/DatasetEditRequest'
48306+
description: Dataset payload
48307+
required: true
48308+
responses:
48309+
'200':
48310+
content:
48311+
application/json:
48312+
schema:
48313+
$ref: '#/components/schemas/DatasetResponseSingle'
48314+
description: OK
48315+
'400':
48316+
$ref: '#/components/responses/BadRequestResponse'
48317+
'403':
48318+
$ref: '#/components/responses/NotAuthorizedResponse'
48319+
'404':
48320+
$ref: '#/components/responses/NotFoundResponse'
48321+
'429':
48322+
$ref: '#/components/responses/TooManyRequestsResponse'
48323+
security:
48324+
- apiKeyAuth: []
48325+
appKeyAuth: []
48326+
- AuthZ: []
48327+
summary: Edits a dataset
48328+
tags:
48329+
- Datasets
48330+
x-codegen-request-body-name: body
48331+
x-permission:
48332+
operator: OPEN
48333+
permissions: []
4827448334
/api/v2/deletion/data/{product}:
4827548335
post:
4827648336
description: Creates a data deletion request by providing a query and a timeframe

docs/datadog_api_client.v2.model.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4827,6 +4827,13 @@ datadog\_api\_client.v2.model.dataset\_create\_request module
48274827
:members:
48284828
:show-inheritance:
48294829

4830+
datadog\_api\_client.v2.model.dataset\_edit\_request module
4831+
-----------------------------------------------------------
4832+
4833+
.. automodule:: datadog_api_client.v2.model.dataset_edit_request
4834+
:members:
4835+
:show-inheritance:
4836+
48304837
datadog\_api\_client.v2.model.dataset\_response\_multi module
48314838
-------------------------------------------------------------
48324839

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
"""
2+
Edits a dataset returns "OK" response
3+
"""
4+
5+
from datadog_api_client import ApiClient, Configuration
6+
from datadog_api_client.v2.api.datasets_api import DatasetsApi
7+
from datadog_api_client.v2.model.dataset import Dataset
8+
from datadog_api_client.v2.model.dataset_attributes import DatasetAttributes
9+
from datadog_api_client.v2.model.dataset_edit_request import DatasetEditRequest
10+
from datadog_api_client.v2.model.filters_per_product import FiltersPerProduct
11+
12+
body = DatasetEditRequest(
13+
data=Dataset(
14+
attributes=DatasetAttributes(
15+
created_at=None,
16+
name="Security Audit Dataset",
17+
principals=[
18+
"role:86245fce-0a4e-11f0-92bd-da7ad0900002",
19+
],
20+
product_filters=[
21+
FiltersPerProduct(
22+
filters=[
23+
"@application.id:ABCD",
24+
],
25+
product="logs",
26+
),
27+
],
28+
),
29+
id="123e4567-e89b-12d3-a456-426614174000",
30+
type="dataset",
31+
),
32+
)
33+
34+
configuration = Configuration()
35+
with ApiClient(configuration) as api_client:
36+
api_instance = DatasetsApi(api_client)
37+
response = api_instance.edit_dataset(dataset_id="dataset_id", body=body)
38+
39+
print(response)

src/datadog_api_client/v2/api/datasets_api.py

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from datadog_api_client.v2.model.dataset_response_multi import DatasetResponseMulti
1111
from datadog_api_client.v2.model.dataset_response_single import DatasetResponseSingle
1212
from datadog_api_client.v2.model.dataset_create_request import DatasetCreateRequest
13+
from datadog_api_client.v2.model.dataset_edit_request import DatasetEditRequest
1314

1415

1516
class DatasetsApi:
@@ -67,6 +68,32 @@ def __init__(self, api_client=None):
6768
api_client=api_client,
6869
)
6970

71+
self._edit_dataset_endpoint = _Endpoint(
72+
settings={
73+
"response_type": (DatasetResponseSingle,),
74+
"auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"],
75+
"endpoint_path": "/api/v2/datasets/{dataset_id}",
76+
"operation_id": "edit_dataset",
77+
"http_method": "PUT",
78+
"version": "v2",
79+
},
80+
params_map={
81+
"dataset_id": {
82+
"required": True,
83+
"openapi_types": (str,),
84+
"attribute": "dataset_id",
85+
"location": "path",
86+
},
87+
"body": {
88+
"required": True,
89+
"openapi_types": (DatasetEditRequest,),
90+
"location": "body",
91+
},
92+
},
93+
headers_map={"accept": ["application/json"], "content_type": ["application/json"]},
94+
api_client=api_client,
95+
)
96+
7097
self._get_all_datasets_endpoint = _Endpoint(
7198
settings={
7299
"response_type": (DatasetResponseMulti,),
@@ -114,6 +141,25 @@ def create_dataset(
114141
115142
Create a dataset with the configurations in the request.
116143
144+
**Datasets Constraints**
145+
146+
*
147+
**Tag Limit per Dataset** :
148+
149+
* Each Restricted Dataset supports a maximum of 10 key:value pairs.
150+
151+
*
152+
**Tag Key Rules per Telemetry Type** :
153+
154+
* Only one tag key or attribute may be used to define access within a single telemetry type.
155+
* The same or different tag key may be used across different telemetry types.
156+
157+
*
158+
**Tag Value Uniqueness** :
159+
160+
* Tag values must be unique within a single dataset.
161+
* A tag value used in one dataset cannot be reused in another dataset of the same telemetry type.
162+
117163
:param body: Dataset payload
118164
:type body: DatasetCreateRequest
119165
:rtype: DatasetResponseSingle
@@ -140,6 +186,47 @@ def delete_dataset(
140186

141187
return self._delete_dataset_endpoint.call_with_http_info(**kwargs)
142188

189+
def edit_dataset(
190+
self,
191+
dataset_id: str,
192+
body: DatasetEditRequest,
193+
) -> DatasetResponseSingle:
194+
"""Edits a dataset.
195+
196+
Edits the dataset associated with the ID.
197+
198+
**Datasets Constraints**
199+
200+
*
201+
**Tag Limit per Dataset** :
202+
203+
* Each Restricted Dataset supports a maximum of 10 key:value pairs.
204+
205+
*
206+
**Tag Key Rules per Telemetry Type** :
207+
208+
* Only one tag key or attribute may be used to define access within a single telemetry type.
209+
* The same or different tag key may be used across different telemetry types.
210+
211+
*
212+
**Tag Value Uniqueness** :
213+
214+
* Tag values must be unique within a single dataset.
215+
* A tag value used in one dataset cannot be reused in another dataset of the same telemetry type.
216+
217+
:param dataset_id: The ID of a defined dataset.
218+
:type dataset_id: str
219+
:param body: Dataset payload
220+
:type body: DatasetEditRequest
221+
:rtype: DatasetResponseSingle
222+
"""
223+
kwargs: Dict[str, Any] = {}
224+
kwargs["dataset_id"] = dataset_id
225+
226+
kwargs["body"] = body
227+
228+
return self._edit_dataset_endpoint.call_with_http_info(**kwargs)
229+
143230
def get_all_datasets(
144231
self,
145232
) -> DatasetResponseMulti:
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
2+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
3+
# Copyright 2019-Present Datadog, Inc.
4+
from __future__ import annotations
5+
6+
from typing import TYPE_CHECKING
7+
8+
from datadog_api_client.model_utils import (
9+
ModelNormal,
10+
cached_property,
11+
)
12+
13+
14+
if TYPE_CHECKING:
15+
from datadog_api_client.v2.model.dataset import Dataset
16+
17+
18+
class DatasetEditRequest(ModelNormal):
19+
@cached_property
20+
def openapi_types(_):
21+
from datadog_api_client.v2.model.dataset import Dataset
22+
23+
return {
24+
"data": (Dataset,),
25+
}
26+
27+
attribute_map = {
28+
"data": "data",
29+
}
30+
31+
def __init__(self_, data: Dataset, **kwargs):
32+
"""
33+
Edit request for a dataset.
34+
35+
:param data: Dataset object.
36+
:type data: Dataset
37+
"""
38+
super().__init__(kwargs)
39+
40+
self_.data = data

src/datadog_api_client/v2/models/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -977,6 +977,7 @@
977977
from datadog_api_client.v2.model.dataset import Dataset
978978
from datadog_api_client.v2.model.dataset_attributes import DatasetAttributes
979979
from datadog_api_client.v2.model.dataset_create_request import DatasetCreateRequest
980+
from datadog_api_client.v2.model.dataset_edit_request import DatasetEditRequest
980981
from datadog_api_client.v2.model.dataset_response_multi import DatasetResponseMulti
981982
from datadog_api_client.v2.model.dataset_response_single import DatasetResponseSingle
982983
from datadog_api_client.v2.model.delete_app_response import DeleteAppResponse
@@ -4338,6 +4339,7 @@
43384339
"Dataset",
43394340
"DatasetAttributes",
43404341
"DatasetCreateRequest",
4342+
"DatasetEditRequest",
43414343
"DatasetResponseMulti",
43424344
"DatasetResponseSingle",
43434345
"DeleteAppResponse",

tests/v2/features/datasets.feature

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,30 @@ Feature: Datasets
5353
When the request is sent
5454
Then the response status is 404 Not Found
5555

56+
@generated @skip @team:DataDog/aaa-granular-access
57+
Scenario: Edits a dataset returns "Bad Request" response
58+
Given new "EditDataset" request
59+
And request contains "dataset_id" parameter from "REPLACE.ME"
60+
And body with value {"data": {"attributes": {"created_at": null, "name": "Security Audit Dataset", "principals": ["role:86245fce-0a4e-11f0-92bd-da7ad0900002"], "product_filters": [{"filters": ["@application.id:ABCD"], "product": "logs"}]}, "id": "123e4567-e89b-12d3-a456-426614174000", "type": "dataset"}}
61+
When the request is sent
62+
Then the response status is 400 Bad Request
63+
64+
@generated @skip @team:DataDog/aaa-granular-access
65+
Scenario: Edits a dataset returns "Not Found" response
66+
Given new "EditDataset" request
67+
And request contains "dataset_id" parameter from "REPLACE.ME"
68+
And body with value {"data": {"attributes": {"created_at": null, "name": "Security Audit Dataset", "principals": ["role:86245fce-0a4e-11f0-92bd-da7ad0900002"], "product_filters": [{"filters": ["@application.id:ABCD"], "product": "logs"}]}, "id": "123e4567-e89b-12d3-a456-426614174000", "type": "dataset"}}
69+
When the request is sent
70+
Then the response status is 404 Not Found
71+
72+
@generated @skip @team:DataDog/aaa-granular-access
73+
Scenario: Edits a dataset returns "OK" response
74+
Given new "EditDataset" request
75+
And request contains "dataset_id" parameter from "REPLACE.ME"
76+
And body with value {"data": {"attributes": {"created_at": null, "name": "Security Audit Dataset", "principals": ["role:86245fce-0a4e-11f0-92bd-da7ad0900002"], "product_filters": [{"filters": ["@application.id:ABCD"], "product": "logs"}]}, "id": "123e4567-e89b-12d3-a456-426614174000", "type": "dataset"}}
77+
When the request is sent
78+
Then the response status is 200 OK
79+
5680
@generated @skip @team:DataDog/aaa-granular-access
5781
Scenario: Get a single dataset by ID returns "Bad Request" response
5882
Given new "GetDataset" request

tests/v2/features/undo.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -888,6 +888,12 @@
888888
"type": "safe"
889889
}
890890
},
891+
"EditDataset": {
892+
"tag": "Datasets",
893+
"undo": {
894+
"type": "idempotent"
895+
}
896+
},
891897
"CreateDataDeletionRequest": {
892898
"tag": "Data Deletion",
893899
"undo": {

0 commit comments

Comments
 (0)