openapi: 3.2.0 info: title: Data Use Governance - Data Catalog Data Assets API description: The Data Catalog APIs provide comprehensive functionality for managing data governance assets within Data Catalog, enabling users to create, retrieve, and organize business glossaries, terms, and tags for effective data classification and metadata management. version: '1.0' contact: name: OneTrust Support url: https://my.onetrust.com/s/contactsupport license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://{hostname} variables: hostname: default: hostname description: The OneTrust hostname such as app.onetrust.com, app-eu.onetrust.com, app-de.onetrust.com, app-uk.onetrust.com, app-apac.onetrust.com, trial.onetrust.com, or uat.onetrust.com. tags: - name: Data Assets description: The Data Assets APIs are used to manage data asset metadata. externalDocs: description: OpenAPI 3.1.0 - Download Definition url: https://developer.onetrust.com/onetrust/openapi/data-use-governance-data-catalog.json x-displayName: Data Assets paths: /api/data-governance/v1/data-assets: post: operationId: createOrUpsertDataAssetV1 summary: Create Data Asset description: 'Use this API to create a new data asset or upsert an existing data asset. Data assets must be added using a structured top-down hierarchy to ensure consistent data organization. The request must include all required data asset details, such as the parent ID, name, type, and data source. The response will confirm successful ingestion with the assigned data asset ID. Things to Know - If terms, tags, additional attributes, or users are added to an existing data asset, the system will merge the new values from the request with the existing values. - With the exception of the root (data source) node, every data asset must have its parent record already present in the system before being added.' tags: - Data Assets x-onetrust: spec-label: https://developer.onetrust.com/onetrust/openapi/data-use-governance-data-catalog.json requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetUpsertRequest' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetBasicResponse' '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '429': description: "Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview)." headers: Retry-After: schema: description: The number of seconds after which requests will be allowed again. format: int32 ot-period: schema: description: The unit of time for which the rate limit applies enum: - HOUR - MINUTE ot-ratelimit-event-id: schema: description: The unique identifier for the rate-limiting event. format: uuid ot-request-made: schema: description: The number of requests made within the specified period. format: int32 ot-requests-allowed: schema: description: The number of requests allowed within the specified period. format: int32 '500': description: Internal Server Error security: - DataUseGovernance-DataAssetManagement_OAUTH2: - DATA_CATALOG_WRITE /api/data-governance/v1/data-assets/{dataAssetId}: get: operationId: getDataAssetV1 summary: Get Data Asset description: Use this API to retrieve a specific data asset. The response will include details such as the data source, additional attributes, associated terms, and associated tags. tags: - Data Assets x-onetrust: spec-label: https://developer.onetrust.com/onetrust/openapi/data-use-governance-data-catalog.json parameters: - name: dataAssetId in: path description: The unique identifier of the data asset. required: true schema: type: string format: uuid example: 6756206c-845c-4ecc-8826-0e25d12b0d0c responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetResponse' '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '429': description: "Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview)." headers: Retry-After: schema: description: The number of seconds after which requests will be allowed again. format: int32 ot-period: schema: description: The unit of time for which the rate limit applies enum: - HOUR - MINUTE ot-ratelimit-event-id: schema: description: The unique identifier for the rate-limiting event. format: uuid ot-request-made: schema: description: The number of requests made within the specified period. format: int32 ot-requests-allowed: schema: description: The number of requests allowed within the specified period. format: int32 '500': description: Internal Server Error security: - DataUseGovernance-DataAssetManagement_OAUTH2: - DATA_CATALOG_READ delete: operationId: deleteDataAssetV1 summary: Delete Data Asset description: Use this API to delete a data asset. The request must include the data asset ID, and the response will confirm acceptance of the deletion request. If the data asset has child objects, those objects will also be deleted asynchronously along with the parent data asset. tags: - Data Assets x-onetrust: spec-label: https://developer.onetrust.com/onetrust/openapi/data-use-governance-data-catalog.json parameters: - name: dataAssetId in: path description: The unique identifier of the data asset. required: true schema: type: string format: uuid example: 6756206c-845c-4ecc-8826-0e25d12b0d0c responses: '202': description: ACCEPTED '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '429': description: "Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview)." headers: Retry-After: schema: description: The number of seconds after which requests will be allowed again. format: int32 ot-period: schema: description: The unit of time for which the rate limit applies enum: - HOUR - MINUTE ot-ratelimit-event-id: schema: description: The unique identifier for the rate-limiting event. format: uuid ot-request-made: schema: description: The number of requests made within the specified period. format: int32 ot-requests-allowed: schema: description: The number of requests allowed within the specified period. format: int32 '500': description: Internal Server Error security: - DataUseGovernance-DataAssetManagement_OAUTH2: - DATA_CATALOG_WRITE patch: operationId: updateDataAssetV1 summary: Modify Data Asset description: Use this API to modify existing data assets while maintaining a structured top-down hierarchy. With this API, the system will replace existing terms, tags, additional attributes, or users with the new data included in the request. The response will confirm the status along with the updated data asset ID. tags: - Data Assets x-onetrust: spec-label: https://developer.onetrust.com/onetrust/openapi/data-use-governance-data-catalog.json parameters: - name: dataAssetId in: path description: The unique identifier of the data asset. required: true schema: type: string format: uuid example: 6756206c-845c-4ecc-8826-0e25d12b0d0c requestBody: required: true content: application/merge-patch+json: schema: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetPatchRequest' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetBasicResponse' '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '429': description: "Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview)." headers: Retry-After: schema: description: The number of seconds after which requests will be allowed again. format: int32 ot-period: schema: description: The unit of time for which the rate limit applies enum: - HOUR - MINUTE ot-ratelimit-event-id: schema: description: The unique identifier for the rate-limiting event. format: uuid ot-request-made: schema: description: The number of requests made within the specified period. format: int32 ot-requests-allowed: schema: description: The number of requests allowed within the specified period. format: int32 '500': description: Internal Server Error security: - DataUseGovernance-DataAssetManagement_OAUTH2: - DATA_CATALOG_WRITE /api/data-governance/v1/data-assets/{dataAssetId}/tags: post: operationId: createDataAssetTagAssociationsV1 summary: Create Tag Associations description: Use this API to create tag associations for the specified data asset. The request should include the data asset ID and the list of tags to assign to the data asset. The response will confirm the successful associations and return the updated data asset ID. tags: - Data Assets x-onetrust: spec-label: https://developer.onetrust.com/onetrust/openapi/data-use-governance-data-catalog.json parameters: - name: dataAssetId in: path description: The unique identifier of the data asset. required: true schema: type: string format: uuid example: 6756206c-845c-4ecc-8826-0e25d12b0d0c requestBody: required: true content: application/json: schema: type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTagAssociationRequest' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetBasicResponse' '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '429': description: "Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview)." headers: Retry-After: schema: description: The number of seconds after which requests will be allowed again. format: int32 ot-period: schema: description: The unit of time for which the rate limit applies enum: - HOUR - MINUTE ot-ratelimit-event-id: schema: description: The unique identifier for the rate-limiting event. format: uuid ot-request-made: schema: description: The number of requests made within the specified period. format: int32 ot-requests-allowed: schema: description: The number of requests allowed within the specified period. format: int32 '500': description: Internal Server Error security: - DataUseGovernance-DataAssetManagement_OAUTH2: - DATA_CATALOG_WRITE /api/data-governance/v1/data-assets/{dataAssetId}/terms: post: operationId: createDataAssetTermAssociationsV1 summary: Create Term Associations description: Use this API to create term associations for the specified data asset. The request should include the data asset ID and the list of terms to assign to the data asset. The response will confirm the successful associations and return the updated data asset ID. tags: - Data Assets x-onetrust: spec-label: https://developer.onetrust.com/onetrust/openapi/data-use-governance-data-catalog.json parameters: - name: dataAssetId in: path description: The unique identifier of the data asset. required: true schema: type: string format: uuid example: 6756206c-845c-4ecc-8826-0e25d12b0d0c requestBody: required: true content: application/json: schema: type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTermAssociationRequest' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetBasicResponse' '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '429': description: "Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview)." headers: Retry-After: schema: description: The number of seconds after which requests will be allowed again. format: int32 ot-period: schema: description: The unit of time for which the rate limit applies enum: - HOUR - MINUTE ot-ratelimit-event-id: schema: description: The unique identifier for the rate-limiting event. format: uuid ot-request-made: schema: description: The number of requests made within the specified period. format: int32 ot-requests-allowed: schema: description: The number of requests allowed within the specified period. format: int32 '500': description: Internal Server Error security: - DataUseGovernance-DataAssetManagement_OAUTH2: - DATA_CATALOG_WRITE components: schemas: DataUseGovernance-DataAssetManagement_DataAssetTagAssociationResponse: type: object properties: tagId: description: The unique identifier of the tag. type: string format: uuid example: 67t09995-6040-403f-b520-fa9b38ce0bf5 tagName: description: The name of the tag. type: string example: Confidential maxLength: 100 minLength: 1 recommended: description: This flag indicates whether the tag was recommended via Data Discovery scan. type: boolean example: true inherited: description: 'This flag indicates whether the tag was automatically inherited from the terms assigned to the data asset. ' type: boolean example: true status: description: The recommendation status of the tag. type: string enum: - PENDING - FLAGGED - APPROVED - REJECTED - DELETED source: description: The source of the classification tag association. type: string enum: - BULK_IMPORT - DATA_DISCOVERY - DATA_DISCOVERY_REVIEW - CATALOG - SYNC - PARTIAL_SYNC - AUTO_APPROVAL_CLASSIFICATION - BULK_ACTION - GLOSSARY - EXTERNAL - CLOUD_DATA_DISCOVERY - AI_GOVERNANCE DataUseGovernance-DataAssetManagement_DataAssetTermAssociationResponse: type: object properties: termId: description: The unique identifier of the term. type: string format: uuid example: b83f9fd5-7fdc-4481-90c5-20077239ecc9 termName: description: The name of the term. type: string example: Social Security Number maxLength: 100 minLength: 1 recommended: description: This flag indicates whether the term was recommended via Data Discovery scan. type: boolean example: true status: description: The recommendation status of the term. type: string enum: - PENDING - FLAGGED - APPROVED - REJECTED - DELETED source: description: The source of the term association. type: string enum: - BULK_IMPORT - DATA_DISCOVERY - DATA_DISCOVERY_REVIEW - CATALOG - SYNC - PARTIAL_SYNC - AUTO_APPROVAL_CLASSIFICATION - BULK_ACTION - GLOSSARY - EXTERNAL - CLOUD_DATA_DISCOVERY - AI_GOVERNANCE DataUseGovernance-DataAssetManagement_MetadataValueDto: type: object properties: name: description: The name of the attribute. type: string example: DS Multi Select maxLength: 100 minLength: 1 displayName: description: The display name of the attribute. type: string example: DS Multi Select maxLength: 100 minLength: 1 value: description: The value of the attribute. type: object example: - value: Option1 - value: Option2 - value: Option3 dataType: description: The data type of the attribute. type: string example: STRING enum: - LONG - STRING - DATE - TIMESTAMP custom: description: This flag indicates whether the attribute is a custom attribute. type: boolean example: true required: - name - value DataUseGovernance-DataAssetManagement_DataAssetTermAssociationRequest: type: object properties: termId: description: Unique identifier of the Glossary Term type: string format: uuid example: 29d09995-6040-403f-b520-fa9b38ce0bf5 termName: description: Name of the Glossary Term type: string example: Social Security Number required: - termId - termName DataUseGovernance-DataAssetManagement_DataSource: type: object properties: id: description: The unique identifier of the data source. type: string format: uuid example: 9fc8e1a8-b7d1-47c5-8f4b-7ebd451506f8 name: description: The name of the data source. type: string example: Onetrust-smb systemType: description: The type of data source. type: string example: Snowflake enum: - AWS - Azure - AzureCosmos - AzureStorage - Box - Cassandra - Databricks - IBMDB2 - Exchange - GCP - GoogleWorkspaceGmail - GoogleBigQuery - GoogleBigTable - MongoDB - MySQL - Netezza - Office365 - OneDrive - OracleRDBMS - PostgreSQL - AmazonS3 - AmazonSageMaker - SalesForce - SAPHana - ServiceNow - SharePoint - SMB - Snowflake - MicrosoftSQL - Teradata - Workday - Zendesk - AmazonRDSforSQLServer - AzureSQLServer - Redshift - GoogleDrive - CustomConnector - AmazonDynamoDB - AmazonAthena - Hive - SharePoint2019OnPrem - GenericJDBC - SFTP - NFS - GCS - Redis - ElasticSearch - MicrosoftTeams - Slack - AlibabaCloudOSS - AzureFiles - Iceberg - NGFSFILES - Github - RELATIONAL_DATABASE - NON_RELATIONAL_DATABASE - FILE - API - Kafka DataUseGovernance-DataAssetManagement_DataAssetPatchRequest: type: object properties: shortDescription: description: Short Description of the Data Asset type: string example: Professional resume maxLength: 4000 oneTrustSourceSystemId: description: Unique identifier of the Onetrust Source System type: string format: uuid example: 9fc8e1a8-b7d1-47c5-8f4b-7ebd451506f8 technicalOwners: type: array items: type: string format: uuid description: Technical Owners of the Data Asset example: 705992a2-e6a2-4fd7-a3f9-6190caa2365b businessOwners: type: array items: type: string format: uuid description: Business Owners of the Data Asset example: 70ab1943-4b55-41d4-8183-6fa372579c6a dataStewards: type: array items: type: string format: uuid description: Data Stewards of the Source/Data Asset example: 32d50775-17c3-44f0-88da-575b8a10c9fb pii: description: Indicates whether Data Asset is classified as PII or not type: boolean example: true default: 'false' additionalAttributes: type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_MetadataValueDto' terms: type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTermAssociationRequest' tags: type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTagAssociationRequest' DataUseGovernance-DataAssetManagement_DataAssetBasicResponse: type: object properties: id: description: The unique identifier of the data asset. type: string format: uuid example: 6756206c-845c-4ecc-8826-0e25d12b0d0c DataUseGovernance-DataAssetManagement_DataAssetTagAssociationRequest: type: object properties: tagId: description: Unique identifier of the Glossary Tag type: string format: uuid example: 29d09995-6040-403f-b520-fa9b38ce0bf5 tagName: description: Name of the Glossary Tag type: string example: Confidential required: - tagId - tagName DataUseGovernance-DataAssetManagement_DataAssetResponse: type: object properties: name: description: The name of the data asset. type: string example: resume.pdf shortDescription: description: The description of the data asset. type: string example: Professional resume dataSource: description: The details of the data source. $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataSource' type: description: The type of data asset. type: string enum: - DATASOURCE - DATABASE - OBJECT - SCHEMA - CATALOG - TABLE - COLUMN - FIELD - FOLDER - FILE - DRIVE - FILE_SYSTEM - VIEW - DIRECTORY parentId: description: 'The unique identifier of the parent object. This parameter value is null for `type`: `DATASOURCE`.' type: string format: uuid example: de6d404d-14d6-487f-bbf7-fd202bde4768 oneTrustAssetId: description: The unique identifier of the data asset within Data Mapping Automation. type: string format: uuid example: 498c3033-94ac-4497-89f2-44985b7f3df4 oneTrustSourceSystemId: description: The unique identifier of the data source. type: string format: uuid example: 9fc8e1a8-b7d1-47c5-8f4b-7ebd451506f8 technicalOwners: description: The details of the technical owner(s) responsible for managing the technical details of the data asset. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetUser' description: Technical Owners of the Data Asset businessOwners: description: The details of the business owner(s) responsible for defining and updating the business context of the glossary. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetUser' description: Business Owners of the Data Asset dataStewards: description: The details of the data steward(s) responsible for utilizing data governance processes to ensure data reliability and validity within a data asset or business unit. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetUser' description: Data Stewards of the Source/Data Asset pii: description: This flag indicates whether the data asset is classified as PII. type: boolean example: true default: 'false' additionalAttributes: description: The details of the associated attributes. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_MetadataValueDto' terms: description: The details of the associated terms. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTermAssociationResponse' tags: description: The details of the associated classification tags. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTagAssociationResponse' createdDate: description: The date and time that the data asset was created. type: string format: date-time example: '2025-02-19T10:00:00Z' createdBy: description: The details of the user who created the data asset. $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetUser' updatedDate: description: The date and time that the data asset was last updated. type: string format: date-time example: '2025-02-19T10:00:00Z' updatedBy: description: The details of the user who last updated the data asset. $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetUser' id: description: The unique identifier of the data asset. type: string format: uuid example: 6756206c-845c-4ecc-8826-0e25d12b0d0c DataUseGovernance-DataAssetManagement_DataAssetUser: type: object properties: id: description: The unique identifier of the user who last updated the data asset. type: string format: uuid example: 78d09995-6040-403f-b520-fa9b38ce0bf5 name: description: The name of the user who last updated the data asset. type: string example: Stephen F DataUseGovernance-DataAssetManagement_DataAssetUpsertRequest: type: object properties: name: description: The name of the data asset. type: string example: resume.pdf maxLength: 100 minLength: 1 shortDescription: description: The description of the data asset. type: string example: Professional resume maxLength: 4000 dataSource: description: The details of the data source. $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataSource' type: description: The type of data asset. type: string enum: - DATASOURCE - DATABASE - OBJECT - SCHEMA - CATALOG - TABLE - COLUMN - FIELD - FOLDER - FILE - DRIVE - FILE_SYSTEM - VIEW - DIRECTORY parentId: description: 'The unique identifier of the parent object. This parameter value is null for `type`: `DATASOURCE`.' type: string format: uuid example: de6d404d-14d6-487f-bbf7-fd202bde4768 oneTrustSourceSystemId: description: The unique identifier of the data source. type: string format: uuid example: 9fc8e1a8-b7d1-47c5-8f4b-7ebd451506f8 technicalOwners: description: The unique identifier(s) of the technical owner(s) responsible for managing the technical details of the data asset. type: array items: type: string format: uuid description: Technical Owners of the Data Asset example: 705992a2-e6a2-4fd7-a3f9-6190caa2365b businessOwners: description: The unique identifier(s) of the business owner(s) responsible for defining and updating the business context of the glossary. type: array items: type: string format: uuid description: Business Owners of the Data Asset example: 70ab1943-4b55-41d4-8183-6fa372579c6a dataStewards: description: The unique identifier(s) of the data steward(s) responsible for utilizing data governance processes to ensure data reliability and validity within a data asset or business unit. type: array items: type: string format: uuid description: Data Stewards of the Source/Data Asset example: 32d50775-17c3-44f0-88da-575b8a10c9fb pii: description: This flag indicates whether the data asset is classified as PII. type: boolean example: true default: 'false' additionalAttributes: description: The details of the associated attributes. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_MetadataValueDto' terms: description: The list of associated terms. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTermAssociationRequest' tags: description: The list of associated classification tags. type: array items: $ref: '#/components/schemas/DataUseGovernance-DataAssetManagement_DataAssetTagAssociationRequest' required: - dataSource - name - parentId - type securitySchemes: DataUseGovernance-DataCatalog_OAUTH2: type: oauth2 flows: clientCredentials: tokenUrl: https://{hostname}/api/access/v1/oauth/token scopes: DATA_CATALOG_READ: Access to Data Catalog read operations for external systems DATA_CATALOG_WRITE: Access to Data Catalog write operations for external systems DataUseGovernance-DataAssetManagement_OAUTH2: type: oauth2 flows: clientCredentials: tokenUrl: https://{hostname}/api/access/v1/oauth/token scopes: DATA_CATALOG_WRITE: Data Catalog Write Scope gives the user access to write operations DATA_CATALOG_READ: Data Catalog Read Scope gives the user access to read operations DataUseGovernance-DataCatalogMetadataExchange_OAUTH2: type: oauth2 flows: clientCredentials: tokenUrl: https://{hostname}/api/access/v1/oauth/token scopes: DATA_CATALOG_READ: Access to Data Catalog read operations for external systems x-readme: explorer-enabled: false proxy-enabled: false metrics-enabled: false x-onetrust: spec-label: OpenAPI 3.1.0