Skip to main content
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.

Validate a Contract

Trigger on-demand validation of a data contract. Returns a DataContractResult with status for each validation dimension. POST /v1/dataContracts/{id}/validate
string
required
UUID of the data contract.

Validate by Entity

Validate the effective contract for a specific entity. If the entity only has an inherited contract from a data product, a local contract is materialized to store results. POST /v1/dataContracts/entity/validate
string
required
UUID of the entity.
string
required
Type of the entity, for example table, topic.
POST /v1/dataContracts/{id}/validate

Execution Status Values


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

string
required
Fully qualified name of the data contract the result belongs to.
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.

Error Handling