Datafold data_source_added API
The data_source_added API from Datafold — 1 operation(s) for data_source_added.
The data_source_added API from Datafold — 1 operation(s) for data_source_added.
openapi: 3.1.0
info:
contact:
email: support@datafold.com
name: API Support
description: "The Datafold API reference is a guide to our available endpoints and authentication methods.\nIf you're just getting started with Datafold, we recommend first checking out our [documentation](https://docs.datafold.com).\n\n:::info\n To use the Datafold API, you should first create a Datafold API Key,\n which should be stored as a local environment variable named DATAFOLD_API_KEY.\n This can be set in your Datafold Cloud's Settings under the Account page.\n:::"
title: Datafold Audit Logs data_source_added API
version: latest
servers:
- description: Default server
url: https://app.datafold.com
security:
- ApiKeyAuth: []
tags:
- name: data_source_added
paths:
/api/v1/data_sources:
post:
operationId: create_new_datasource_api_v1_data_sources_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ApiDataSourceForm'
required: true
responses:
'200':
content:
application/json:
schema:
discriminator:
mapping:
athena: '#/components/schemas/ApiDataSourceAwsAthena'
aws_s3: '#/components/schemas/ApiDataSourceS3'
azure_synapse: '#/components/schemas/ApiDataSourceAzureSynapse'
bigquery: '#/components/schemas/ApiDataSourceBigQuery'
databricks: '#/components/schemas/ApiDataSourceDatabricks'
db2: '#/components/schemas/ApiDataSourceDB2'
dremio: '#/components/schemas/ApiDataSourceDremio'
duckdb: '#/components/schemas/ApiDataSourceDuckDB'
files_azure_datalake: '#/components/schemas/ApiDataSourceAzureDataLake'
google_cloud_storage: '#/components/schemas/ApiDataSourceGCS'
mariadb: '#/components/schemas/ApiDataSourceMariaDB'
microsoft_fabric: '#/components/schemas/ApiDataSourceMicrosoftFabric'
mongodb: '#/components/schemas/ApiDataSourceMongoDB'
mssql: '#/components/schemas/ApiDataSourceMSSQL'
mysql: '#/components/schemas/ApiDataSourceMySQL'
netezza: '#/components/schemas/ApiDataSourceNetezza'
oracle: '#/components/schemas/ApiDataSourceOracle'
pg: '#/components/schemas/ApiDataSourcePostgres'
postgres_aurora: '#/components/schemas/ApiDataSourcePostgresAurora'
postgres_aws_rds: '#/components/schemas/ApiDataSourcePostgresRds'
redshift: '#/components/schemas/ApiDataSourceRedshift'
sap_hana: '#/components/schemas/ApiDataSourceSapHana'
snowflake: '#/components/schemas/ApiDataSourceSnowflake'
starburst: '#/components/schemas/ApiDataSourceStarburst'
teradata: '#/components/schemas/ApiDataSourceTeradata'
trino: '#/components/schemas/ApiDataSourceTrino'
vertica: '#/components/schemas/ApiDataSourceVertica'
propertyName: type
oneOf:
- $ref: '#/components/schemas/ApiDataSourceBigQuery'
- $ref: '#/components/schemas/ApiDataSourceDatabricks'
- $ref: '#/components/schemas/ApiDataSourceDuckDB'
- $ref: '#/components/schemas/ApiDataSourceMongoDB'
- $ref: '#/components/schemas/ApiDataSourceMySQL'
- $ref: '#/components/schemas/ApiDataSourceMariaDB'
- $ref: '#/components/schemas/ApiDataSourceMSSQL'
- $ref: '#/components/schemas/ApiDataSourceOracle'
- $ref: '#/components/schemas/ApiDataSourcePostgres'
- $ref: '#/components/schemas/ApiDataSourcePostgresAurora'
- $ref: '#/components/schemas/ApiDataSourcePostgresRds'
- $ref: '#/components/schemas/ApiDataSourceRedshift'
- $ref: '#/components/schemas/ApiDataSourceTeradata'
- $ref: '#/components/schemas/ApiDataSourceSapHana'
- $ref: '#/components/schemas/ApiDataSourceDB2'
- $ref: '#/components/schemas/ApiDataSourceAwsAthena'
- $ref: '#/components/schemas/ApiDataSourceSnowflake'
- $ref: '#/components/schemas/ApiDataSourceDremio'
- $ref: '#/components/schemas/ApiDataSourceStarburst'
- $ref: '#/components/schemas/ApiDataSourceNetezza'
- $ref: '#/components/schemas/ApiDataSourceAzureDataLake'
- $ref: '#/components/schemas/ApiDataSourceGCS'
- $ref: '#/components/schemas/ApiDataSourceS3'
- $ref: '#/components/schemas/ApiDataSourceAzureSynapse'
- $ref: '#/components/schemas/ApiDataSourceMicrosoftFabric'
- $ref: '#/components/schemas/ApiDataSourceVertica'
- $ref: '#/components/schemas/ApiDataSourceTrino'
title: Response Create New Datasource Api V1 Data Sources Post
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
summary: Create a data source
tags:
- data_source_added
components:
schemas:
DB2Config:
description: Configuration for IBM DB2 database connection.
properties:
connection_timeout:
default: 30
description: Connection timeout in seconds
title: Connection Timeout
type: integer
current_schema:
anyOf:
- type: string
- type: 'null'
description: Default schema to use (SET CURRENT SCHEMA)
title: Current Schema
dbname:
description: Database name
title: Dbname
type: string
host:
description: DB2 server hostname
maxLength: 128
title: Host
type: string
password:
description: Database password
format: password
title: Password
type: string
writeOnly: true
pool_size:
default: 1
description: Number of connections in pool
title: Pool Size
type: integer
port:
default: 50000
description: DB2 server port
title: Port
type: integer
ssl:
default: false
description: Enable SSL connection
title: Ssl
type: boolean
ssl_certificate:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
description: SSL server certificate (PEM format or file path)
title: Ssl Certificate
user:
description: Database username
title: User
type: string
required:
- host
- dbname
- user
- password
title: DB2Config
type: object
PostgreSQLConfig:
properties:
dbname:
title: Database Name
type: string
host:
maxLength: 128
title: Host
type: string
password:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
title: Password
port:
default: 5432
title: Port
type: integer
role:
anyOf:
- type: string
- type: 'null'
title: Role (case sensitive)
rootcert:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
title: Root certificate
sslmode:
$ref: '#/components/schemas/SslMode'
default: prefer
title: SSL Mode
user:
title: User
type: string
required:
- host
- user
- dbname
title: PostgreSQLConfig
type: object
ApiDataSourcePostgresAurora:
properties:
accessible:
default: true
title: Accessible
type: boolean
catalog_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Exclude List
catalog_include_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Include List
created_from:
anyOf:
- type: string
- type: 'null'
title: Created From
data_retention_days:
anyOf:
- type: integer
- type: 'null'
title: Data Retention Days
disable_profiling:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Profiling
disable_schema_indexing:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Schema Indexing
float_tolerance:
anyOf:
- type: number
- type: 'null'
default: 0.0
title: Float Tolerance
group_ids:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Group Ids
groups:
anyOf:
- additionalProperties:
type: boolean
type: object
- type: 'null'
title: Groups
hidden:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Hidden
id:
anyOf:
- type: integer
- type: 'null'
title: Id
is_paused:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Is Paused
last_test:
anyOf:
- $ref: '#/components/schemas/ApiDataSourceTestStatus'
- type: 'null'
lineage_schedule:
anyOf:
- type: string
- type: 'null'
title: Lineage Schedule
max_allowed_connections:
anyOf:
- type: integer
- type: 'null'
title: Max Allowed Connections
name:
title: Name
type: string
oauth_dwh_active:
anyOf:
- type: boolean
- type: 'null'
title: Oauth Dwh Active
options:
anyOf:
- $ref: '#/components/schemas/PostgreSQLAuroraConfig'
- type: 'null'
profile_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Profile Exclude List
profile_include_list:
anyOf:
- type: string
- type: 'null'
title: Profile Include List
profile_schedule:
anyOf:
- type: string
- type: 'null'
title: Profile Schedule
queue_name:
anyOf:
- type: string
- type: 'null'
title: Queue Name
scheduled_queue_name:
anyOf:
- type: string
- type: 'null'
title: Scheduled Queue Name
schema_indexing_schedule:
anyOf:
- type: string
- type: 'null'
title: Schema Indexing Schedule
schema_max_age_s:
anyOf:
- type: integer
- type: 'null'
title: Schema Max Age S
secret_id:
anyOf:
- type: integer
- type: 'null'
title: Secret Id
source:
anyOf:
- type: string
- type: 'null'
title: Source
temp_schema:
anyOf:
- type: string
- type: 'null'
title: Temp Schema
type:
const: postgres_aurora
title: Type
type: string
view_only:
anyOf:
- type: boolean
- type: 'null'
default: false
title: View Only
required:
- name
- type
title: ApiDataSourcePostgresAurora
type: object
SSLVerification:
enum:
- full
- none
- ca
title: SSLVerification
type: string
ApiDataSourceTeradata:
properties:
accessible:
default: true
title: Accessible
type: boolean
catalog_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Exclude List
catalog_include_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Include List
created_from:
anyOf:
- type: string
- type: 'null'
title: Created From
data_retention_days:
anyOf:
- type: integer
- type: 'null'
title: Data Retention Days
disable_profiling:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Profiling
disable_schema_indexing:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Schema Indexing
float_tolerance:
anyOf:
- type: number
- type: 'null'
default: 0.0
title: Float Tolerance
group_ids:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Group Ids
groups:
anyOf:
- additionalProperties:
type: boolean
type: object
- type: 'null'
title: Groups
hidden:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Hidden
id:
anyOf:
- type: integer
- type: 'null'
title: Id
is_paused:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Is Paused
last_test:
anyOf:
- $ref: '#/components/schemas/ApiDataSourceTestStatus'
- type: 'null'
lineage_schedule:
anyOf:
- type: string
- type: 'null'
title: Lineage Schedule
max_allowed_connections:
anyOf:
- type: integer
- type: 'null'
title: Max Allowed Connections
name:
title: Name
type: string
oauth_dwh_active:
anyOf:
- type: boolean
- type: 'null'
title: Oauth Dwh Active
options:
anyOf:
- $ref: '#/components/schemas/TeradataConfig'
- type: 'null'
profile_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Profile Exclude List
profile_include_list:
anyOf:
- type: string
- type: 'null'
title: Profile Include List
profile_schedule:
anyOf:
- type: string
- type: 'null'
title: Profile Schedule
queue_name:
anyOf:
- type: string
- type: 'null'
title: Queue Name
scheduled_queue_name:
anyOf:
- type: string
- type: 'null'
title: Scheduled Queue Name
schema_indexing_schedule:
anyOf:
- type: string
- type: 'null'
title: Schema Indexing Schedule
schema_max_age_s:
anyOf:
- type: integer
- type: 'null'
title: Schema Max Age S
secret_id:
anyOf:
- type: integer
- type: 'null'
title: Secret Id
source:
anyOf:
- type: string
- type: 'null'
title: Source
temp_schema:
anyOf:
- type: string
- type: 'null'
title: Temp Schema
type:
const: teradata
title: Type
type: string
view_only:
anyOf:
- type: boolean
- type: 'null'
default: false
title: View Only
required:
- name
- type
title: ApiDataSourceTeradata
type: object
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
title: Location
type: array
msg:
title: Message
type: string
type:
title: Error Type
type: string
required:
- loc
- msg
- type
title: ValidationError
type: object
TestResultStep:
properties:
result:
anyOf:
- {}
- type: 'null'
title: Result
status:
$ref: '#/components/schemas/JobStatus'
step:
$ref: '#/components/schemas/ConfigurationCheckStep'
required:
- step
- status
title: TestResultStep
type: object
VerticaConfig:
properties:
dbname:
title: Database Name
type: string
host:
maxLength: 128
title: Host
type: string
password:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
title: Password
port:
default: 5433
title: Port
type: integer
role:
anyOf:
- type: string
- type: 'null'
title: Role (case sensitive)
sslmode:
$ref: '#/components/schemas/SslMode'
default: prefer
title: SSL Mode
user:
title: User
type: string
required:
- host
- user
- dbname
title: VerticaConfig
type: object
ApiDataSourcePostgres:
properties:
accessible:
default: true
title: Accessible
type: boolean
catalog_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Exclude List
catalog_include_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Include List
created_from:
anyOf:
- type: string
- type: 'null'
title: Created From
data_retention_days:
anyOf:
- type: integer
- type: 'null'
title: Data Retention Days
disable_profiling:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Profiling
disable_schema_indexing:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Schema Indexing
float_tolerance:
anyOf:
- type: number
- type: 'null'
default: 0.0
title: Float Tolerance
group_ids:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Group Ids
groups:
anyOf:
- additionalProperties:
type: boolean
type: object
- type: 'null'
title: Groups
hidden:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Hidden
id:
anyOf:
- type: integer
- type: 'null'
title: Id
is_paused:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Is Paused
last_test:
anyOf:
- $ref: '#/components/schemas/ApiDataSourceTestStatus'
- type: 'null'
lineage_schedule:
anyOf:
- type: string
- type: 'null'
title: Lineage Schedule
max_allowed_connections:
anyOf:
- type: integer
- type: 'null'
title: Max Allowed Connections
name:
title: Name
type: string
oauth_dwh_active:
anyOf:
- type: boolean
- type: 'null'
title: Oauth Dwh Active
options:
anyOf:
- $ref: '#/components/schemas/PostgreSQLConfig'
- type: 'null'
profile_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Profile Exclude List
profile_include_list:
anyOf:
- type: string
- type: 'null'
title: Profile Include List
profile_schedule:
anyOf:
- type: string
- type: 'null'
title: Profile Schedule
queue_name:
anyOf:
- type: string
- type: 'null'
title: Queue Name
scheduled_queue_name:
anyOf:
- type: string
- type: 'null'
title: Scheduled Queue Name
schema_indexing_schedule:
anyOf:
- type: string
- type: 'null'
title: Schema Indexing Schedule
schema_max_age_s:
anyOf:
- type: integer
- type: 'null'
title: Schema Max Age S
secret_id:
anyOf:
- type: integer
- type: 'null'
title: Secret Id
source:
anyOf:
- type: string
- type: 'null'
title: Source
temp_schema:
anyOf:
- type: string
- type: 'null'
title: Temp Schema
type:
const: pg
title: Type
type: string
view_only:
anyOf:
- type: boolean
- type: 'null'
default: false
title: View Only
required:
- name
- type
title: ApiDataSourcePostgres
type: object
MicrosoftFabricConfig:
properties:
client_id:
description: Microsoft Entra ID Application (Client) ID
title: Application (Client) ID
type: string
client_secret:
description: Microsoft Entra ID Application Client Secret
format: password
title: Client Secret
type: string
writeOnly: true
dbname:
title: Dbname
type: string
host:
maxLength: 128
title: Host
type: string
session_script:
anyOf:
- type: string
- type: 'null'
description: The script to execute on connection; e.g. ALTER SESSION SET CONTAINER = ...
title: Init script
tenant_id:
description: Microsoft Entra ID Tenant ID
title: Tenant ID
type: string
required:
- host
- dbname
- tenant_id
- client_id
- client_secret
title: MicrosoftFabricConfig
type: object
CertCheck:
enum:
- disable
- dremio-cloud
- customcert
title: CertCheck
type: string
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
title: Detail
type: array
title: HTTPValidationError
type: object
ApiDataSourceMariaDB:
properties:
accessible:
default: true
title: Accessible
type: boolean
catalog_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Exclude List
catalog_include_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Include List
created_from:
anyOf:
- type: string
- type: 'null'
title: Created From
data_retention_days:
anyOf:
- type: integer
- type: 'null'
title: Data Retention Days
disable_profiling:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Profiling
disable_schema_indexing:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Schema Indexing
float_tolerance:
anyOf:
- type: number
- type: 'null'
default: 0.0
title: Float Tolerance
group_ids:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Group Ids
groups:
anyOf:
- additionalProperties:
type: boolean
type: object
- type: 'null'
title: Groups
hidden:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Hidden
id:
anyOf:
- type: integer
- type: 'null'
title: Id
is_paused:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Is Paused
last_test:
anyOf:
- $ref: '#/components/schemas/ApiDataSourceTestStatus'
- type: 'null'
lineage_schedule:
anyOf:
- type: string
- type: 'null'
title: Lineage Schedule
max_allowed_connections:
anyOf:
- type: integer
- type: 'null'
title: Max Allowed Connections
name:
title: Name
type: string
oauth_dwh_active:
anyOf:
- type: boolean
- type: 'null'
title: Oauth Dwh Active
options:
anyOf:
- $ref: '#/components/schemas/MariaDBConfig'
- type: 'null'
profile_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Profile Exclude List
profile_include_list:
anyOf:
- type: string
- type: 'null'
title: Profile Include List
profile_schedule:
anyOf:
- type: string
- type: 'null'
title: Profile Schedule
queue_name:
anyOf:
- type: string
- type: 'null'
title: Queue Name
scheduled_queue_name:
anyOf:
- type: string
- type: 'null'
title: Scheduled Queue Name
schema_indexing_schedule:
anyOf:
- type: string
- type: 'null'
title: Schema Indexing Schedule
schema_max_age_s:
anyOf:
- type: integer
- type: 'null'
title: Schema Max Age S
secret_id:
anyOf:
- type: integer
- type: 'null'
title: Secret Id
source:
anyOf:
- type: string
- type: 'null'
title: Source
temp_schema:
anyOf:
- type: string
- type: 'null'
title: Temp Schema
type:
const: mariadb
title: Type
type: string
view_only:
anyOf:
- type: boolean
- type: 'null'
default: false
title: View Only
required:
- name
- type
title: ApiDataSourceMariaDB
type: object
AzureDataLakeConfig:
properties:
account_name:
title: Account Name
type: string
client_id:
anyOf:
- maxLength: 1024
type: string
- type: 'null'
title: Client Id
client_secret:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
title: Client Secret
materialize_max_rows:
anyOf:
- type: integer
- type: 'null'
title: Materialize Max Rows
materialize_path:
anyOf:
- type: string
- type: 'null'
title: Materialize Path
tenant_id:
anyOf:
- maxLength: 1024
type: string
- type: 'null'
title: Tenant Id
required:
- account_name
- tenant_id
- client_id
title: AzureDataLakeConfig
type: object
StarburstConfig:
properties:
host:
maxLength: 128
title: Host
type: string
password:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
title: Password
port:
default: 443
title: Port
type: integer
tls:
default: true
title: Encryption
type: boolean
token:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
title: Token
username:
anyOf:
- type: string
- type: 'null'
title: User ID (optional)
required:
- host
title: StarburstConfig
type: object
ApiDataSourceDB2:
properties:
accessible:
default: true
title: Accessible
type: boolean
catalog_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Exclude List
catalog_include_list:
anyOf:
- type: string
- type: 'null'
title: Catalog Include List
created_from:
anyOf:
- type: string
- type: 'null'
title: Created From
data_retention_days:
anyOf:
- type: integer
- type: 'null'
title: Data Retention Days
disable_profiling:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Profiling
disable_schema_indexing:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Disable Schema Indexing
float_tolerance:
anyOf:
- type: number
- type: 'null'
default: 0.0
title: Float Tolerance
group_ids:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Group Ids
groups:
anyOf:
- additionalProperties:
type: boolean
type: object
- type: 'null'
title: Groups
hidden:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Hidden
id:
anyOf:
- type: integer
- type: 'null'
title: Id
is_paused:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Is Paused
last_test:
anyOf:
- $ref: '#/components/schemas/ApiDataSourceTestStatus'
- type: 'null'
lineage_schedule:
anyOf:
- type: string
- type: 'null'
title: Lineage Schedule
max_allowed_connections:
anyOf:
- type: integer
- type: 'null'
title: Max Allowed Connections
name:
title: Name
type: string
oauth_dwh_active:
anyOf:
- type: boolean
- type: 'null'
title: Oauth Dwh Active
options:
anyOf:
- $ref: '#/components/schemas/DB2Config'
- type: 'null'
profile_exclude_list:
anyOf:
- type: string
- type: 'null'
title: Profile Exclude List
profile_include_list:
anyOf:
- type: string
- type: 'null'
title: Profile Include List
profile_schedule:
anyOf:
- type: string
- type: 'null'
title: Profile Schedule
queue_name:
anyOf:
- type: string
- type: 'null'
title: Queue Name
scheduled_queue_name:
anyOf:
- type
# --- truncated at 32 KB (148 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/datafold/refs/heads/main/openapi/datafold-data-source-added-api-openapi.yml