Limai Docs
CLI Reference

validations

Manage custom validation scripts and submit validation results

$limai validations <subcommand>

Manage custom validation scripts on a model or deployment and submit validation results.

Options
--jsonOutput raw JSON
--verboseEnable debug logging

Custom validation scripts

limai validations scripts push uploads the script source and registers it in one call, so adding a validation needs nothing but your normal API token — no separate storage or database credentials.

limai validations scripts push

$limai validations scripts push <extractionSchemaId>

Upload a validation script and register it. Creates it, or bumps its version when the source changed.

Options
--dir <path>Script directory containing manifest.json and script.mjs
--file <path>Script source file (.mjs) — requires --key and --name
--key <key>Script key (lowercase letters, digits, hyphens)
--name <name>Human-readable script name
--description <text>What the script checks
--behavior <behavior>SURFACE (report only) or RESEND (request a re-extraction). Defaults to SURFACE
--timeout-ms <ms>Per-run timeout in milliseconds (1000–600000)
--disabledRegister the script without enabling it

Pushing is idempotent and content-addressed. The command reports what it did: created, new-version (the source changed), metadata-updated (only the name, description, behavior, enabled flag or timeout differed) or unchanged.

With --dir, key, name, description and behavior are read from manifest.json and any explicit flag overrides the manifest value.

limai validations scripts list

$limai validations scripts list <extractionSchemaId>

List the custom validation scripts registered on a schema, enabled or not.

limai validations scripts get

$limai validations scripts get <extractionSchemaId> <key>

Show one custom validation script.

Options
--sourcePrint the registered script source
--output <path>Write the registered script source to a file

limai validations scripts update

$limai validations scripts update <extractionSchemaId> <key>

Update script metadata without uploading a new source version.

Options
--name <name>New name
--description <text>New description
--behavior <behavior>SURFACE or RESEND
--timeout-ms <ms>Per-run timeout in milliseconds
--enableEnable the script
--disableDisable the script without deleting its history

limai validations scripts delete

$limai validations scripts delete <extractionSchemaId> <key>

Delete a validation script and all of its stored results. Use `update --disable` to keep the history.

Validation results

limai validations submit

$limai validations submit <extractionSchemaId> <fileId>

Submit a validation result for a file.

Options
--findings-file <path>Findings JSON array (required)
--changes-file <path>Cell changes JSON array
--breakdown-file <path>Breakdown JSON object
--new-rows-file <path>New rows JSON array
--no-strictSkip unresolved references instead of failing the whole request

Cell changes and new rows that target already reviewed data are not written. The submission still succeeds and the verdict is still recorded, but the proposed correction is surfaced as a flag on the cell for a human to act on and comes back in cellChangesFlagged / rowsFlagged instead of cellChangesApplied / rowsAdded. Data counts as reviewed when its row is accepted, or when the whole document is marked reviewed.

Examples

Push a script from a directory

A script directory holds a manifest.json and a script.mjs:

limai validations scripts push esch_abc123 --dir ./validations/vin-checksum
validations/vin-checksum/manifest.json
{
  "key": "vin-checksum",
  "name": "VIN format (ISO 3779)",
  "description": "Validates the VIN against the ISO 3779 format",
  "behavior": "RESEND"
}

Push a bare script file

limai validations scripts push esch_abc123 \
  --file ./check-totals.mjs \
  --key check-totals \
  --name "Invoice totals reconcile" \
  --behavior SURFACE

Check what is deployed before changing it

limai validations scripts get esch_abc123 vin-checksum --output ./current.mjs
diff ./current.mjs ./validations/vin-checksum/script.mjs

Turn a script off without losing its results

limai validations scripts update esch_abc123 vin-checksum --disable

On this page