Skip to main content
POST
/
v1
/
workflows
/
tests
/
runs
/
{run_id}
/
cancel
from retab import Retab

client = Retab()

run = client.workflows.tests.runs.cancel("wftestrun_q1z2")
print(run.lifecycle.status)
{
  "id": "wftestrun_q1z2",
  "lifecycle": { "status": "cancelled" },
  "timing": {
    "created_at": "2026-05-18T10:00:00Z",
    "started_at": "2026-05-18T10:00:01Z",
    "completed_at": "2026-05-18T10:00:04Z"
  }
}
Cancel a pending or running workflow-test run by run_id. Cancellation is run-specific; you do not pass the workflow id or test id when cancelling.
from retab import Retab

client = Retab()

run = client.workflows.tests.runs.cancel("wftestrun_q1z2")
print(run.lifecycle.status)
{
  "id": "wftestrun_q1z2",
  "lifecycle": { "status": "cancelled" },
  "timing": {
    "created_at": "2026-05-18T10:00:00Z",
    "started_at": "2026-05-18T10:00:01Z",
    "completed_at": "2026-05-18T10:00:04Z"
  }
}

Authorizations

Api-Key
string
header
required

Path Parameters

run_id
string
required

Response

Successful Response

A batch execution of a workflow's tests, with overall lifecycle, timing, and pass/fail counts.

id
string
required
workflow_id
string
required
workflow_version_id
string
required
trigger
TriggerInfo · object
required

Public summary of what started a run: just the trigger category.

The full per-variant detail (schedule_id, parent_run_id, sender, ...) is kept internally on StoredWorkflowRun.trigger but intentionally not exposed in the public API surface.

lifecycle
PendingWorkflowTestRun · object
required

The test run has been created but execution has not started.

timing
WorkflowTestRunTiming · object
required
total_tests
integer
required
target
WorkflowTestBlockTarget · object

Public workflow-test target.

The storage layer remains block-scoped today, but the API shape names the tested entity explicitly so workflow-level targets can be added later.

test_id
string | null
counts
BlockTestBatchExecutionCounts · object

Aggregate counts for a batch of block-test runs.

Each individual run contributes to exactly one lifecycle_counts bucket, and additionally to one outcome bucket when lifecycle_counts.completed is incremented.

freshness
ArtifactFreshness · object