Overview
Data contracts are SLAs for your data. You define the rules — a column must not exceed 5% nulls, values must stay within a range, no PII allowed — and ORCA checks them automatically every time a file is scanned. When a contract is violated, you get an alert. Contracts are defined once and enforced continuously. They catch regressions before they reach production.Creating a contract
A contract consists of:- Name — a descriptive label (e.g. “Customer data quality”)
- Target — which files or tables the contract applies to
- Rules — the quality conditions that must be met
- Severity — how violations are prioritized
Target matching
Contracts match files and tables using thetarget_pattern field. This supports exact names and glob patterns:
In the web app
Navigate to Contracts in the sidebar, click Create Contract, and configure the target pattern, rules, and severity levels using the form.Via the API
Rule types
ORCA supports 10 rule types covering nulls, uniqueness, value ranges, format compliance, and data sensitivity.Column-level rules
Table-level rules
Table-level rules do not require a
column_name.
Severity levels
Each rule has a severity that determines how violations are prioritized:Violation detection
Contracts are evaluated automatically after every scan completes. The evaluation process:- ORCA finds all enabled contracts for the organisation
- Each contract’s
target_patternis matched against the scanned filename - Every rule in matching contracts is checked against the quality results
- Violations are recorded with full detail (expected vs. actual values)
Violation history
Every violation is stored with:- The contract and rule that was violated
- The job and file that triggered it
- A detail object with expected vs. actual values
- The detection timestamp
Viewing violations
In the web app, navigate to a contract to see its violation history. The 7-day violation count is shown on the contract list view.Via the API
Alerts on violations
When a contract violation is detected, ORCA creates an alert automatically. Alerts appear in the Alerts page and can be delivered via:- In-app notifications — visible in the alerts tab
- Email — if email alerts are enabled in settings
- Webhooks — Slack or Microsoft Teams via webhook configuration
- Push notifications — on the mobile app (if push tokens are registered)
Managing contracts
List contracts
Update a contract
Add a rule to an existing contract
Delete a contract
Contract management endpoints require admin role. Viewing contracts and violations is available to all authenticated org members.
Next steps
AI readiness
See how contract compliance affects readiness scoring
Classification
Understand how columns are classified for targeted rules