Checks
Soda Cloud API Check Endpoints
This endpoint enables you to gather information about the checks that in exist in your organization's Soda Cloud account, including information about the datasets and agreements with which they are associated and the incidents to which they are linked. .
This GET is a paginated API that uses the following parameters to request specific details:
size: Supply an integer value between 10 and 1000, inclusive. The default value is 10.page: Supply an integer value. The default value is 0.datasetId: Optionally, use this parameter to collect only the information for checks associated with a specific dataset. Find thedatasetIdin the URL of the dataset page in Soda Cloud.checkIds: Optionally, use this parameter to collect only the information for a specific batch of checks. Provide multiple values as a comma-separated list of check IDs, which you can find on the individual check pages in Soda Cloud. This query parameter is limited to 1000 check IDs and it can't be combined with other query parameters likepage,datasetId,size.
If not specified, the query gathers information for all checks in the account and sorts the results by check name in ascending order.
Authorization
Soda only returns the checks linked to datasets to which the user has View dataset permissions. Soda Cloud Admins have access to all checks.See Manage dataset roles for more information.
Authentication
User authentication required: true
This endpoint enforces authentication using the API keys you provide in the Basic authentication header.
Tags
Checks
Rate limiting
60 requests/60 seconds
Successful response
Bad request
Unauthorized
Forbidden
Not found
Too many requests
Internal server error
GET /api/v1/checks HTTP/1.1
Host: cloud.soda.io
Authorization: Basic username:password
Accept: */*
{
"content": [
{
"attributes": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"checkType": "text",
"cloudUrl": "text",
"column": "text",
"createdAt": "text",
"datasets": [
{
"cloudUrl": "text",
"id": "text",
"name": "text",
"qualifiedName": "text"
}
],
"definition": "text",
"description": "text",
"evaluationStatus": "pass",
"group": {
"groupType": "text",
"identity": "text",
"name": "text"
},
"id": "text",
"incidents": [
{
"cloudUrl": "text",
"id": "text",
"name": "text",
"number": 1,
"status": "reported"
}
],
"lastCheckResultValue": {
"anomalyDetectionDetails": {
"predictedValue": 1
},
"dataTimestamp": "text",
"diagnostics": {
"aggregate": {
"checkRowsTested": 1,
"datasetRowsTested": 1
},
"aggregate_diff": {
"diff": 1,
"diffPercent": 1,
"function": "text",
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceValue": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetValue": 1
},
"duplicate": {
"checkRowsTested": 1,
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"duplicate_diff": {
"duplicateCountDiff": 1,
"duplicateDiffPercent": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceDuplicateCount": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetDuplicateCount": 1
},
"failed_rows": {
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"freshness": {
"actualTimestamp": "text",
"actualTimestampUtc": "text",
"datasetRowsTested": 1,
"expectedTimestamp": "text",
"expectedTimestampUtc": "text"
},
"freshness_diff": {
"freshnessDiff": 1,
"freshnessDiffUnit": "minutes",
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceMaxTimestamp": "text",
"sourceMaxTimestampUtc": "text",
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetMaxTimestamp": "text",
"targetMaxTimestampUtc": "text"
},
"group_by": {
"groups": [
{
"group": "text",
"status": "pass",
"value": 1
}
]
},
"invalid": {
"checkRowsTested": 1,
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"metric": {
"datasetRowsTested": 1
},
"metric_diff": {
"metricDiff": 1,
"metricDiffPercent": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceMetric": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetMetric": 1
},
"missing": {
"checkRowsTested": 1,
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"row_count": {
"checkRowsTested": 1,
"datasetRowsTested": 1
},
"row_count_diff": {
"rowCountDiff": 1,
"rowCountDiffPercent": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1
},
"rows_diff": {
"changed": 1,
"diffCount": 1,
"diffPercent": 1,
"exclusiveInSource": 1,
"exclusiveInTarget": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1
},
"schema": {
"actual": [
{
"name": "text",
"type": "text"
}
],
"expected": [
{
"name": "text",
"type": "text"
}
]
}
},
"id": "text",
"measure": "time",
"value": 1,
"valueLabel": "text",
"valueSeries": {
"values": [
{
"label": "text",
"level": "pass",
"value": 1
}
]
}
},
"metricType": "text",
"name": "text"
}
],
"first": true,
"last": true,
"number": 1,
"size": 1,
"totalElements": 1,
"totalPages": 1
}This endpoint enables you to update an existing check's name, configuration, or column name in your organization's Soda Cloud account.
Authorization
Only users with Manage checks permission can update checks. Soda Cloud Admins have permission to update all checks. See Manage dataset roles for more information.
Authentication
User authentication required: true
This endpoint enforces authentication using the API keys you provide in the Basic authentication header.
Tags
Checks
Rate limiting
100 requests/60 seconds
Successful response
Bad request
Unauthorized
Forbidden
Not found
Too many requests
Internal server error
POST /api/v1/checks/{checkId} HTTP/1.1
Host: cloud.soda.io
Authorization: Basic username:password
Content-Type: application/json
Accept: */*
Content-Length: 451
{
"columnName": "text",
"configuration": {
"exclusionZones": [
{
"lowerLimit": 1,
"singleValue": true,
"upperLimit": 1
}
],
"groupByColumnNames": [
"text"
],
"groupByColumns": [
{
"columnName": "text",
"excludedValues": [
"text"
]
}
],
"isEnabled": true,
"isSamplingEnabled": true,
"resultMetric": "text",
"sensitivity": 1,
"sqlQuery": "text",
"thresholdStrategy": {
"isLowerBoundEnabled": true,
"isUpperBoundEnabled": true
},
"type": "anomalyDetection",
"validRange": {
"max": 1,
"min": 1
}
},
"name": "text"
}{
"attributes": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"checkType": "text",
"cloudUrl": "text",
"column": "text",
"createdAt": "text",
"datasets": [
{
"cloudUrl": "text",
"id": "text",
"name": "text",
"qualifiedName": "text"
}
],
"definition": "text",
"description": "text",
"evaluationStatus": "pass",
"group": {
"groupType": "text",
"identity": "text",
"name": "text"
},
"id": "text",
"incidents": [
{
"cloudUrl": "text",
"id": "text",
"name": "text",
"number": 1,
"status": "reported"
}
],
"lastCheckResultValue": {
"anomalyDetectionDetails": {
"predictedValue": 1
},
"dataTimestamp": "text",
"diagnostics": {
"aggregate": {
"checkRowsTested": 1,
"datasetRowsTested": 1
},
"aggregate_diff": {
"diff": 1,
"diffPercent": 1,
"function": "text",
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceValue": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetValue": 1
},
"duplicate": {
"checkRowsTested": 1,
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"duplicate_diff": {
"duplicateCountDiff": 1,
"duplicateDiffPercent": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceDuplicateCount": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetDuplicateCount": 1
},
"failed_rows": {
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"freshness": {
"actualTimestamp": "text",
"actualTimestampUtc": "text",
"datasetRowsTested": 1,
"expectedTimestamp": "text",
"expectedTimestampUtc": "text"
},
"freshness_diff": {
"freshnessDiff": 1,
"freshnessDiffUnit": "minutes",
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceMaxTimestamp": "text",
"sourceMaxTimestampUtc": "text",
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetMaxTimestamp": "text",
"targetMaxTimestampUtc": "text"
},
"group_by": {
"groups": [
{
"group": "text",
"status": "pass",
"value": 1
}
]
},
"invalid": {
"checkRowsTested": 1,
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"metric": {
"datasetRowsTested": 1
},
"metric_diff": {
"metricDiff": 1,
"metricDiffPercent": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"sourceMetric": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1,
"targetMetric": 1
},
"missing": {
"checkRowsTested": 1,
"datasetRowsTested": 1,
"failedRowsCount": 1,
"failedRowsDataQuery": "text",
"failedRowsKeysQuery": "text",
"failedRowsPercent": 1,
"failedRowsSourceQuery": "text"
},
"row_count": {
"checkRowsTested": 1,
"datasetRowsTested": 1
},
"row_count_diff": {
"rowCountDiff": 1,
"rowCountDiffPercent": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1
},
"rows_diff": {
"changed": 1,
"diffCount": 1,
"diffPercent": 1,
"exclusiveInSource": 1,
"exclusiveInTarget": 1,
"sourceCheckRowsTested": 1,
"sourceDatasetRowsTested": 1,
"targetCheckRowsTested": 1,
"targetDatasetRowsTested": 1
},
"schema": {
"actual": [
{
"name": "text",
"type": "text"
}
],
"expected": [
{
"name": "text",
"type": "text"
}
]
}
},
"id": "text",
"measure": "time",
"value": 1,
"valueLabel": "text",
"valueSeries": {
"values": [
{
"label": "text",
"level": "pass",
"value": 1
}
]
}
},
"metricType": "text",
"name": "text"
}This endpoint allows you to delete a specific check in your organization's Soda Cloud account.
Authorization
Only users with Manage checks permission can delete checks. Soda Cloud Admins can delete checks for all datasets. See Manage dataset roles for more information.
Authentication
User authentication required: true
This endpoint enforces authentication using the API keys you provide in the Basic authentication header.
Tags
Checks
Rate limiting
1000 requests/60 seconds
Bad request
Unauthorized
Forbidden
Not found
Too many requests
Internal server error
DELETE /api/v1/checks/{checkId} HTTP/1.1
Host: cloud.soda.io
Authorization: Basic username:password
Accept: */*
{
"code": "text",
"message": "text"
}Last updated
Was this helpful?
