Run Function Regression Testing
Kick off a regression run between two versions of a function.
Replays a sample of corrected historical inputs against the comparison version, producing fresh transformations marked isRegression: true. Each new run returns the workflow callIDs you can monitor via GET /v3/calls/{callID}.
Supported for every function type that produces correctable transformations: extract, transform, analyze, join. For extract specifically, the regression sample is dispatched through the same OCR vs. vision path used at original call time (PDF, PNG, JPEG, HEIC, HEIF, WebP go through the vision worker; everything else goes through OCR → transform).
The comparison version must share a schema-compatible output shape with the baseline; structural differences are reported as a 400 with the offending field-level diffs.
Typical flow
- POST /v3/functions/regression — queues calls, returns { originalReferenceID, callID } per sample.
- Wait (poll GET /v3/calls/{callID} or subscribe to webhooks).
- POST /v3/functions/regression/corrections to copy baseline corrections onto the new regression transformations.
- POST /v3/functions/compare to compare baseline vs comparison metrics for the regression dataset.
Request body
Response
The request has succeeded.