Skip to content

Commit 19659f1

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 463c2da of spec repo
1 parent 2b4e9c2 commit 19659f1

File tree

9 files changed

+346
-3
lines changed

9 files changed

+346
-3
lines changed

.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:14:48.428"
2+
"spec_repo_commit": "463c2da",
3+
"generated": "2025-07-22 13:55:44.498"
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
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Edits a dataset returns "OK" response
2+
3+
require "datadog_api_client"
4+
api_instance = DatadogAPIClient::V2::DatasetsAPI.new
5+
6+
body = DatadogAPIClient::V2::DatasetEditRequest.new({
7+
data: DatadogAPIClient::V2::Dataset.new({
8+
attributes: DatadogAPIClient::V2::DatasetAttributes.new({
9+
created_at: nil,
10+
name: "Security Audit Dataset",
11+
principals: [
12+
"role:86245fce-0a4e-11f0-92bd-da7ad0900002",
13+
],
14+
product_filters: [
15+
DatadogAPIClient::V2::FiltersPerProduct.new({
16+
filters: [
17+
"@application.id:ABCD",
18+
],
19+
product: "logs",
20+
}),
21+
],
22+
}),
23+
id: "123e4567-e89b-12d3-a456-426614174000",
24+
type: "dataset",
25+
}),
26+
})
27+
p api_instance.edit_dataset("dataset_id", body)

features/scenarios_model_mapping.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1597,6 +1597,10 @@
15971597
"v2.GetDataset" => {
15981598
"dataset_id" => "String",
15991599
},
1600+
"v2.EditDataset" => {
1601+
"dataset_id" => "String",
1602+
"body" => "DatasetEditRequest",
1603+
},
16001604
"v2.CreateDataDeletionRequest" => {
16011605
"product" => "String",
16021606
"body" => "CreateDataDeletionRequestBody",

features/v2/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

features/v2/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": {

lib/datadog_api_client/inflector.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1617,6 +1617,7 @@ def overrides
16171617
"v2.dataset" => "Dataset",
16181618
"v2.dataset_attributes" => "DatasetAttributes",
16191619
"v2.dataset_create_request" => "DatasetCreateRequest",
1620+
"v2.dataset_edit_request" => "DatasetEditRequest",
16201621
"v2.dataset_response_multi" => "DatasetResponseMulti",
16211622
"v2.dataset_response_single" => "DatasetResponseSingle",
16221623
"v2.data_transform" => "DataTransform",

lib/datadog_api_client/v2/api/datasets_api.rb

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,19 @@ def create_dataset(body, opts = {})
3535
#
3636
# Create a dataset with the configurations in the request.
3737
#
38+
# ### Datasets Constraints
39+
#
40+
# - **Tag Limit per Dataset**:
41+
# - Each Restricted Dataset supports a maximum of 10 key:value pairs.
42+
#
43+
# - **Tag Key Rules per Telemetry Type**:
44+
# - Only one tag key or attribute may be used to define access within a single telemetry type.
45+
# - The same or different tag key may be used across different telemetry types.
46+
#
47+
# - **Tag Value Uniqueness**:
48+
# - Tag values must be unique within a single dataset.
49+
# - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type.
50+
#
3851
# @param body [DatasetCreateRequest] Dataset payload
3952
# @param opts [Hash] the optional parameters
4053
# @return [Array<(DatasetResponseSingle, Integer, Hash)>] DatasetResponseSingle data, response status code and response headers
@@ -155,6 +168,91 @@ def delete_dataset_with_http_info(dataset_id, opts = {})
155168
return data, status_code, headers
156169
end
157170

171+
# Edits a dataset.
172+
#
173+
# @see #edit_dataset_with_http_info
174+
def edit_dataset(dataset_id, body, opts = {})
175+
data, _status_code, _headers = edit_dataset_with_http_info(dataset_id, body, opts)
176+
data
177+
end
178+
179+
# Edits a dataset.
180+
#
181+
# Edits the dataset associated with the ID.
182+
#
183+
# ### Datasets Constraints
184+
#
185+
# - **Tag Limit per Dataset**:
186+
# - Each Restricted Dataset supports a maximum of 10 key:value pairs.
187+
#
188+
# - **Tag Key Rules per Telemetry Type**:
189+
# - Only one tag key or attribute may be used to define access within a single telemetry type.
190+
# - The same or different tag key may be used across different telemetry types.
191+
#
192+
# - **Tag Value Uniqueness**:
193+
# - Tag values must be unique within a single dataset.
194+
# - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type.
195+
#
196+
# @param dataset_id [String] The ID of a defined dataset.
197+
# @param body [DatasetEditRequest] Dataset payload
198+
# @param opts [Hash] the optional parameters
199+
# @return [Array<(DatasetResponseSingle, Integer, Hash)>] DatasetResponseSingle data, response status code and response headers
200+
def edit_dataset_with_http_info(dataset_id, body, opts = {})
201+
202+
if @api_client.config.debugging
203+
@api_client.config.logger.debug 'Calling API: DatasetsAPI.edit_dataset ...'
204+
end
205+
# verify the required parameter 'dataset_id' is set
206+
if @api_client.config.client_side_validation && dataset_id.nil?
207+
fail ArgumentError, "Missing the required parameter 'dataset_id' when calling DatasetsAPI.edit_dataset"
208+
end
209+
# verify the required parameter 'body' is set
210+
if @api_client.config.client_side_validation && body.nil?
211+
fail ArgumentError, "Missing the required parameter 'body' when calling DatasetsAPI.edit_dataset"
212+
end
213+
# resource path
214+
local_var_path = '/api/v2/datasets/{dataset_id}'.sub('{dataset_id}', CGI.escape(dataset_id.to_s).gsub('%2F', '/'))
215+
216+
# query parameters
217+
query_params = opts[:query_params] || {}
218+
219+
# header parameters
220+
header_params = opts[:header_params] || {}
221+
# HTTP header 'Accept' (if needed)
222+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
223+
# HTTP header 'Content-Type'
224+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
225+
226+
# form parameters
227+
form_params = opts[:form_params] || {}
228+
229+
# http body (model)
230+
post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
231+
232+
# return_type
233+
return_type = opts[:debug_return_type] || 'DatasetResponseSingle'
234+
235+
# auth_names
236+
auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
237+
238+
new_options = opts.merge(
239+
:operation => :edit_dataset,
240+
:header_params => header_params,
241+
:query_params => query_params,
242+
:form_params => form_params,
243+
:body => post_body,
244+
:auth_names => auth_names,
245+
:return_type => return_type,
246+
:api_version => "V2"
247+
)
248+
249+
data, status_code, headers = @api_client.call_api(Net::HTTP::Put, local_var_path, new_options)
250+
if @api_client.config.debugging
251+
@api_client.config.logger.debug "API called: DatasetsAPI#edit_dataset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
252+
end
253+
return data, status_code, headers
254+
end
255+
158256
# Get all datasets.
159257
#
160258
# @see #get_all_datasets_with_http_info

0 commit comments

Comments
 (0)