---
title: "Create or Update Data Source"
method: PUT
path: "/api/discovery-scan-config/v3/system"
tags: ["Data Sources"]
---

# Create or Update Data Source

`PUT /api/discovery-scan-config/v3/system`

## Request

- Base URL: `https://hostname`
- URL: `https://hostname/api/discovery-scan-config/v3/system`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://{hostname}/api/access/v1/oauth/token` scopes: `INTEGRATIONS`, `DATA_DISCOVERY`

Use this API to create a new data source or update an existing data source. The data source will be created or updated with the details provided in the request body.

## Request body

- DataUseGovernanceDataDiscoveryDataSourceV2Dto
  - `dataSourceName` string: Name of Data Source
  - `systemType` 'AWS' | 'Azure' | 'AzureCosmos' | 'AzureStorage' | 'Box' | 'Cassandra' | 'Databricks' | 'IBMDB2' | 'Exchange' | 'GCP' | 'GoogleWorkspaceGmail' | 'GoogleBigQuery' | 'GoogleBigTable' | 'MongoDB' | 'MySQL' | 'Netezza' | 'Office365' | 'OneDrive' | 'OracleRDBMS' | 'PostgreSQL' | 'AmazonS3' | 'AmazonSageMaker' | 'AmazonBedrock' | 'GCPVertex' | 'AzureFoundry' | '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' | 'Unknown' | 'RELATIONAL_DATABASE' | 'NON_RELATIONAL_DATABASE' | 'FILE' | 'API' | 'Kafka' | 'WorkdayApp': System Type of Data Source
  - `systemName` string: System Name of Data Source
  - `status` 'INACTIVE' | 'ACTIVE' | 'DELETED': Data Source current status
  - `oneTrustAssetId` string, uuid: Asset ID for Data Source
  - `orgGroupId` string, uuid: Org Group ID for Data Source
  - `createdBy` string, uuid: UserID who created Data Source
  - `modifiedBy` string, uuid: UserID who modified Data Source
  - `createdDate` string, date-time: Data Source Created date
  - `modifiedDate` string, date-time: Data Source modified date
  - `dataSourceSettings` DataUseGovernanceDataDiscoveryDataSourceSettingsV2Dto
    - `scannerId` string, uuid: Scanner Id for Data Source
    - `workerNodeName` string: Worker Node Name
    - `scanProfileId` string, uuid: ScanProfile ID for Data Source
    - `scanProfileName` string: ScanProfile Name for Data Source
    - `credentialId` string, uuid: Credential ID for Data Source
    - `credentialName` string: Credential Name for Data Source
    - `oneTrustAssetId` string, uuid: Asset ID for Data Source
    - `classificationProfileId` string, uuid: ClassifiactionProfile ID for Data Source
    - `detectorProfileId` string, uuid: DetectorProfile ID for Data Source
    - `metadataClassificationEnabled` boolean: Metadata Classification Enabled/Disabled
    - `id` integer
  - `dataSourceTriggerList` DataUseGovernanceDataDiscoveryDataSourceTriggerDto[]: Data Source Trigger List
    - `cronExpression` string: Cron expression to define the schedule in standard cron format.
    - `dateTime` DataUseGovernanceDataDiscoveryScheduleDateTime
      - `seconds` string: Seconds field for the cron expression.
      - `minutes` string: Minutes field for the cron expression.
      - `hours` DataUseGovernanceDataDiscoveryScheduleDateTimeField
        - `label` string: Label for the field, typically used for display purposes.
        - `value` string: Value representing the selected option for this field.
        - `cronExp` string: The cron expression fragment for this field.
      - `dayOfMonth` string: Day of month field for the cron expression.
      - `month` string: Month field for the cron expression.
      - `dayOfWeek` DataUseGovernanceDataDiscoveryScheduleDateTimeField
        - `label` string: Label for the field, typically used for display purposes.
        - `value` string: Value representing the selected option for this field.
        - `cronExp` string: The cron expression fragment for this field.
      - `year` string: Year field for the cron expression.
      - `frequency` DataUseGovernanceDataDiscoveryScheduleDateTimeField
        - `label` string: Label for the field, typically used for display purposes.
        - `value` string: Value representing the selected option for this field.
        - `cronExp` string: The cron expression fragment for this field.
      - `frequencyIntervalTracker` string: Frequency interval tracker information.
    - `isRunManual` boolean: Flag to indicate whether the trigger should run manually.
    - `id` integer
    - `runManual` boolean
  - `systemId` string, uuid: SystemTile ID for Data Source
  - `id` string, uuid

## Response `200`

Data source upserted successfully

- DataUseGovernanceDataDiscoveryDataSourceV2Dto
  - `dataSourceName` string: Name of Data Source
  - `systemType` 'AWS' | 'Azure' | 'AzureCosmos' | 'AzureStorage' | 'Box' | 'Cassandra' | 'Databricks' | 'IBMDB2' | 'Exchange' | 'GCP' | 'GoogleWorkspaceGmail' | 'GoogleBigQuery' | 'GoogleBigTable' | 'MongoDB' | 'MySQL' | 'Netezza' | 'Office365' | 'OneDrive' | 'OracleRDBMS' | 'PostgreSQL' | 'AmazonS3' | 'AmazonSageMaker' | 'AmazonBedrock' | 'GCPVertex' | 'AzureFoundry' | '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' | 'Unknown' | 'RELATIONAL_DATABASE' | 'NON_RELATIONAL_DATABASE' | 'FILE' | 'API' | 'Kafka' | 'WorkdayApp': System Type of Data Source
  - `systemName` string: System Name of Data Source
  - `status` 'INACTIVE' | 'ACTIVE' | 'DELETED': Data Source current status
  - `oneTrustAssetId` string, uuid: Asset ID for Data Source
  - `orgGroupId` string, uuid: Org Group ID for Data Source
  - `createdBy` string, uuid: UserID who created Data Source
  - `modifiedBy` string, uuid: UserID who modified Data Source
  - `createdDate` string, date-time: Data Source Created date
  - `modifiedDate` string, date-time: Data Source modified date
  - `dataSourceSettings` DataUseGovernanceDataDiscoveryDataSourceSettingsV2Dto
    - `scannerId` string, uuid: Scanner Id for Data Source
    - `workerNodeName` string: Worker Node Name
    - `scanProfileId` string, uuid: ScanProfile ID for Data Source
    - `scanProfileName` string: ScanProfile Name for Data Source
    - `credentialId` string, uuid: Credential ID for Data Source
    - `credentialName` string: Credential Name for Data Source
    - `oneTrustAssetId` string, uuid: Asset ID for Data Source
    - `classificationProfileId` string, uuid: ClassifiactionProfile ID for Data Source
    - `detectorProfileId` string, uuid: DetectorProfile ID for Data Source
    - `metadataClassificationEnabled` boolean: Metadata Classification Enabled/Disabled
    - `id` integer
  - `dataSourceTriggerList` DataUseGovernanceDataDiscoveryDataSourceTriggerDto[]: Data Source Trigger List
    - `cronExpression` string: Cron expression to define the schedule in standard cron format.
    - `dateTime` DataUseGovernanceDataDiscoveryScheduleDateTime
      - `seconds` string: Seconds field for the cron expression.
      - `minutes` string: Minutes field for the cron expression.
      - `hours` DataUseGovernanceDataDiscoveryScheduleDateTimeField
        - `label` string: Label for the field, typically used for display purposes.
        - `value` string: Value representing the selected option for this field.
        - `cronExp` string: The cron expression fragment for this field.
      - `dayOfMonth` string: Day of month field for the cron expression.
      - `month` string: Month field for the cron expression.
      - `dayOfWeek` DataUseGovernanceDataDiscoveryScheduleDateTimeField
        - `label` string: Label for the field, typically used for display purposes.
        - `value` string: Value representing the selected option for this field.
        - `cronExp` string: The cron expression fragment for this field.
      - `year` string: Year field for the cron expression.
      - `frequency` DataUseGovernanceDataDiscoveryScheduleDateTimeField
        - `label` string: Label for the field, typically used for display purposes.
        - `value` string: Value representing the selected option for this field.
        - `cronExp` string: The cron expression fragment for this field.
      - `frequencyIntervalTracker` string: Frequency interval tracker information.
    - `isRunManual` boolean: Flag to indicate whether the trigger should run manually.
    - `id` integer
    - `runManual` boolean
  - `systemId` string, uuid: SystemTile ID for Data Source
  - `id` string, uuid

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `429`: Too Many Requests. For more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).
- `500`: Internal Server Error

---

[API](https://skmtc.dev/onetrust/apis/data-use-governance-data-discovery.md) - [All operations](https://skmtc.dev/onetrust/apis/data-use-governance-data-discovery/llms.txt) - [OpenAPI document](https://skmtc.dev/onetrust/apis/data-use-governance-data-discovery/revisions/3de7ce93ffb7?raw)
