Skip to content

Last updated: July 22, 2025

DQOps REST API rule_mining operations

Performs rule mining and proposes the configuration of data quality checks and their rule thresholds for tables.


apply_proposed_monitoring_checks

Applies the proposed configuration of data quality monitoring checks on a table.

Follow the link to see the source code on GitHub.

PUT

http://localhost:8888/api/connections/{connectionName}/schemas/{schemaName}/tables/{tableName}/monitoring/{timeScale}/applyproposal

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 Table name string
time_scale Time scale CheckTimeScale

Request body

 Description                       Data type   Required 
Proposed configuration of data quality checks to be applied on the table and its columns. CheckMiningProposalModel

Usage examples

Execution

curl -X PUT http://localhost:8888/api/connections/sample_connection/schemas/sample_schema/tables/sample_table/monitoring/daily/applyproposal^
    -H "Accept: application/json"^
    -H "Content-Type: application/json"^
    -d^
    "{\"missing_current_statistics\":false,\"missing_current_profiling_check_results\":false,\"column_checks\":{}}"

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_monitoring_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = apply_proposed_monitoring_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_monitoring_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = await apply_proposed_monitoring_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_monitoring_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = apply_proposed_monitoring_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_monitoring_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = await apply_proposed_monitoring_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

apply_proposed_partitioned_checks

Applies the proposed configuration of data quality partitioned checks on a table.

Follow the link to see the source code on GitHub.

PUT

http://localhost:8888/api/connections/{connectionName}/schemas/{schemaName}/tables/{tableName}/partitioned/{timeScale}/applyproposal

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 Table name string
time_scale Time scale CheckTimeScale

Request body

 Description                       Data type   Required 
Proposed configuration of data quality checks to be applied on the table and its columns. CheckMiningProposalModel

Usage examples

Execution

curl -X PUT http://localhost:8888/api/connections/sample_connection/schemas/sample_schema/tables/sample_table/partitioned/daily/applyproposal^
    -H "Accept: application/json"^
    -H "Content-Type: application/json"^
    -d^
    "{\"missing_current_statistics\":false,\"missing_current_profiling_check_results\":false,\"column_checks\":{}}"

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_partitioned_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = apply_proposed_partitioned_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_partitioned_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = await apply_proposed_partitioned_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_partitioned_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = apply_proposed_partitioned_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_partitioned_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                CheckTimeScale, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = await apply_proposed_partitioned_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)

apply_proposed_profiling_checks

Applies the proposed configuration of data quality profiling checks on a table.

Follow the link to see the source code on GitHub.

PUT

http://localhost:8888/api/connections/{connectionName}/schemas/{schemaName}/tables/{tableName}/profiling/applyproposal

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 Table name string

Request body

 Description                       Data type   Required 
Proposed configuration of data quality checks to be applied on the table and its columns. CheckMiningProposalModel

Usage examples

Execution

curl -X PUT http://localhost:8888/api/connections/sample_connection/schemas/sample_schema/tables/sample_table/profiling/applyproposal^
    -H "Accept: application/json"^
    -H "Content-Type: application/json"^
    -d^
    "{\"missing_current_statistics\":false,\"missing_current_profiling_check_results\":false,\"column_checks\":{}}"

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_profiling_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = apply_proposed_profiling_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_profiling_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = await apply_proposed_profiling_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_profiling_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = apply_proposed_profiling_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)

Execution

from dqops import client
from dqops.client.api.rule_mining import apply_proposed_profiling_checks
from dqops.client.models import CheckContainerModel, \
                                CheckMiningProposalModel, \
                                CheckModel, \
                                DefaultRuleSeverityLevel, \
                                FieldModel, \
                                QualityCategoryModel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

call_result = await apply_proposed_profiling_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)

propose_table_monitoring_checks

Proposes the configuration of monitoring checks on a table by generating suggested configuration of checks and their rule thresholds.

Follow the link to see the source code on GitHub.

POST

http://localhost:8888/api/connections/{connectionName}/schemas/{schemaName}/tables/{tableName}/monitoring/{timeScale}/propose

Return value

 Property name   Description                       Data type 
check_mining_proposal_model CheckMiningProposalModel

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 Table name string
time_scale Time scale CheckTimeScale

Request body

 Description                       Data type   Required 
Data quality check mining parameters which configure which rules are analyzed and proposed CheckMiningParametersModel

Usage examples

Execution

curl -X POST http://localhost:8888/api/connections/sample_connection/schemas/sample_schema/tables/sample_table/monitoring/daily/propose^
    -H "Accept: application/json"^
    -H "Content-Type: application/json"^
    -d^
    "{\"severity_level\":\"error\",\"copy_failed_profiling_checks\":false,\"copy_disabled_profiling_checks\":false,\"copy_profiling_checks\":true,\"reconfigure_policy_enabled_checks\":true,\"propose_checks_from_statistics\":true,\"propose_minimum_row_count\":true,\"propose_column_count\":true,\"propose_timeliness_checks\":true,\"propose_nulls_checks\":true,\"propose_not_nulls_checks\":false,\"propose_text_values_data_type\":true,\"propose_column_exists\":true,\"propose_uniqueness_checks\":true,\"propose_numeric_ranges\":true,\"propose_percentile_ranges\":true,\"propose_text_length_ranges\":true,\"propose_word_count_ranges\":true,\"propose_values_in_set_checks\":true,\"values_in_set_treat_rare_values_as_invalid\":true,\"propose_top_values_checks\":true,\"propose_text_conversion_checks\":true,\"propose_bool_percent_checks\":true,\"propose_date_checks\":true,\"propose_standard_pattern_checks\":true,\"detect_regular_expressions\":true,\"propose_whitespace_checks\":true,\"apply_pii_checks\":true,\"propose_custom_checks\":true}"
Expand to see the returned result
{
  "missing_current_statistics" : false,
  "missing_current_profiling_check_results" : false,
  "column_checks" : { }
}

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_monitoring_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = propose_table_monitoring_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_monitoring_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = await propose_table_monitoring_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_monitoring_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = propose_table_monitoring_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_monitoring_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = await propose_table_monitoring_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

propose_table_partitioned_checks

Proposes the configuration of partitioned checks on a table by generating suggested configuration of checks and their rule thresholds.

Follow the link to see the source code on GitHub.

POST

http://localhost:8888/api/connections/{connectionName}/schemas/{schemaName}/tables/{tableName}/partitioned/{timeScale}/propose

Return value

 Property name   Description                       Data type 
check_mining_proposal_model CheckMiningProposalModel

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 Table name string
time_scale Time scale CheckTimeScale

Request body

 Description                       Data type   Required 
Data quality check mining parameters which configure which rules are analyzed and proposed CheckMiningParametersModel

Usage examples

Execution

curl -X POST http://localhost:8888/api/connections/sample_connection/schemas/sample_schema/tables/sample_table/partitioned/daily/propose^
    -H "Accept: application/json"^
    -H "Content-Type: application/json"^
    -d^
    "{\"severity_level\":\"error\",\"copy_failed_profiling_checks\":false,\"copy_disabled_profiling_checks\":false,\"copy_profiling_checks\":true,\"reconfigure_policy_enabled_checks\":true,\"propose_checks_from_statistics\":true,\"propose_minimum_row_count\":true,\"propose_column_count\":true,\"propose_timeliness_checks\":true,\"propose_nulls_checks\":true,\"propose_not_nulls_checks\":false,\"propose_text_values_data_type\":true,\"propose_column_exists\":true,\"propose_uniqueness_checks\":true,\"propose_numeric_ranges\":true,\"propose_percentile_ranges\":true,\"propose_text_length_ranges\":true,\"propose_word_count_ranges\":true,\"propose_values_in_set_checks\":true,\"values_in_set_treat_rare_values_as_invalid\":true,\"propose_top_values_checks\":true,\"propose_text_conversion_checks\":true,\"propose_bool_percent_checks\":true,\"propose_date_checks\":true,\"propose_standard_pattern_checks\":true,\"detect_regular_expressions\":true,\"propose_whitespace_checks\":true,\"apply_pii_checks\":true,\"propose_custom_checks\":true}"
Expand to see the returned result
{
  "missing_current_statistics" : false,
  "missing_current_profiling_check_results" : false,
  "column_checks" : { }
}

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_partitioned_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = propose_table_partitioned_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_partitioned_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = await propose_table_partitioned_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_partitioned_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = propose_table_partitioned_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_partitioned_checks
from dqops.client.models import CheckMiningParametersModel, \
                                CheckTimeScale, \
                                TargetRuleSeverityLevel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = await propose_table_partitioned_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    CheckTimeScale.daily,
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

propose_table_profiling_checks

Proposes the configuration of profiling checks on a table by generating suggested configuration of checks and their rule thresholds.

Follow the link to see the source code on GitHub.

POST

http://localhost:8888/api/connections/{connectionName}/schemas/{schemaName}/tables/{tableName}/profiling/propose

Return value

 Property name   Description                       Data type 
check_mining_proposal_model CheckMiningProposalModel

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 Table name string

Request body

 Description                       Data type   Required 
Data quality check mining parameters which configure which rules are analyzed and proposed CheckMiningParametersModel

Usage examples

Execution

curl -X POST http://localhost:8888/api/connections/sample_connection/schemas/sample_schema/tables/sample_table/profiling/propose^
    -H "Accept: application/json"^
    -H "Content-Type: application/json"^
    -d^
    "{\"severity_level\":\"error\",\"copy_failed_profiling_checks\":false,\"copy_disabled_profiling_checks\":false,\"copy_profiling_checks\":true,\"reconfigure_policy_enabled_checks\":true,\"propose_checks_from_statistics\":true,\"propose_minimum_row_count\":true,\"propose_column_count\":true,\"propose_timeliness_checks\":true,\"propose_nulls_checks\":true,\"propose_not_nulls_checks\":false,\"propose_text_values_data_type\":true,\"propose_column_exists\":true,\"propose_uniqueness_checks\":true,\"propose_numeric_ranges\":true,\"propose_percentile_ranges\":true,\"propose_text_length_ranges\":true,\"propose_word_count_ranges\":true,\"propose_values_in_set_checks\":true,\"values_in_set_treat_rare_values_as_invalid\":true,\"propose_top_values_checks\":true,\"propose_text_conversion_checks\":true,\"propose_bool_percent_checks\":true,\"propose_date_checks\":true,\"propose_standard_pattern_checks\":true,\"detect_regular_expressions\":true,\"propose_whitespace_checks\":true,\"apply_pii_checks\":true,\"propose_custom_checks\":true}"
Expand to see the returned result
{
  "missing_current_statistics" : false,
  "missing_current_profiling_check_results" : false,
  "column_checks" : { }
}

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_profiling_checks
from dqops.client.models import CheckMiningParametersModel, \
                                TargetRuleSeverityLevel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = propose_table_profiling_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_profiling_checks
from dqops.client.models import CheckMiningParametersModel, \
                                TargetRuleSeverityLevel

dqops_client = client.Client(
    'http://localhost:8888/'
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = await propose_table_profiling_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_profiling_checks
from dqops.client.models import CheckMiningParametersModel, \
                                TargetRuleSeverityLevel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = propose_table_profiling_checks.sync(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)

Execution

from dqops import client
from dqops.client.api.rule_mining import propose_table_profiling_checks
from dqops.client.models import CheckMiningParametersModel, \
                                TargetRuleSeverityLevel

token = 's4mp13_4u7h_70k3n'

dqops_client = client.AuthenticatedClient(
    'http://localhost:8888/',
    token=token
)

request_body = CheckMiningParametersModel(
    severity_level=TargetRuleSeverityLevel.ERROR,
    copy_failed_profiling_checks=False,
    copy_disabled_profiling_checks=False,
    copy_profiling_checks=True,
    reconfigure_policy_enabled_checks=True,
    propose_checks_from_statistics=True,
    propose_minimum_row_count=True,
    propose_column_count=True,
    propose_timeliness_checks=True,
    propose_nulls_checks=True,
    propose_not_nulls_checks=False,
    propose_text_values_data_type=True,
    propose_column_exists=True,
    propose_uniqueness_checks=True,
    propose_numeric_ranges=True,
    propose_percentile_ranges=True,
    propose_text_length_ranges=True,
    propose_word_count_ranges=True,
    propose_values_in_set_checks=True,
    values_in_set_treat_rare_values_as_invalid=True,
    propose_top_values_checks=True,
    propose_text_conversion_checks=True,
    propose_bool_percent_checks=True,
    propose_date_checks=True,
    propose_standard_pattern_checks=True,
    detect_regular_expressions=True,
    propose_whitespace_checks=True,
    apply_pii_checks=True,
    propose_custom_checks=True
)

call_result = await propose_table_profiling_checks.asyncio(
    'sample_connection',
    'sample_schema',
    'sample_table',
    client=dqops_client,
    json_body=request_body
)
Expand to see the returned result
CheckMiningProposalModel(
    missing_current_statistics=False,
    missing_current_profiling_check_results=False,
    column_checks={

    }
)