data-quality
POST
https://lucida.15-204-158-166.sslip.io /v1/internal/warehouse/projects/{project_id}/stage-runs/{run_id}/audit Parameters
project_idstringpathrequiredrun_idstringpathrequiredRequest body
application/json
sweep_cutoffintegerA full-mirror sweep the run deferred to publish: rows of
sweep_source older than this version (unix ms) are judged as deleted.sweep_sourcestringtablestringrequiredThe synced table (
warehouse_rows.table_name), without the synced_ prefix.{
"sweep_cutoff": 0,
"sweep_source": "string",
"table": "string"
}Code samples
cURL
curl -X POST "https://lucida.15-204-158-166.sslip.io/v1/internal/warehouse/projects/{project_id}/stage-runs/{run_id}/audit" \
-H "Content-Type: application/json" \
-d '{"sweep_cutoff":0,"sweep_source":"string","table":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200
Example
{
"checks": 0,
"failed": [
"string"
]
}Schema
checksintegerrequiredHow many checks gate the table.
failedstring[]requiredNames of the failing checks; empty means publish.
400
401
404
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks Parameters
project_idstringpathrequiredtagstringpathrequiredstatusstringpathrequiredpass, fail, error or not_run.limitintegerquerycursorstringqueryCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Page of DqCheck, newest first
404
POST
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks Parameters
project_idstringpathrequiredRequest body
application/json
A check as created or replaced.
column_namestringconfigvalues, to_table, to_column, min, max, max_age_hours, sql, window_days, window_column, to_window_days, to_window_column.enabledbooleankindstringrequirednot_null, unique, accepted_values, relationship, row_count, freshness, custom_sql.namestringrequiredschedulestringseveritystringtagsstring[]target_tablestringrequiredAny table or SQL view readable in SQL (events, persons, groups, a view name).
{
"column_name": "string",
"config": {},
"enabled": true,
"kind": "string",
"name": "string",
"schedule": "string",
"severity": "string",
"tags": [
"string"
],
"target_table": "string"
}Code samples
cURL
curl -X POST "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks" \
-H "Content-Type: application/json" \
-d '{"column_name":"string","config":{},"enabled":true,"kind":"string","name":"string","schedule":"string","severity":"string","tags":["string"],"target_table":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201
Example
{
"column_name": "string",
"config": {},
"created_at": "2024-01-01T00:00:00Z",
"enabled": true,
"failing_since": "2024-01-01T00:00:00Z",
"id": "string",
"kind": "string",
"last_run_at": "2024-01-01T00:00:00Z",
"last_status": "string",
"name": "string",
"schedule": "string",
"severity": "string",
"tags": [
"string"
],
"target_table": "string",
"updated_at": "2024-01-01T00:00:00Z"
}Schema
column_namestringrequiredconfigrequiredcreated_atstringrequiredenabledbooleanrequiredfailing_sincestringStart of the current failing streak.
idstringrequiredkindstringrequirednot_null, unique, accepted_values, relationship, row_count, freshness, custom_sql.last_run_atstringlast_statusstringpass, fail, error; null before the first run.namestringrequiredschedulestringrequiredmanual, after_refresh, after_sync, 1h, 6h, 12h, daily, weekly.severitystringrequirederror or warning.tagsstring[]requiredtarget_tablestringrequiredupdated_atstringrequired400
403
404
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks/{id} Parameters
project_idstringpathrequiredidstringpathrequiredCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks/{id}"TypeScript
Python
Go
PHP
Ruby
Java
PUT
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks/{id} Parameters
project_idstringpathrequiredidstringpathrequiredRequest body
application/json
A check as created or replaced.
column_namestringconfigvalues, to_table, to_column, min, max, max_age_hours, sql, window_days, window_column, to_window_days, to_window_column.enabledbooleankindstringrequirednot_null, unique, accepted_values, relationship, row_count, freshness, custom_sql.namestringrequiredschedulestringseveritystringtagsstring[]target_tablestringrequiredAny table or SQL view readable in SQL (events, persons, groups, a view name).
{
"column_name": "string",
"config": {},
"enabled": true,
"kind": "string",
"name": "string",
"schedule": "string",
"severity": "string",
"tags": [
"string"
],
"target_table": "string"
}Code samples
cURL
curl -X PUT "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks/{id}" \
-H "Content-Type: application/json" \
-d '{"column_name":"string","config":{},"enabled":true,"kind":"string","name":"string","schedule":"string","severity":"string","tags":["string"],"target_table":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
DELETE
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks/{id} Parameters
project_idstringpathrequiredidstringpathrequiredCode samples
cURL
curl -X DELETE "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks/{id}"TypeScript
Python
Go
PHP
Ruby
Java
Responses
204 Deleted; run history kept
403
404
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks/{id}/failing-rows Parameters
project_idstringpathrequiredidstringpathrequiredCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks/{id}/failing-rows"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200
Example
{
"measure_sql": "string",
"sql": "string"
}Schema
measure_sqlstringrequiredLQL computing the observed number.
sqlstringLQL listing up to 100 failing rows; null for row-count and freshness checks.
404
POST
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks/{id}/run Parameters
project_idstringpathrequiredidstringpathrequiredCode samples
cURL
curl -X POST "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks/{id}/run"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200
Example
{
"check_id": "string",
"duration_ms": 0,
"error": "string",
"observed": 0,
"status": "string"
}Schema
check_idstringrequiredduration_msintegerrequirederrorstringobservednumberFailing rows, the row count, or the newest row's age in seconds.
statusstringrequiredpass, fail or error.404
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/checks/{id}/runs Parameters
project_idstringpathrequiredidstringpathrequiredlimitintegerquerycursorstringqueryCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/checks/{id}/runs"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Page of DqRun, newest first
404
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/data-quality/health Parameters
project_idstringpathrequiredCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/data-quality/health"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200
Example
{
"disabled": 0,
"erroring": 0,
"failing": 0,
"healthy": 0,
"not_run": 0,
"overall": "string",
"warning": 0
}Schema
disabledintegerrequirederroringintegerrequiredfailingintegerrequiredFailing checks of error severity.
healthyintegerrequirednot_runintegerrequiredoverallstringrequiredwarningintegerrequiredFailing checks of warning severity.
404
Updated