@@ -288,6 +288,14 @@ components:
288288 required: true
289289 schema:
290290 type: string
291+ DatasetID:
292+ description: The ID of a defined dataset.
293+ example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1
294+ in: path
295+ name: dataset_id
296+ required: true
297+ schema:
298+ type: string
291299 EntityID:
292300 description: UUID or Entity Ref.
293301 in: path
@@ -12170,6 +12178,94 @@ components:
1217012178 required:
1217112179 - databaseMonitoringTrigger
1217212180 type: object
12181+ Dataset:
12182+ description: Dataset object.
12183+ properties:
12184+ attributes:
12185+ $ref: '#/components/schemas/DatasetAttributes'
12186+ id:
12187+ description: Unique identifier for the dataset.
12188+ example: 123e4567-e89b-12d3-a456-426614174000
12189+ type: string
12190+ type:
12191+ description: Resource type, always "dataset".
12192+ example: dataset
12193+ type: string
12194+ required:
12195+ - type
12196+ - attributes
12197+ type: object
12198+ DatasetAttributes:
12199+ description: Dataset metadata and configuration(s).
12200+ properties:
12201+ created_at:
12202+ description: Timestamp when the dataset was created.
12203+ format: date-time
12204+ nullable: true
12205+ type: string
12206+ created_by:
12207+ description: ID of the user who created the dataset.
12208+ format: uuid
12209+ nullable: true
12210+ type: string
12211+ name:
12212+ description: Name of the dataset.
12213+ example: Security Audit Dataset
12214+ type: string
12215+ principals:
12216+ description: List of access principals, formatted as `principal_type:id`.
12217+ Principal can be 'team' or 'role'.
12218+ example:
12219+ - role:86245fce-0a4e-11f0-92bd-da7ad0900002
12220+ items:
12221+ example: role:86245fce-0a4e-11f0-92bd-da7ad0900002
12222+ type: string
12223+ type: array
12224+ product_filters:
12225+ description: List of product-specific filters.
12226+ items:
12227+ $ref: '#/components/schemas/FiltersPerProduct'
12228+ type: array
12229+ required:
12230+ - name
12231+ - product_filters
12232+ - principals
12233+ type: object
12234+ DatasetCreateRequest:
12235+ description: Create request for a dataset.
12236+ properties:
12237+ data:
12238+ $ref: '#/components/schemas/Dataset'
12239+ required:
12240+ - data
12241+ type: object
12242+ DatasetEditRequest:
12243+ description: Edit request for a dataset.
12244+ properties:
12245+ data:
12246+ $ref: '#/components/schemas/Dataset'
12247+ required:
12248+ - data
12249+ type: object
12250+ DatasetResponseMulti:
12251+ description: Response containing a list of datasets.
12252+ properties:
12253+ data:
12254+ description: The list of datasets returned in response.
12255+ items:
12256+ $ref: '#/components/schemas/Dataset'
12257+ type: array
12258+ required:
12259+ - data
12260+ type: object
12261+ DatasetResponseSingle:
12262+ description: Response containing a single dataset object.
12263+ properties:
12264+ data:
12265+ $ref: '#/components/schemas/Dataset'
12266+ required:
12267+ - data
12268+ type: object
1217312269 Date:
1217412270 description: Date as Unix timestamp in milliseconds.
1217512271 example: 1722439510282
@@ -15628,6 +15724,38 @@ components:
1562815724 $ref: '#/components/schemas/FastlyServiceData'
1562915725 type: array
1563015726 type: object
15727+ FiltersPerProduct:
15728+ description: Product-specific filters for the dataset.
15729+ properties:
15730+ filters:
15731+ description: 'Defines the list of tag-based filters used to restrict access
15732+ to telemetry data for a specific product.
15733+
15734+ These filters act as access control rules. Each filter must follow the
15735+ tag query syntax used by
15736+
15737+ Datadog (e.g., @tag.key:value), and only one tag or attribute may be used
15738+ to define the access strategy
15739+
15740+ per telemetry type.'
15741+ example:
15742+ - '@application.id:ABCD'
15743+ items:
15744+ example: '@application.id:ABCD'
15745+ type: string
15746+ type: array
15747+ product:
15748+ description: 'Name of the product the dataset is for. Possible values are
15749+ ''apm'', ''rum'', ''synthetics'',
15750+
15751+ ''metrics'', ''logs'', ''sd_repoinfo'', ''error_tracking'', ''cloud_cost'',
15752+ and ''ml_obs''.'
15753+ example: logs
15754+ type: string
15755+ required:
15756+ - product
15757+ - filters
15758+ type: object
1563115759 Finding:
1563215760 description: A single finding without the message and resource configuration.
1563315761 properties:
@@ -47394,6 +47522,173 @@ paths:
4739447522 tags:
4739547523 - Dashboard Lists
4739647524 x-codegen-request-body-name: body
47525+ /api/v2/datasets:
47526+ get:
47527+ description: Get all datasets that have been configured for an organization.
47528+ operationId: GetAllDatasets
47529+ responses:
47530+ '200':
47531+ content:
47532+ application/json:
47533+ schema:
47534+ $ref: '#/components/schemas/DatasetResponseMulti'
47535+ description: OK
47536+ '403':
47537+ $ref: '#/components/responses/NotAuthorizedResponse'
47538+ '429':
47539+ $ref: '#/components/responses/TooManyRequestsResponse'
47540+ security:
47541+ - apiKeyAuth: []
47542+ appKeyAuth: []
47543+ - AuthZ: []
47544+ summary: Get all datasets
47545+ tags:
47546+ - Datasets
47547+ x-permission:
47548+ operator: OPEN
47549+ permissions: []
47550+ post:
47551+ description: Create a dataset with the configurations in the request.
47552+ operationId: CreateDataset
47553+ requestBody:
47554+ content:
47555+ application/json:
47556+ example:
47557+ data:
47558+ attributes:
47559+ name: Test RUM Dataset
47560+ principals:
47561+ - role:23bacb30-1c59-11f0-a596-da7ad0900002
47562+ product_filters:
47563+ - filters:
47564+ - '@application.id:application_123'
47565+ product: rum
47566+ type: dataset
47567+ schema:
47568+ $ref: '#/components/schemas/DatasetCreateRequest'
47569+ description: Dataset payload
47570+ required: true
47571+ responses:
47572+ '200':
47573+ content:
47574+ application/json:
47575+ schema:
47576+ $ref: '#/components/schemas/DatasetResponseSingle'
47577+ description: OK
47578+ '400':
47579+ $ref: '#/components/responses/BadRequestResponse'
47580+ '403':
47581+ $ref: '#/components/responses/NotAuthorizedResponse'
47582+ '409':
47583+ $ref: '#/components/responses/ConflictResponse'
47584+ '429':
47585+ $ref: '#/components/responses/TooManyRequestsResponse'
47586+ security:
47587+ - apiKeyAuth: []
47588+ appKeyAuth: []
47589+ - AuthZ: []
47590+ summary: Create a dataset
47591+ tags:
47592+ - Datasets
47593+ x-codegen-request-body-name: body
47594+ x-permission:
47595+ operator: OPEN
47596+ permissions: []
47597+ /api/v2/datasets/{dataset_id}:
47598+ delete:
47599+ description: Deletes the dataset associated with the ID.
47600+ operationId: DeleteDataset
47601+ parameters:
47602+ - $ref: '#/components/parameters/DatasetID'
47603+ responses:
47604+ '204':
47605+ description: No Content
47606+ '400':
47607+ $ref: '#/components/responses/BadRequestResponse'
47608+ '403':
47609+ $ref: '#/components/responses/NotAuthorizedResponse'
47610+ '404':
47611+ $ref: '#/components/responses/NotFoundResponse'
47612+ '429':
47613+ $ref: '#/components/responses/TooManyRequestsResponse'
47614+ security:
47615+ - apiKeyAuth: []
47616+ appKeyAuth: []
47617+ - AuthZ: []
47618+ summary: Delete a dataset
47619+ tags:
47620+ - Datasets
47621+ x-permission:
47622+ operator: OPEN
47623+ permissions: []
47624+ get:
47625+ description: Retrieves the dataset associated with the ID.
47626+ operationId: GetDataset
47627+ parameters:
47628+ - $ref: '#/components/parameters/DatasetID'
47629+ responses:
47630+ '200':
47631+ content:
47632+ application/json:
47633+ schema:
47634+ $ref: '#/components/schemas/DatasetResponseSingle'
47635+ description: OK
47636+ '400':
47637+ $ref: '#/components/responses/BadRequestResponse'
47638+ '403':
47639+ $ref: '#/components/responses/NotAuthorizedResponse'
47640+ '404':
47641+ $ref: '#/components/responses/NotFoundResponse'
47642+ '429':
47643+ $ref: '#/components/responses/TooManyRequestsResponse'
47644+ security:
47645+ - apiKeyAuth: []
47646+ appKeyAuth: []
47647+ - AuthZ: []
47648+ summary: Get a single dataset by ID
47649+ tags:
47650+ - Datasets
47651+ x-permission:
47652+ operator: OPEN
47653+ permissions: []
47654+ put:
47655+ description: Updates the dataset associated with the ID.
47656+ operationId: UpdateDataset
47657+ parameters:
47658+ - $ref: '#/components/parameters/DatasetID'
47659+ requestBody:
47660+ content:
47661+ application/json:
47662+ schema:
47663+ $ref: '#/components/schemas/DatasetEditRequest'
47664+ description: Dataset payload
47665+ required: true
47666+ responses:
47667+ '200':
47668+ content:
47669+ application/json:
47670+ schema:
47671+ $ref: '#/components/schemas/DatasetResponseSingle'
47672+ description: OK
47673+ '400':
47674+ $ref: '#/components/responses/BadRequestResponse'
47675+ '403':
47676+ $ref: '#/components/responses/NotAuthorizedResponse'
47677+ '404':
47678+ $ref: '#/components/responses/NotFoundResponse'
47679+ '429':
47680+ $ref: '#/components/responses/TooManyRequestsResponse'
47681+ security:
47682+ - apiKeyAuth: []
47683+ appKeyAuth: []
47684+ - AuthZ: []
47685+ summary: Update a dataset
47686+ tags:
47687+ - Datasets
47688+ x-codegen-request-body-name: body
47689+ x-permission:
47690+ operator: OPEN
47691+ permissions: []
4739747692 /api/v2/deletion/data/{product}:
4739847693 post:
4739947694 description: Creates a data deletion request by providing a query and a timeframe
@@ -64798,6 +65093,14 @@ tags:
6479865093 the allowed products. It's currently enabled for Logs and RUM and depends on `logs_delete_data`
6479965094 and `rum_delete_data` permissions respectively.
6480065095 name: Data Deletion
65096+ - description: 'Data Access Controls in Datadog are a feature that allows administrators
65097+ and access managers to regulate
65098+
65099+ access to sensitive data. By defining Restricted Datasets, you can ensure that
65100+ only specific teams or roles can
65101+
65102+ view certain types of telemetry (e.g., logs, traces, metrics, RUM data).'
65103+ name: Datasets
6480165104- description: 'Configure your Datadog Email Domain Allowlist directly through the
6480265105 Datadog API.
6480365106
0 commit comments