Last updated: July 22, 2025
DQOps REST API data_sources operations
Rest API controller that operates on data sources that are not yet imported, testing connections or retrieving the metadata (schemas and tables).
get_remote_data_source_schemas
Introspects a list of schemas inside a remote data source, identified by an already imported connection.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
schema_remote_model |
List[SchemaRemoteModel] |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string |
Usage examples
Execution
Execution
Execution
Execution
from dqops import client
from dqops.client.api.data_sources import get_remote_data_source_schemas
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = get_remote_data_source_schemas.sync(
'sample_connection',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.data_sources import get_remote_data_source_schemas
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await get_remote_data_source_schemas.asyncio(
'sample_connection',
client=dqops_client
)
get_remote_data_source_tables
Introspects the list of columns inside a schema on a remote data source that is identified by a connection that was added to DQOps.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
remote_table_list_model |
List[RemoteTableListModel] |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
schema_name |
Schema name | string | |
table_name_contains |
Optional filter to return tables that contain this text inside the table name (case sensitive) | string |
Usage examples
Execution
Execution
Execution
from dqops import client
from dqops.client.api.data_sources import get_remote_data_source_tables
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = await get_remote_data_source_tables.asyncio(
'sample_connection',
'sample_schema',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.data_sources import get_remote_data_source_tables
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = get_remote_data_source_tables.sync(
'sample_connection',
'sample_schema',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.data_sources import get_remote_data_source_tables
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await get_remote_data_source_tables.asyncio(
'sample_connection',
'sample_schema',
client=dqops_client
)
test_connection
Checks if the given remote connection can be opened and if the credentials are valid
Follow the link to see the source code on GitHub.
POST
Return value
Property name | Description | Data type |
---|---|---|
connection_test_model |
ConnectionTestModel |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
verify_name_uniqueness |
Verify if the connection name is unique, the default value is true | boolean |
Request body
Description | Data type | Required |
---|---|---|
Basic connection model | ConnectionModel |
Usage examples
Execution
curl -X POST http://localhost:8888/api/datasource/testconnection^
-H "Accept: application/json"^
-H "Content-Type: application/json"^
-d^
"{\"connection_name\":\"sample_connection\",\"parallel_jobs_limit\":4,\"provider_type\":\"postgresql\",\"postgresql\":{\"host\":\"localhost\",\"port\":\"5432\",\"database\":\"db\",\"user\":\"PASSWD\",\"sslmode\":\"disable\"},\"run_checks_job_template\":{\"connection\":\"sample_connection\",\"enabled\":true},\"run_profiling_checks_job_template\":{\"connection\":\"sample_connection\",\"enabled\":true,\"checkType\":\"profiling\"},\"run_monitoring_checks_job_template\":{\"connection\":\"sample_connection\",\"enabled\":true,\"checkType\":\"monitoring\"},\"run_partition_checks_job_template\":{\"connection\":\"sample_connection\",\"enabled\":true,\"checkType\":\"partitioned\"},\"collect_statistics_job_template\":{\"connection\":\"sample_connection\",\"enabled\":true,\"columnNames\":[]},\"data_clean_job_template\":{\"connection\":\"sample_connection\",\"deleteErrors\":true,\"deleteStatistics\":true,\"deleteCheckResults\":true,\"deleteSensorReadouts\":true,\"deleteErrorSamples\":true,\"deleteIncidents\":true,\"deleteChecksConfiguration\":false},\"advanced_properties\":{},\"can_edit\":false,\"can_collect_statistics\":true,\"can_run_checks\":true,\"can_delete_data\":true}"
Execution
from dqops import client
from dqops.client.api.data_sources import test_connection
from dqops.client.models import CheckSearchFilters, \
ConnectionModel, \
DeleteStoredDataQueueJobParameters, \
PostgresqlParametersSpec, \
PostgresqlSslMode, \
ProviderType, \
StatisticsCollectorSearchFilters
dqops_client = client.Client(
'http://localhost:8888/'
)
request_body = ConnectionModel(
connection_name='sample_connection',
parallel_jobs_limit=4,
provider_type=ProviderType.POSTGRESQL,
postgresql=PostgresqlParametersSpec(
host='localhost',
port='5432',
database='db',
user='PASSWD',
sslmode=PostgresqlSslMode.DISABLE
),
run_checks_job_template=CheckSearchFilters(
connection='sample_connection',
enabled=True
),
run_profiling_checks_job_template=CheckSearchFilters(
check_type=CheckType.PROFILING,
connection='sample_connection',
enabled=True
),
run_monitoring_checks_job_template=CheckSearchFilters(
check_type=CheckType.MONITORING,
connection='sample_connection',
enabled=True
),
run_partition_checks_job_template=CheckSearchFilters(
check_type=CheckType.PARTITIONED,
connection='sample_connection',
enabled=True
),
collect_statistics_job_template=StatisticsCollectorSearchFilters(
column_names=[
],
connection='sample_connection',
enabled=True
),
data_clean_job_template=DeleteStoredDataQueueJobParameters(
connection='sample_connection',
delete_errors=True,
delete_statistics=True,
delete_check_results=True,
delete_sensor_readouts=True,
delete_error_samples=True,
delete_incidents=True,
delete_checks_configuration=False
),
advanced_properties={
},
can_edit=False,
can_collect_statistics=True,
can_run_checks=True,
can_delete_data=True
)
call_result = test_connection.sync(
client=dqops_client,
json_body=request_body
)
Execution
from dqops import client
from dqops.client.api.data_sources import test_connection
from dqops.client.models import CheckSearchFilters, \
ConnectionModel, \
DeleteStoredDataQueueJobParameters, \
PostgresqlParametersSpec, \
PostgresqlSslMode, \
ProviderType, \
StatisticsCollectorSearchFilters
dqops_client = client.Client(
'http://localhost:8888/'
)
request_body = ConnectionModel(
connection_name='sample_connection',
parallel_jobs_limit=4,
provider_type=ProviderType.POSTGRESQL,
postgresql=PostgresqlParametersSpec(
host='localhost',
port='5432',
database='db',
user='PASSWD',
sslmode=PostgresqlSslMode.DISABLE
),
run_checks_job_template=CheckSearchFilters(
connection='sample_connection',
enabled=True
),
run_profiling_checks_job_template=CheckSearchFilters(
check_type=CheckType.PROFILING,
connection='sample_connection',
enabled=True
),
run_monitoring_checks_job_template=CheckSearchFilters(
check_type=CheckType.MONITORING,
connection='sample_connection',
enabled=True
),
run_partition_checks_job_template=CheckSearchFilters(
check_type=CheckType.PARTITIONED,
connection='sample_connection',
enabled=True
),
collect_statistics_job_template=StatisticsCollectorSearchFilters(
column_names=[
],
connection='sample_connection',
enabled=True
),
data_clean_job_template=DeleteStoredDataQueueJobParameters(
connection='sample_connection',
delete_errors=True,
delete_statistics=True,
delete_check_results=True,
delete_sensor_readouts=True,
delete_error_samples=True,
delete_incidents=True,
delete_checks_configuration=False
),
advanced_properties={
},
can_edit=False,
can_collect_statistics=True,
can_run_checks=True,
can_delete_data=True
)
call_result = await test_connection.asyncio(
client=dqops_client,
json_body=request_body
)
Execution
from dqops import client
from dqops.client.api.data_sources import test_connection
from dqops.client.models import CheckSearchFilters, \
ConnectionModel, \
DeleteStoredDataQueueJobParameters, \
PostgresqlParametersSpec, \
PostgresqlSslMode, \
ProviderType, \
StatisticsCollectorSearchFilters
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
request_body = ConnectionModel(
connection_name='sample_connection',
parallel_jobs_limit=4,
provider_type=ProviderType.POSTGRESQL,
postgresql=PostgresqlParametersSpec(
host='localhost',
port='5432',
database='db',
user='PASSWD',
sslmode=PostgresqlSslMode.DISABLE
),
run_checks_job_template=CheckSearchFilters(
connection='sample_connection',
enabled=True
),
run_profiling_checks_job_template=CheckSearchFilters(
check_type=CheckType.PROFILING,
connection='sample_connection',
enabled=True
),
run_monitoring_checks_job_template=CheckSearchFilters(
check_type=CheckType.MONITORING,
connection='sample_connection',
enabled=True
),
run_partition_checks_job_template=CheckSearchFilters(
check_type=CheckType.PARTITIONED,
connection='sample_connection',
enabled=True
),
collect_statistics_job_template=StatisticsCollectorSearchFilters(
column_names=[
],
connection='sample_connection',
enabled=True
),
data_clean_job_template=DeleteStoredDataQueueJobParameters(
connection='sample_connection',
delete_errors=True,
delete_statistics=True,
delete_check_results=True,
delete_sensor_readouts=True,
delete_error_samples=True,
delete_incidents=True,
delete_checks_configuration=False
),
advanced_properties={
},
can_edit=False,
can_collect_statistics=True,
can_run_checks=True,
can_delete_data=True
)
call_result = test_connection.sync(
client=dqops_client,
json_body=request_body
)
Execution
from dqops import client
from dqops.client.api.data_sources import test_connection
from dqops.client.models import CheckSearchFilters, \
ConnectionModel, \
DeleteStoredDataQueueJobParameters, \
PostgresqlParametersSpec, \
PostgresqlSslMode, \
ProviderType, \
StatisticsCollectorSearchFilters
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
request_body = ConnectionModel(
connection_name='sample_connection',
parallel_jobs_limit=4,
provider_type=ProviderType.POSTGRESQL,
postgresql=PostgresqlParametersSpec(
host='localhost',
port='5432',
database='db',
user='PASSWD',
sslmode=PostgresqlSslMode.DISABLE
),
run_checks_job_template=CheckSearchFilters(
connection='sample_connection',
enabled=True
),
run_profiling_checks_job_template=CheckSearchFilters(
check_type=CheckType.PROFILING,
connection='sample_connection',
enabled=True
),
run_monitoring_checks_job_template=CheckSearchFilters(
check_type=CheckType.MONITORING,
connection='sample_connection',
enabled=True
),
run_partition_checks_job_template=CheckSearchFilters(
check_type=CheckType.PARTITIONED,
connection='sample_connection',
enabled=True
),
collect_statistics_job_template=StatisticsCollectorSearchFilters(
column_names=[
],
connection='sample_connection',
enabled=True
),
data_clean_job_template=DeleteStoredDataQueueJobParameters(
connection='sample_connection',
delete_errors=True,
delete_statistics=True,
delete_check_results=True,
delete_sensor_readouts=True,
delete_error_samples=True,
delete_incidents=True,
delete_checks_configuration=False
),
advanced_properties={
},
can_edit=False,
can_collect_statistics=True,
can_run_checks=True,
can_delete_data=True
)
call_result = await test_connection.asyncio(
client=dqops_client,
json_body=request_body
)