Validate & Results
Validate data contracts and manage execution results
POST
POST /v1/dataContracts/{id}/validate
Validate & Results
Run on-demand validation of data contracts and manage execution results. Validation checks schema compliance, semantics rules, and quality expectations. SLA requirements are checked for tables. Security and terms of use aren’t checked.Validate a Contract
Trigger on-demand validation of a data contract. Returns aDataContractResult with status for each validation dimension. Requires the Edit All permission on the contract.
Schema and semantics are checked immediately. When the contract has quality expectations, the call starts the contract’s test suite pipeline and returns a Running result. The quality results and the final status are added to that result when the tests finish. A new validation aborts a result that’s still Running.
POST /v1/dataContracts/{id}/validate
Validate by Entity
Validate the effective contract for a specific entity, including rules inherited from its data product. If the entity only has an inherited contract from a data product, a local contract is materialized to store results. Requires the Edit All permission on the entity. Returns404 if the entity has no effective contract.
POST /v1/dataContracts/entity/validate
POST /v1/dataContracts/{id}/validate
Execution Status Values
The Data Contract Validation application also validates every contract on a schedule, daily at midnight by default. Each night it validates a contract together with the contract it inherits, and it checks the SLA.
List Results
Retrieve execution results for a contract.GET /v1/dataContracts/{id}/results
Get Latest Result
GET /v1/dataContracts/{id}/results/latest
Returns the most recent validation result.
Add a Result
PUT /v1/dataContracts/{id}/results
Programmatically add a validation result (useful for external validation pipelines).
Body Parameters
SLA validation details. A contract run fills this in for tables. External pipelines can also set it.
Add Result
Add Result
Add Result
Delete Results
DELETE /v1/dataContracts/{id}/results/{timestamp} — Delete a result at a specific timestamp.
DELETE /v1/dataContracts/{id}/results/before/{timestamp} — Delete all results before a timestamp.