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, 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
string
required
UUID of the data contract.
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
string
required
UUID of the entity.
string
required
Type of the entity (e.g.,
table, topic).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.
List Results
Retrieve execution results for a contract.GET /v1/dataContracts/{id}/results
string
required
UUID of the data contract.
integer
default:"10"
Maximum number of results to return (0–10,000).
integer
Return results after this epoch timestamp (milliseconds).
integer
Return results before this epoch timestamp (milliseconds).
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
integer
required
Epoch timestamp (milliseconds) of the validation run.
string
required
Status:
Running, Success, Failed, PartialSuccess, Aborted, Queued.string
Human-readable summary message.
object
Schema validation details.
object
Semantics validation details.
object
Quality validation details.
object
SLA validation details. OpenMetadata doesn’t fill this in during validation. External pipelines can set it.
integer
Total validation execution time in milliseconds.
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.