Last updated: July 22, 2025
DQOps REST API incidents operations
Data quality incidents controller that supports reading and updating data quality incidents, such as changing the incident status or assigning an external ticket number.
disable_checks_for_incident
Disables all data quality checks that caused a given data quality incident.
Follow the link to see the source code on GitHub.
POST
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
year |
Year when the incident was first seen | long | |
month |
Month when the incident was first seen | long | |
incident_id |
Incident id | string |
Usage examples
Execution
Execution
Execution
Execution
from dqops import client
from dqops.client.api.incidents import disable_checks_for_incident
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = disable_checks_for_incident.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.incidents import disable_checks_for_incident
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = await disable_checks_for_incident.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
find_connection_incident_stats
Returns a list of connection names with incident statistics - the count of recent open incidents.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
incidents_per_connection_model |
List[IncidentsPerConnectionModel] |
Usage examples
Execution
Expand to see the returned result
[ {
"connection" : "datalake",
"openIncidents" : 40,
"mostRecentFirstSeen" : "2024-06-01T11:45:22Z"
}, {
"connection" : "datalake",
"openIncidents" : 40,
"mostRecentFirstSeen" : "2024-06-01T11:45:22Z"
}, {
"connection" : "datalake",
"openIncidents" : 40,
"mostRecentFirstSeen" : "2024-06-01T11:45:22Z"
} ]
Execution
from dqops import client
from dqops.client.api.incidents import find_connection_incident_stats
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = find_connection_incident_stats.sync(
client=dqops_client
)
Expand to see the returned result
[
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
)
]
Execution
from dqops import client
from dqops.client.api.incidents import find_connection_incident_stats
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = await find_connection_incident_stats.asyncio(
client=dqops_client
)
Expand to see the returned result
[
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
)
]
Execution
from dqops import client
from dqops.client.api.incidents import find_connection_incident_stats
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = find_connection_incident_stats.sync(
client=dqops_client
)
Expand to see the returned result
[
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
)
]
Execution
from dqops import client
from dqops.client.api.incidents import find_connection_incident_stats
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await find_connection_incident_stats.asyncio(
client=dqops_client
)
Expand to see the returned result
[
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
),
IncidentsPerConnectionModel(
connection='datalake',
open_incidents=40,
most_recent_first_seen='2024-06-01T11:45:22Z'
)
]
find_recent_incidents_on_connection
Returns a list of recent data quality incidents.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
incident_model |
List[IncidentModel] |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
months |
Number of recent months to load, the default is 3 months | long | |
open |
Returns open incidents, when the parameter is missing, the default value is true | boolean | |
acknowledged |
Returns acknowledged incidents, when the parameter is missing, the default value is true | boolean | |
resolved |
Returns resolved incidents, when the parameter is missing, the default value is false | boolean | |
muted |
Returns muted incidents, when the parameter is missing, the default value is false | boolean | |
severity |
Returns incidents with given severity level | long | |
page |
Page number, the first page is 1 | long | |
limit |
Page size, the default is 50 rows | long | |
filter |
Optional full text search filter that supports prefix, suffix and nest*ed filter expressions | string | |
dimension |
Optional filter for the data quality dimension name, case sensitive | string | |
category |
Optional filter for the data quality check category name, case sensitive | string | |
order |
Optional sort order, the default sort order is by the number of failed data quality checks | IncidentSortOrder | |
direction |
Optional sort direction, the default sort direction is ascending | SortDirection |
Usage examples
Execution
Expand to see the returned result
[ {
"incidentId" : "c05e6544-46e5-47ed-b8c2-b72927199976",
"connection" : "datalake",
"year" : 2024,
"month" : 6,
"schema" : "public",
"table" : "fact_sales",
"firstSeen" : "2024-06-01T11:45:22Z",
"qualityDimension" : "Completeness",
"highestSeverity" : 2,
"minimumSeverity" : 0,
"failedChecksCount" : 5,
"status" : "open"
}, {
"incidentId" : "c05e6544-46e5-47ed-b8c2-b72927199976",
"connection" : "datalake",
"year" : 2024,
"month" : 6,
"schema" : "public",
"table" : "fact_sales",
"firstSeen" : "2024-06-01T11:45:22Z",
"qualityDimension" : "Completeness",
"highestSeverity" : 2,
"minimumSeverity" : 0,
"failedChecksCount" : 5,
"status" : "open"
}, {
"incidentId" : "c05e6544-46e5-47ed-b8c2-b72927199976",
"connection" : "datalake",
"year" : 2024,
"month" : 6,
"schema" : "public",
"table" : "fact_sales",
"firstSeen" : "2024-06-01T11:45:22Z",
"qualityDimension" : "Completeness",
"highestSeverity" : 2,
"minimumSeverity" : 0,
"failedChecksCount" : 5,
"status" : "open"
} ]
Execution
from dqops import client
from dqops.client.api.incidents import find_recent_incidents_on_connection
from dqops.client.models import IncidentSortOrder, \
SortDirection
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = find_recent_incidents_on_connection.sync(
'sample_connection',
client=dqops_client
)
Expand to see the returned result
[
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
Execution
from dqops import client
from dqops.client.api.incidents import find_recent_incidents_on_connection
from dqops.client.models import IncidentSortOrder, \
SortDirection
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = await find_recent_incidents_on_connection.asyncio(
'sample_connection',
client=dqops_client
)
Expand to see the returned result
[
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
Execution
from dqops import client
from dqops.client.api.incidents import find_recent_incidents_on_connection
from dqops.client.models import IncidentSortOrder, \
SortDirection
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = find_recent_incidents_on_connection.sync(
'sample_connection',
client=dqops_client
)
Expand to see the returned result
[
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
Execution
from dqops import client
from dqops.client.api.incidents import find_recent_incidents_on_connection
from dqops.client.models import IncidentSortOrder, \
SortDirection
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await find_recent_incidents_on_connection.asyncio(
'sample_connection',
client=dqops_client
)
Expand to see the returned result
[
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
),
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
find_top_incidents_grouped
Finds the most recent incidents grouped by one of the incident's attribute, such as a data quality dimension, a data quality check category or the connection name.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
top_incidents_model |
TopIncidentsModel |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
status |
Incident status to group. When this parameter is missing, the 'open' (new) incidents are grouped by default. | IncidentStatus | |
group_by |
Incident grouping key. When this parameter is missing, returns incidents grouped by the data quality check category. | TopIncidentGrouping | |
limit |
The result limit for each group. When this parameter is missing, returns the default limit of 10 | long | |
days |
Optional filter to configure a time window before now to scan for incidents based on the incident's first seen attribute. | long |
Usage examples
Execution
Expand to see the returned result
{
"grouping" : "dimension",
"status" : "open",
"topIncidents" : {
"Completeness" : [ {
"incidentId" : "c05e6544-46e5-47ed-b8c2-b72927199976",
"connection" : "datalake",
"year" : 2024,
"month" : 6,
"schema" : "public",
"table" : "fact_sales",
"firstSeen" : "2024-06-01T11:45:22Z",
"qualityDimension" : "Completeness",
"highestSeverity" : 2,
"minimumSeverity" : 0,
"failedChecksCount" : 5,
"status" : "open"
} ]
},
"openIncidentSeverityLevelCounts" : {
"warningCounts" : {
"totalCount" : 294,
"countFromLast24h" : 3,
"countFromLast7days" : 22,
"currentMonthCount" : 129,
"currentMonthDate" : "2024-02-01",
"previousMonthCount" : 165,
"previousMonthDate" : "2024-01-01"
}
}
}
Execution
from dqops import client
from dqops.client.api.incidents import find_top_incidents_grouped
from dqops.client.models import IncidentStatus, \
TopIncidentGrouping
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = find_top_incidents_grouped.sync(
client=dqops_client
)
Expand to see the returned result
TopIncidentsModel(
grouping=TopIncidentGrouping.DIMENSION,
status=IncidentStatus.OPEN,
top_incidents={
'Completeness': [
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
},
open_incident_severity_level_counts=IncidentSeverityLevelCountsModel(
warning_counts=IncidentCountsModel(
total_count=294,
count_from_last24h=3,
count_from_last7days=22,
current_month_count=129,
current_month_date=Some date/time value: [2024-02-01],
previous_month_count=165,
previous_month_date=Some date/time value: [2024-01-01]
)
)
)
Execution
from dqops import client
from dqops.client.api.incidents import find_top_incidents_grouped
from dqops.client.models import IncidentStatus, \
TopIncidentGrouping
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = await find_top_incidents_grouped.asyncio(
client=dqops_client
)
Expand to see the returned result
TopIncidentsModel(
grouping=TopIncidentGrouping.DIMENSION,
status=IncidentStatus.OPEN,
top_incidents={
'Completeness': [
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
},
open_incident_severity_level_counts=IncidentSeverityLevelCountsModel(
warning_counts=IncidentCountsModel(
total_count=294,
count_from_last24h=3,
count_from_last7days=22,
current_month_count=129,
current_month_date=Some date/time value: [2024-02-01],
previous_month_count=165,
previous_month_date=Some date/time value: [2024-01-01]
)
)
)
Execution
from dqops import client
from dqops.client.api.incidents import find_top_incidents_grouped
from dqops.client.models import IncidentStatus, \
TopIncidentGrouping
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = find_top_incidents_grouped.sync(
client=dqops_client
)
Expand to see the returned result
TopIncidentsModel(
grouping=TopIncidentGrouping.DIMENSION,
status=IncidentStatus.OPEN,
top_incidents={
'Completeness': [
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
},
open_incident_severity_level_counts=IncidentSeverityLevelCountsModel(
warning_counts=IncidentCountsModel(
total_count=294,
count_from_last24h=3,
count_from_last7days=22,
current_month_count=129,
current_month_date=Some date/time value: [2024-02-01],
previous_month_count=165,
previous_month_date=Some date/time value: [2024-01-01]
)
)
)
Execution
from dqops import client
from dqops.client.api.incidents import find_top_incidents_grouped
from dqops.client.models import IncidentStatus, \
TopIncidentGrouping
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await find_top_incidents_grouped.asyncio(
client=dqops_client
)
Expand to see the returned result
TopIncidentsModel(
grouping=TopIncidentGrouping.DIMENSION,
status=IncidentStatus.OPEN,
top_incidents={
'Completeness': [
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
]
},
open_incident_severity_level_counts=IncidentSeverityLevelCountsModel(
warning_counts=IncidentCountsModel(
total_count=294,
count_from_last24h=3,
count_from_last7days=22,
current_month_count=129,
current_month_date=Some date/time value: [2024-02-01],
previous_month_count=165,
previous_month_date=Some date/time value: [2024-01-01]
)
)
)
get_incident
Return a single data quality incident's details.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
incident_model |
IncidentModel |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
year |
Year when the incident was first seen | long | |
month |
Month when the incident was first seen | long | |
incident_id |
Incident id | string |
Usage examples
Execution
curl http://localhost:8888/api/incidents/sample_connection/2007/10/sample_incident^
-H "Accept: application/json"
Expand to see the returned result
{
"incidentId" : "c05e6544-46e5-47ed-b8c2-b72927199976",
"connection" : "datalake",
"year" : 2024,
"month" : 6,
"schema" : "public",
"table" : "fact_sales",
"firstSeen" : "2024-06-01T11:45:22Z",
"qualityDimension" : "Completeness",
"highestSeverity" : 2,
"minimumSeverity" : 0,
"failedChecksCount" : 5,
"status" : "open"
}
Execution
from dqops import client
from dqops.client.api.incidents import get_incident
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = get_incident.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
Execution
from dqops import client
from dqops.client.api.incidents import get_incident
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = await get_incident.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
Execution
from dqops import client
from dqops.client.api.incidents import get_incident
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = get_incident.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
Execution
from dqops import client
from dqops.client.api.incidents import get_incident
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await get_incident.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
IncidentModel(
incident_id='c05e6544-46e5-47ed-b8c2-b72927199976',
connection='datalake',
year=2024,
month=6,
schema='public',
table='fact_sales',
first_seen='2024-06-01T11:45:22Z',
quality_dimension='Completeness',
highest_severity=2,
minimum_severity=0,
failed_checks_count=5,
status=IncidentStatus.OPEN
)
get_incident_histogram
Generates a histogram of data quality issues for each day, returning the number of data quality issues on that day. The other histograms are by a column name and by a check name.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
issue_histogram_model |
IssueHistogramModel |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
year |
Year when the incident was first seen | long | |
month |
Month when the incident was first seen | long | |
incident_id |
Incident id | string | |
filter |
Optional full text search filter that supports prefix, suffix and nest*ed filter expressions | string | |
days |
Optional filter for a number of recent days to read the related issues | long | |
date |
Optional date filter | string | |
column |
Optional column name filter | string | |
check |
Optional check name filter | string |
Usage examples
Execution
Execution
Execution
from dqops import client
from dqops.client.api.incidents import get_incident_histogram
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = await get_incident_histogram.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.incidents import get_incident_histogram
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = get_incident_histogram.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.incidents import get_incident_histogram
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await get_incident_histogram.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
get_incident_issues
Return a paged list of failed data quality check results that are related to an incident.
Follow the link to see the source code on GitHub.
GET
Return value
Property name | Description | Data type |
---|---|---|
check_result_entry_model |
List[CheckResultEntryModel] |
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
year |
Year when the incident was first seen | long | |
month |
Month when the incident was first seen | long | |
incident_id |
Incident id | string | |
page |
Page number, the first page is 1 | long | |
limit |
Page size, the default is 50 rows | long | |
filter |
Optional filter | string | |
days |
Optional filter for a number of recent days to read the related issues | long | |
date |
Optional filter to return data quality issues only for a given date. The date should be an ISO8601 formatted date, it is treated as the timezone of the DQOps server. | string | |
column |
Optional column name filter | string | |
check |
Optional check name filter | string | |
order |
Optional sort order, the default sort order is by the execution date | CheckResultSortOrder | |
direction |
Optional sort direction, the default sort direction is ascending | SortDirection |
Usage examples
Execution
curl http://localhost:8888/api/incidents/sample_connection/2007/10/sample_incident/issues^
-H "Accept: application/json"
Expand to see the returned result
[ {
"id" : "3854372",
"checkHash" : 0,
"checkCategory" : "sample_category",
"checkName" : "sample_check",
"checkDisplayName" : "sample_target/sample_category/sample_check",
"checkType" : "profiling",
"actualValue" : 100.0,
"expectedValue" : 110.0,
"warningLowerBound" : 105.0,
"warningUpperBound" : 115.0,
"errorLowerBound" : 95.0,
"errorUpperBound" : 125.0,
"fatalLowerBound" : 85.0,
"fatalUpperBound" : 135.0,
"severity" : 2,
"columnName" : "sample_column",
"dataGroup" : "sample_data_grouping",
"durationMs" : 142,
"executedAt" : "2023-10-01T14:00:00Z",
"timeGradient" : "hour",
"timePeriod" : "2023-10-01T14:00:00",
"includeInKpi" : true,
"includeInSla" : true,
"provider" : "BigQuery",
"qualityDimension" : "sample_quality_dimension",
"sensorName" : "sample_target/sample_category/table/volume/row_count"
}, {
"id" : "3854372",
"checkHash" : 0,
"checkCategory" : "sample_category",
"checkName" : "sample_check",
"checkDisplayName" : "sample_target/sample_category/sample_check",
"checkType" : "profiling",
"actualValue" : 100.0,
"expectedValue" : 110.0,
"warningLowerBound" : 105.0,
"warningUpperBound" : 115.0,
"errorLowerBound" : 95.0,
"errorUpperBound" : 125.0,
"fatalLowerBound" : 85.0,
"fatalUpperBound" : 135.0,
"severity" : 2,
"columnName" : "sample_column",
"dataGroup" : "sample_data_grouping",
"durationMs" : 142,
"executedAt" : "2023-10-01T14:00:00Z",
"timeGradient" : "hour",
"timePeriod" : "2023-10-01T14:00:00",
"includeInKpi" : true,
"includeInSla" : true,
"provider" : "BigQuery",
"qualityDimension" : "sample_quality_dimension",
"sensorName" : "sample_target/sample_category/table/volume/row_count"
}, {
"id" : "3854372",
"checkHash" : 0,
"checkCategory" : "sample_category",
"checkName" : "sample_check",
"checkDisplayName" : "sample_target/sample_category/sample_check",
"checkType" : "profiling",
"actualValue" : 100.0,
"expectedValue" : 110.0,
"warningLowerBound" : 105.0,
"warningUpperBound" : 115.0,
"errorLowerBound" : 95.0,
"errorUpperBound" : 125.0,
"fatalLowerBound" : 85.0,
"fatalUpperBound" : 135.0,
"severity" : 2,
"columnName" : "sample_column",
"dataGroup" : "sample_data_grouping",
"durationMs" : 142,
"executedAt" : "2023-10-01T14:00:00Z",
"timeGradient" : "hour",
"timePeriod" : "2023-10-01T14:00:00",
"includeInKpi" : true,
"includeInSla" : true,
"provider" : "BigQuery",
"qualityDimension" : "sample_quality_dimension",
"sensorName" : "sample_target/sample_category/table/volume/row_count"
} ]
Execution
from dqops import client
from dqops.client.api.incidents import get_incident_issues
from dqops.client.models import CheckResultSortOrder, \
SortDirection
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = get_incident_issues.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
[
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
)
]
Execution
from dqops import client
from dqops.client.api.incidents import get_incident_issues
from dqops.client.models import CheckResultSortOrder, \
SortDirection
dqops_client = client.Client(
'http://localhost:8888/',
raise_on_unexpected_status=True
)
call_result = await get_incident_issues.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
[
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
)
]
Execution
from dqops import client
from dqops.client.api.incidents import get_incident_issues
from dqops.client.models import CheckResultSortOrder, \
SortDirection
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = get_incident_issues.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
[
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
)
]
Execution
from dqops import client
from dqops.client.api.incidents import get_incident_issues
from dqops.client.models import CheckResultSortOrder, \
SortDirection
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token,
raise_on_unexpected_status=True
)
call_result = await get_incident_issues.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Expand to see the returned result
[
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
),
CheckResultEntryModel(
id='3854372',
check_hash=0,
check_category='sample_category',
check_name='sample_check',
check_display_name='sample_target/sample_category/sample_check',
check_type=CheckType.PROFILING,
actual_value=100.0,
expected_value=110.0,
warning_lower_bound=105.0,
warning_upper_bound=115.0,
error_lower_bound=95.0,
error_upper_bound=125.0,
fatal_lower_bound=85.0,
fatal_upper_bound=135.0,
severity=2,
column_name='sample_column',
data_group='sample_data_grouping',
duration_ms=142,
executed_at='2023-10-01T14:00:00Z',
time_gradient=TimePeriodGradient.HOUR,
time_period=Some date/time value: [2023-10-01T14:00],
include_in_kpi=True,
include_in_sla=True,
provider='BigQuery',
quality_dimension='sample_quality_dimension',
sensor_name='sample_target/sample_category/table/volume/row_count'
)
]
recalibrate_checks_for_incident
Recalibrates all data quality checks that caused a given data quality incident to generate less issues by changing the data quality rule parameters.
Follow the link to see the source code on GitHub.
POST
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
year |
Year when the incident was first seen | long | |
month |
Month when the incident was first seen | long | |
incident_id |
Incident id | string |
Usage examples
Execution
Execution
Execution
Execution
from dqops import client
from dqops.client.api.incidents import recalibrate_checks_for_incident
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = recalibrate_checks_for_incident.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.incidents import recalibrate_checks_for_incident
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = await recalibrate_checks_for_incident.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
set_incident_issue_url
Changes the incident's issueUrl to a new status.
Follow the link to see the source code on GitHub.
POST
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
year |
Year when the incident was first seen | long | |
month |
Month when the incident was first seen | long | |
incident_id |
Incident id | string | |
issue_url |
New incident's issueUrl | string |
Usage examples
Execution
Execution
Execution
Execution
from dqops import client
from dqops.client.api.incidents import set_incident_issue_url
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = set_incident_issue_url.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.incidents import set_incident_issue_url
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = await set_incident_issue_url.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
set_incident_status
Changes the incident's status to a new status.
Follow the link to see the source code on GitHub.
POST
Parameters of this method are described below
Property name | Description | Data type | Required |
---|---|---|---|
connection_name |
Connection name | string | |
year |
Year when the incident was first seen | long | |
month |
Month when the incident was first seen | long | |
incident_id |
Incident id | string | |
status |
New incident status, supported values: open, acknowledged, resolved, muted | IncidentStatus |
Usage examples
Execution
Execution
Execution
from dqops import client
from dqops.client.api.incidents import set_incident_status
from dqops.client.models import IncidentStatus
dqops_client = client.Client(
'http://localhost:8888/'
)
call_result = await set_incident_status.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.incidents import set_incident_status
from dqops.client.models import IncidentStatus
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = set_incident_status.sync(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)
Execution
from dqops import client
from dqops.client.api.incidents import set_incident_status
from dqops.client.models import IncidentStatus
token = 's4mp13_4u7h_70k3n'
dqops_client = client.AuthenticatedClient(
'http://localhost:8888/',
token=token
)
call_result = await set_incident_status.asyncio(
'sample_connection',
2007,
10,
'sample_incident',
client=dqops_client
)