Skip to main content
Flow Runs list view showing pipeline execution history

GET /api/v1/pipelines//runs//progress

Returns detailed progress information for a pipeline run including row counts, partition details, ETA, validation errors (first 20), and log entries.

Path Parameters

ParameterTypeDescription
idstringPipeline ID
runIdstringPipeline run ID

Response

Response Fields

FieldTypeDescription
statusstringpending, running, completed, failed, completed_with_errors
totalRowsintegerTotal rows to process (rowsTotal)
processedRowsintegerRows processed so far (rowsProcessed)
failedRowsintegerRows that failed validation
skippedRowsintegerRows skipped (e.g., duplicates)
partitionsintegerTotal partition count
completedPartitionsintegerPartitions finished
partitionDetailsarrayPer-partition status breakdown
validationErrorsarrayFirst 20 validation errors (use the errors endpoint for full list)
etastring or nullEstimated time remaining (e.g., "3m", "1.2h")
durationMsintegerElapsed time in milliseconds
loadStrategystringLoad strategy used (append, upsert, replace)
logarrayExecution log entries

Roles

admin, editor, viewer

GET /api/v1/pipelines//runs//errors

Returns all validation errors for a pipeline run. Supports both JSON and CSV formats via the Accept header.

Path Parameters

ParameterTypeDescription
idstringPipeline ID
runIdstringPipeline run ID

Headers

HeaderValueDescription
Acceptapplication/jsonReturns JSON (default)
Accepttext/csvReturns downloadable CSV file

Response (JSON)

Response (CSV)

When Accept: text/csv is set, returns a downloadable CSV file with headers: Row, Column, Value, Error.

Roles

admin, editor, viewer

POST /api/v1/pipelines//runs//retry

Deprecated — always returns 410 Gone. The legacy resume-from-checkpoint retry was removed on 2026-04-28 along with the BullMQ worker path. IR-native runs are short in-process executions that are idempotent at the row level (via _kaireon_lineage), so there is nothing to resume. To re-run a pipeline, call POST /api/v1/pipelines/{id}/run again.

Path Parameters

ParameterTypeDescription
idstringPipeline ID
runIdstringOriginal run ID

Response (410)

Roles

admin, editor (the role gate is still enforced before the 410 is returned).

GET /api/v1/pipeline-runs//dlq

Return the failed-row (dead-letter queue) sample written by a validate node for a specific run. Powers the Errors tab and the “Fix with AI” prompt. Note the path is /pipeline-runs/{id}/dlq{id} is the run id, not the pipeline id.

Path Parameters

ParameterTypeDescription
idstringPipeline run ID

Query Parameters

ParameterTypeDefaultDescription
nodestringRequired. The validate node id whose quarantine rows to read.
limitinteger50Max rows to return (clamped to 1–1000).

Response 200

When the validate node has no quarantine.table, or the quarantine table was never created (no rows ever failed), the endpoint still returns 200 with count: 0, rows: [], and a residual message explaining why.

Error Codes

CodeReason
400Missing/invalid node param, the referenced node is not a validate node, the run has no metadata.irVersion, or the quarantine table identifier is unsafe
404Run not found, IR version not found, or node is not present in that IR version

Roles

admin, editor, viewer

Role Summary

EndpointMethodAllowed Roles
/pipelines/{id}/runs/{runId}/progressGETadmin, editor, viewer
/pipelines/{id}/runs/{runId}/errorsGETadmin, editor, viewer
/pipelines/{id}/runs/{runId}/retryPOSTadmin, editor (deprecated → 410)
/pipeline-runs/{id}/dlqGETadmin, editor, viewer
See also: Pipelines | Data Platform