Data sources API¶
Connect warehouses, sync and browse their schema, profile fields, and resolve duplicate data. See Data sources.
Paths are relative to https://<your-atlas-host>/api/v1. For the API key and headers every
request needs, see Authentication.
Endpoint |
What it does |
|---|---|
Create a new data source connection |
|
List data sources, optionally filtered by workspace |
|
Cross-datasource metadata search |
|
Get a data source by ID |
|
Update a data source |
|
Delete a data source |
|
Test the connection for a data source |
|
Start a background metadata sync for a data source |
|
Start a background connection diagnostic; returns the task execution id to poll |
|
List collections for a data source |
|
List assets in a collection |
|
List fields for an asset |
|
List relationships for an asset |
|
Start background field profiling for a data asset |
|
Start background field profiling for several data assets |
|
Get the latest profile for each field in an asset |
|
Get the latest profile for a single field |
|
List detected data overlaps (duplicate data across datasources) |
|
Resolve an overlap by hiding one of the duplicate assets in the workspace |
|
Dismiss an overlap (will not resurface for this pair) |
Create data source¶
POST /datasources/
Create a new data source connection.
Request body
Field |
Type |
Required |
Description |
|---|---|---|---|
|
string |
Yes |
Unique within your organization. |
|
string |
Yes |
Warehouse type: |
|
string |
Ignored; derived from |
|
|
UUID |
Workspace the source is first shared with; it holds the staged data. Needs admin rights on it. |
|
|
list of UUID |
More workspaces to share the source with. Needs admin rights on each. |
|
|
object |
Connection settings; the keys depend on |
|
|
object |
Secret login details; which keys are required depends on |
|
|
list of string |
Only sync schemas (BigQuery datasets) whose name matches one of these case-sensitive glob
patterns, such as |
|
|
list of string |
Skip schemas whose name matches one of these glob patterns. Wins over |
|
|
UUID |
An OAuth client configuration; required for Databricks |
|
|
string |
Cron expression, in UTC, for automatic metadata syncs. Empty removes the schedule. |
|
|
string |
|
Response
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
object |
|
boolean |
|
list of string |
|
list of string |
|
boolean |
|
datetime |
|
string |
|
string |
|
datetime |
|
string |
|
UUID |
|
string |
|
datetime |
|
UUID |
|
string |
|
boolean |
|
datetime |
|
datetime |
|
datetime |
List data sources¶
GET /datasources/
List data sources, optionally filtered by workspace.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
query |
UUID |
Yes |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
object |
|
boolean |
|
list of string |
|
list of string |
|
boolean |
|
datetime |
|
string |
|
string |
|
datetime |
|
string |
|
UUID |
|
string |
|
datetime |
|
UUID |
|
string |
|
boolean |
|
datetime |
|
datetime |
|
datetime |
Search data source metadata¶
GET /datasources/search
Cross-datasource metadata search.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
query |
string |
Yes |
|
query |
string |
|
|
query |
integer |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
UUID |
|
UUID |
|
string |
|
string |
|
string |
|
string |
|
string |
|
string |
Get data source¶
GET /datasources/{datasource_id}
Get a data source by ID.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
object |
|
boolean |
|
list of string |
|
list of string |
|
boolean |
|
datetime |
|
string |
|
string |
|
datetime |
|
string |
|
UUID |
|
string |
|
datetime |
|
UUID |
|
string |
|
boolean |
|
datetime |
|
datetime |
|
datetime |
Update data source¶
PATCH /datasources/{datasource_id}
Update a data source.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Request body
Field |
Type |
Description |
|---|---|---|
|
string |
|
|
object |
Connection settings; the keys depend on |
|
object |
Secret login details; which keys are required depends on |
|
list of string |
Only sync schemas (BigQuery datasets) whose name matches one of these case-sensitive glob
patterns, such as |
|
list of string |
Skip schemas whose name matches one of these glob patterns. Wins over |
|
UUID |
An OAuth client configuration; required for Databricks |
|
string |
Cron expression, in UTC, for automatic metadata syncs. Empty removes the schedule. |
|
boolean |
Pause ( |
|
string |
|
Response
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
object |
|
boolean |
|
list of string |
|
list of string |
|
boolean |
|
datetime |
|
string |
|
string |
|
datetime |
|
string |
|
UUID |
|
string |
|
datetime |
|
UUID |
|
string |
|
boolean |
|
datetime |
|
datetime |
|
datetime |
Delete data source¶
DELETE /datasources/{datasource_id}
Delete a data source.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response
The raw file content.
Verify data source¶
POST /datasources/{datasource_id}/verify
Test the connection for a data source.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
object |
|
boolean |
|
list of string |
|
list of string |
|
boolean |
|
datetime |
|
string |
|
string |
|
datetime |
|
string |
|
UUID |
|
string |
|
datetime |
|
UUID |
|
string |
|
boolean |
|
datetime |
|
datetime |
|
datetime |
Sync data source¶
POST /datasources/{datasource_id}/sync
Start a background metadata sync for a data source.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
object |
|
boolean |
|
list of string |
|
list of string |
|
boolean |
|
datetime |
|
string |
|
string |
|
datetime |
|
string |
|
UUID |
|
string |
|
datetime |
|
UUID |
|
string |
|
boolean |
|
datetime |
|
datetime |
|
datetime |
Diagnose data source¶
POST /datasources/{datasource_id}/diagnose
Start a background connection diagnostic; returns the task execution id to poll.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response
The raw file content.
List collections¶
GET /datasources/{datasource_id}/collections
List collections for a data source.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
integer |
|
datetime |
|
datetime |
List assets¶
GET /datasources/collections/{collection_id}/assets
List assets in a collection.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
|
query |
boolean |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
integer |
|
integer |
|
datetime |
|
datetime |
List fields¶
GET /datasources/assets/{asset_id}/fields
List fields for an asset.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
boolean |
|
boolean |
|
string |
|
string |
|
integer |
|
number |
|
integer |
|
boolean |
|
list of string |
List relationships¶
GET /datasources/assets/{asset_id}/relationships
List relationships for an asset.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
string |
|
UUID |
|
string |
|
list of string |
|
UUID |
|
string |
|
list of string |
|
string |
|
string |
|
boolean |
|
number |
|
object |
Profile asset¶
POST /datasources/assets/{asset_id}/profile
Start background field profiling for a data asset.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response
Field |
Type |
|---|---|
|
UUID |
|
string |
|
string |
|
string |
|
object |
|
boolean |
|
list of string |
|
list of string |
|
boolean |
|
datetime |
|
string |
|
string |
|
datetime |
|
string |
|
UUID |
|
string |
|
datetime |
|
UUID |
|
string |
|
boolean |
|
datetime |
|
datetime |
|
datetime |
Profile several assets¶
POST /datasources/{datasource_id}/profile-bulk
Start background field profiling for several data assets.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Request body
Field |
Type |
Required |
|---|---|---|
|
UUID |
Yes |
|
list of UUID |
Yes |
Response
The raw file content.
List profiles¶
GET /datasources/assets/{asset_id}/profiles
Get the latest profile for each field in an asset.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
UUID |
|
string |
|
integer |
|
integer |
|
number |
|
integer |
|
number |
|
string |
|
string |
|
number |
|
list of string |
|
datetime |
|
number |
|
number |
|
object |
|
list of object |
|
list of object |
|
list of object |
Get field profile¶
GET /datasources/fields/{field_id}/profile
Get the latest profile for a single field.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
List overlaps¶
GET /datasources/overlaps
List detected data overlaps (duplicate data across datasources).
Parameters
Name |
In |
Type |
|---|---|---|
|
query |
string |
|
query |
UUID |
Response A list of objects:
Field |
Type |
|---|---|
|
UUID |
|
UUID |
|
string |
|
string |
|
UUID |
|
string |
|
string |
|
string |
|
number |
|
object |
|
string |
|
string |
|
UUID |
|
UUID |
|
datetime |
Resolve overlap¶
POST /datasources/overlaps/{overlap_id}/resolve
Resolve an overlap by hiding one of the duplicate assets in the workspace.
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Request body
Field |
Type |
Required |
Description |
|---|---|---|---|
|
UUID |
Yes |
The duplicate table to hide in the workspace; one of the overlap’s two tables. |
|
string |
Ignored; kept for compatibility. |
Response
Field |
Type |
|---|---|
|
UUID |
|
UUID |
|
string |
|
string |
|
UUID |
|
string |
|
string |
|
string |
|
number |
|
object |
|
string |
|
string |
|
UUID |
|
UUID |
|
datetime |
Dismiss overlap¶
POST /datasources/overlaps/{overlap_id}/dismiss
Dismiss an overlap (will not resurface for this pair).
Parameters
Name |
In |
Type |
Required |
|---|---|---|---|
|
path |
UUID |
Yes |
Response
Field |
Type |
|---|---|
|
UUID |
|
UUID |
|
string |
|
string |
|
UUID |
|
string |
|
string |
|
string |
|
number |
|
object |
|
string |
|
string |
|
UUID |
|
UUID |
|
datetime |
What’s next?¶
API overview: authentication, worked examples, and error handling
Webhooks: get events pushed to your systems instead of polling
Service accounts: create the key an integration uses