RowCell

One cell of a row (a single action × a single row). Branch on `status` to decide which of `outputs` / `outputs_ref` / `error` to read.

Properties

statusstringrequired

Lifecycle state of this cell. Progresses `queued → running → (complete | failed | error | out_of_credits | condition_not_met)`. Everything after `running` is terminal — stop polling the cell once it lands on one. `failed` is a known failure path (provider 404, validation failed, duplicate row, missing required input, run stopped); `error` is an unexpected runtime error; `out_of_credits` means the org's credit balance couldn't cover the action, so it never ran — top up and re-run the row. All three carry an `error` message. `condition_not_met` is terminal too — the action's `run_if` (or an upstream `filter`) evaluated false for this row, so the cell never ran; downstream cells stay `queued` unless `continue_workflow_if_run_condition_not_met: true` was set on the gating action.

"queued""running""complete""failed""error""out_of_credits""condition_not_met"
outputsobject

Inline outputs for a `complete` cell when the payload is small. Keys are the action's output field names. Absent on non-`complete` cells; absent on `complete` cells with `outputs_ref`.

outputs_refobject

URL pointer to the outputs of a `complete` cell when the payload is too large to inline (e.g. LinkedIn profile scrapes, enrichment blobs). Fetch the URL with the caller's API key to read the data.

urlstring <uri>required

Signed URL to fetch the outputs JSON.

size_bytesintegerrequired

Size of the outputs JSON at `url`, in bytes.

errorstring

Human-readable failure message. Present on `failed`, `error` and `out_of_credits` cells.

Example

RowCell example
{
  "status": "queued",
  "outputs": {},
  "outputs_ref": {
    "url": "https://example.com",
    "size_bytes": 0
  },
  "error": "string"
}