@@ -21475,6 +21475,162 @@ components:
2147521475 data:
2147621476 $ref: "#/components/schemas/DatasetResponse"
2147721477 type: object
21478+ DatasetRestrictionOwnershipMode:
21479+ description: |-
21480+ Controls how dataset ownership is determined. `disabled` turns off ownership-based access
21481+ entirely. `team_tag_based` assigns dataset ownership based on the team tags applied to the
21482+ data, allowing team members to see their own team's datasets.
21483+ enum:
21484+ - disabled
21485+ - team_tag_based
21486+ example: "team_tag_based"
21487+ type: string
21488+ x-enum-varnames:
21489+ - DISABLED
21490+ - TEAM_TAG_BASED
21491+ DatasetRestrictionPrincipal:
21492+ description: |-
21493+ A user or role that is exempt from dataset restrictions and retains unrestricted
21494+ access to all datasets for the product type.
21495+ properties:
21496+ id:
21497+ description: The unique identifier of the principal (a user UUID or role ID).
21498+ example: "abc123"
21499+ type: string
21500+ name:
21501+ description: The human-readable display name of the principal as shown in the Datadog UI.
21502+ example: "Datadog Admin Role"
21503+ type: string
21504+ type:
21505+ description: |-
21506+ The kind of principal, such as `user` for an individual user account or `role`
21507+ for a Datadog role.
21508+ example: "role"
21509+ type: string
21510+ required:
21511+ - type
21512+ - id
21513+ - name
21514+ type: object
21515+ DatasetRestrictionResponse:
21516+ description: Response containing the updated dataset restriction.
21517+ properties:
21518+ data:
21519+ $ref: "#/components/schemas/DatasetRestrictionResponseData"
21520+ required:
21521+ - data
21522+ type: object
21523+ DatasetRestrictionResponseAttributes:
21524+ description: |-
21525+ The current configuration of a dataset restriction, including restriction mode,
21526+ ownership mode, and exempt principals.
21527+ properties:
21528+ ownership_mode:
21529+ $ref: "#/components/schemas/DatasetRestrictionOwnershipMode"
21530+ restriction_key:
21531+ description: Internal key used by the restriction enforcement system to identify this restriction rule.
21532+ type: string
21533+ restriction_mode:
21534+ $ref: "#/components/schemas/DatasetRestrictionRestrictionMode"
21535+ unrestricted_principals:
21536+ description: |-
21537+ Principals (users or roles) that are exempt from this restriction and retain
21538+ full data access regardless of the restriction mode.
21539+ items:
21540+ $ref: "#/components/schemas/DatasetRestrictionPrincipal"
21541+ type: array
21542+ required:
21543+ - restriction_mode
21544+ type: object
21545+ DatasetRestrictionResponseData:
21546+ description: A single dataset restriction configuration for one product type.
21547+ properties:
21548+ attributes:
21549+ $ref: "#/components/schemas/DatasetRestrictionResponseAttributes"
21550+ id:
21551+ description: The Datadog product type this restriction applies to (for example, `rum`, `apm`, or `logs`).
21552+ example: "rum"
21553+ type: string
21554+ type:
21555+ $ref: "#/components/schemas/DatasetRestrictionsType"
21556+ required:
21557+ - type
21558+ - id
21559+ - attributes
21560+ type: object
21561+ DatasetRestrictionRestrictionMode:
21562+ description: |-
21563+ Controls the default data visibility for the product type. `standard` makes data visible
21564+ to all users with appropriate product access. `default_hide` hides data by default and
21565+ requires explicit grants for each dataset.
21566+ enum:
21567+ - standard
21568+ - default_hide
21569+ example: "default_hide"
21570+ type: string
21571+ x-enum-varnames:
21572+ - STANDARD
21573+ - DEFAULT_HIDE
21574+ DatasetRestrictionUpdateRequest:
21575+ description: Payload for updating a dataset restriction configuration.
21576+ properties:
21577+ data:
21578+ $ref: "#/components/schemas/DatasetRestrictionUpdateRequestData"
21579+ required:
21580+ - data
21581+ type: object
21582+ DatasetRestrictionUpdateRequestAttributes:
21583+ description: |-
21584+ Editable attributes of a dataset restriction. Only `restriction_mode` is required;
21585+ omitted optional fields retain their current values.
21586+ properties:
21587+ ownership_mode:
21588+ $ref: "#/components/schemas/DatasetRestrictionOwnershipMode"
21589+ restriction_mode:
21590+ $ref: "#/components/schemas/DatasetRestrictionRestrictionMode"
21591+ unrestricted_principals:
21592+ description: |-
21593+ Principal identifiers (users or roles) that are exempt from the restriction and
21594+ can always access all datasets for this product type.
21595+ items:
21596+ description: A unique identifier of a user or role principal.
21597+ type: string
21598+ type: array
21599+ required:
21600+ - restriction_mode
21601+ type: object
21602+ DatasetRestrictionUpdateRequestData:
21603+ description: Data object for a dataset restriction update.
21604+ properties:
21605+ attributes:
21606+ $ref: "#/components/schemas/DatasetRestrictionUpdateRequestAttributes"
21607+ type:
21608+ $ref: "#/components/schemas/DatasetRestrictionsType"
21609+ required:
21610+ - type
21611+ - attributes
21612+ type: object
21613+ DatasetRestrictionsListResponse:
21614+ description: |-
21615+ Response containing the list of all dataset restriction configurations for the
21616+ organization, one per product type.
21617+ properties:
21618+ data:
21619+ description: An array of dataset restriction objects, one for each configured product type.
21620+ items:
21621+ $ref: "#/components/schemas/DatasetRestrictionResponseData"
21622+ type: array
21623+ required:
21624+ - data
21625+ type: object
21626+ DatasetRestrictionsType:
21627+ description: JSON:API resource type for dataset restrictions.
21628+ enum:
21629+ - dataset_restrictions
21630+ example: "dataset_restrictions"
21631+ type: string
21632+ x-enum-varnames:
21633+ - DATASET_RESTRICTIONS
2147821634 DatasetType:
2147921635 default: dataset
2148021636 description: Resource type, always set to `dataset`.
@@ -97605,6 +97761,126 @@ paths:
9760597761 x-unstable: |-
9760697762 **Note**: This endpoint is in preview and is subject to change.
9760797763 If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
97764+ /api/v2/dataset_restrictions:
97765+ get:
97766+ description: |-
97767+ Retrieve all dataset restriction configurations for the organization.
97768+ Returns one restriction object per configured product type (for example, RUM, APM, or Logs),
97769+ including the current restriction mode, ownership mode, and any unrestricted principals.
97770+ Requires the `user_access_read` permission.
97771+ operationId: ListDatasetRestrictions
97772+ responses:
97773+ "200":
97774+ content:
97775+ application/json:
97776+ examples:
97777+ default:
97778+ value:
97779+ data:
97780+ - attributes:
97781+ restriction_mode: "standard"
97782+ id: "rum"
97783+ type: "dataset_restrictions"
97784+ - attributes:
97785+ ownership_mode: "team_tag_based"
97786+ restriction_mode: "default_hide"
97787+ id: "apm"
97788+ type: "dataset_restrictions"
97789+ schema:
97790+ $ref: "#/components/schemas/DatasetRestrictionsListResponse"
97791+ description: OK
97792+ "403":
97793+ content:
97794+ application/json:
97795+ schema:
97796+ $ref: "#/components/schemas/JSONAPIErrorResponse"
97797+ description: Forbidden
97798+ "404":
97799+ content:
97800+ application/json:
97801+ schema:
97802+ $ref: "#/components/schemas/JSONAPIErrorResponse"
97803+ description: Not Found
97804+ "429":
97805+ $ref: "#/components/responses/TooManyRequestsResponse"
97806+ summary: List dataset restrictions
97807+ tags:
97808+ - Dataset Restrictions
97809+ x-unstable: |-
97810+ **Note**: This endpoint is in preview and is subject to change.
97811+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
97812+ /api/v2/dataset_restrictions/{product_type}:
97813+ post:
97814+ description: |-
97815+ Update the dataset restriction configuration for a specific product type.
97816+ Sets the restriction mode, optional ownership mode, and the list of principals
97817+ that are exempt from restrictions. Requires the `user_access_manage` permission.
97818+ Changes are audited and take effect immediately.
97819+ operationId: UpdateDatasetRestriction
97820+ parameters:
97821+ - description: The Datadog product type to configure restrictions for (for example, `rum`, `apm`, or `logs`).
97822+ example: "rum"
97823+ in: path
97824+ name: product_type
97825+ required: true
97826+ schema:
97827+ type: string
97828+ requestBody:
97829+ content:
97830+ application/json:
97831+ examples:
97832+ default:
97833+ value:
97834+ data:
97835+ attributes:
97836+ ownership_mode: "team_tag_based"
97837+ restriction_mode: "default_hide"
97838+ type: "dataset_restrictions"
97839+ schema:
97840+ $ref: "#/components/schemas/DatasetRestrictionUpdateRequest"
97841+ required: true
97842+ responses:
97843+ "200":
97844+ content:
97845+ application/json:
97846+ examples:
97847+ default:
97848+ value:
97849+ data:
97850+ attributes:
97851+ ownership_mode: "team_tag_based"
97852+ restriction_mode: "default_hide"
97853+ id: "rum"
97854+ type: "dataset_restrictions"
97855+ schema:
97856+ $ref: "#/components/schemas/DatasetRestrictionResponse"
97857+ description: OK
97858+ "400":
97859+ content:
97860+ application/json:
97861+ schema:
97862+ $ref: "#/components/schemas/JSONAPIErrorResponse"
97863+ description: Bad Request
97864+ "403":
97865+ content:
97866+ application/json:
97867+ schema:
97868+ $ref: "#/components/schemas/JSONAPIErrorResponse"
97869+ description: Forbidden
97870+ "404":
97871+ content:
97872+ application/json:
97873+ schema:
97874+ $ref: "#/components/schemas/JSONAPIErrorResponse"
97875+ description: Not Found
97876+ "429":
97877+ $ref: "#/components/responses/TooManyRequestsResponse"
97878+ summary: Update a dataset restriction
97879+ tags:
97880+ - Dataset Restrictions
97881+ x-unstable: |-
97882+ **Note**: This endpoint is in preview and is subject to change.
97883+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
9760897884 /api/v2/datasets:
9760997885 get:
9761097886 description: Get all datasets that have been configured for an organization.
@@ -146005,6 +146281,11 @@ tags:
146005146281 - description: |-
146006146282 The Data Deletion API allows the user to target and delete data from the allowed products. It's currently enabled for Logs and RUM and depends on `logs_delete_data` and `rum_delete_data` permissions respectively.
146007146283 name: Data Deletion
146284+ - description: |-
146285+ Configure dataset-level access restrictions per Datadog product type. Dataset restrictions
146286+ control whether data is visible by default or hidden until explicitly granted, and how
146287+ ownership-based access is determined.
146288+ name: Dataset Restrictions
146008146289 - description: |-
146009146290 Data Access Controls in Datadog is a feature that allows administrators and access managers to regulate
146010146291 access to sensitive data. By defining Restricted Datasets, you can ensure that only specific teams or roles can
0 commit comments