Skip to main content

Validation

Run validation checks against your synthetic datasets. Lucitra scores data across four dimensions — coverage, physics plausibility, distribution quality, and sim-to-real gap — each producing a score from 0 to 100.

Validation Types

Coverage

Checks whether your dataset adequately covers required scenarios, object classes, edge cases, and environmental conditions.

Physics

Detects physically impossible artifacts — intersecting geometry, impossible lighting, unrealistic materials, and gravity violations.

Sim-to-Real

Quantifies domain gap by comparing your synthetic data against a real-world reference dataset.

Full

Runs all validation checks in a single pass. Requires a reference dataset for the sim-to-real component.

Run a Validation

All validation endpoints accept a dataset ID and return immediately with a run_id for polling. The actual validation runs asynchronously.
Evaluate scenario and class coverage without a reference dataset.
string
required
The dataset to validate.
object
Validation-specific configuration. For coverage, you can set min_class_samples and required_conditions.
All validation endpoints return 202 Accepted:

Poll for Status

Validation runs progress through three statuses before completing.
string
required
The validation run identifier.
string
required
Current status: queued, running, completed, or failed.
float
required
Completion fraction from 0.0 to 1.0.
integer
Estimated seconds until completion. Null when queued or failed.
string
The generated report ID. Only present when status is completed.

Polling Pattern

Use this pattern to wait for a validation run to complete.

Rate Limits

Each plan includes a monthly validation run limit. If you exceed your quota, the API returns 429 Too Many Requests with details about when your limit resets.
Use webhooks instead of polling for production workflows. They deliver real-time notifications when validation runs complete or fail.