> This page is for version v2024-12-23.
> For other versions, use one of these documentation indexes:
> - v2026-02-09 (default): https://docs.extend.ai/2026-02-09/llms.txt
> - v2025-04-21: https://docs.extend.ai/2025-04-21/llms.txt
> - v2024-12-23: https://docs.extend.ai/2024-12-23/llms.txt

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.extend.ai/llms.txt
> Use this file to discover all available pages before exploring further.
>
> ## API version
> The current API version is `2026-02-09`, served at the site root (no version prefix in URLs).
> If this page URL contains `/2025-04-21/` or `/2024-12-23/`, you are reading an older API version.
> Prefer the current docs at https://docs.extend.ai/llms.txt unless the user explicitly needs that older version.
> Do not treat older-version pages as the source of truth for new integrations.

# The WorkflowRun object

The WorkflowRun object is the core object of the WorkflowRun API.
It represents a single run of a workflow and contains all the information about the run, including the output data, the workflow that was run, and the status of the run.

#### properties

**`object`** `string`

The type of the object, in this case it will always be "workflow_run".

---

**`id`** `string`

An ID corresponding to a specific File x Workflow combination representing the
specific WorkflowRun for a File.

---

**`name`** `string`

The name of the WorkflowRun. Autogenerated by Extend using fileName if not
provided at creation time.

---

**`batchId`** `string`

The batch ID of the WorkflowRun. If that WorkflowRun was created from a batch
of files, all runs in that batch will have the same batch ID.

---

**`status`** `string`

The status of a WorkflowRun. The options are "PENDING" (if the WorkflowRun is
waiting to start execution), "PROCESSING" (if the WorkflowRun is currently
running), "FAILED" (if the WorkflowRun failed), "NEEDS_REVIEW" (if the
WorkflowRun needs to be reviewed manually in the UI), "REVIEWED" (if the
WorkflowRun has been manually reviewed and corrected), "PROCESSED" (if the
WorkflowRun is fully processed.)

---

**`url`** `string`

Unique URL that can be used to route to the WorkflowRun review experience in
Extend.

---

**`metadata`** `any`

The metadata that was passed in when running the Workflow.

---

**`initialRunAt`** `string`

The time (in UTC) at which the workflow was initially run.

---

**`failureMessage`** `string`

An optional field that will only be present if applicable. This will be the
error message if the WorkflowRun failed.

---

**`reviewedBy`** `string`

An optional field that will only be present if applicable. This will be the
user ID of the person who reviewed the WorkflowRun.

---

**`reviewedAt`** `string`

An optional field that will only be present if applicable. The time (in UTC)
at which the WorkflowRun review step was completed.

---

**`startTime`** `string`

The start time (in UTC) of the WorkflowRun.

---

**`endTime`** `string`

An optional field that will only be present if applicable. The end time (in
UTC) of the WorkflowRun.

---

**`files`** `File[]`

The files that were processed in this WorkflowRun.

See the [File object](/2024-12-23/developers/objects/file) for more details.

---

**`outputs`** `DocumentProcessorRun[]`

An array of DocumentProcessorRun objects corresponding to Extraction, Classification, and Instruct QA steps.
This will contain the initial output, reviewed output, and final output of the DocumentProcessorRun.

#### properties

**`object`** `string`

Type of the object, always 'document_processor_run'.

---

**`id`** `string`

The unique identifier for the document processor run.

---

**`edited`** `boolean`

Whether the document processor run has been edited.

---

**`edits`** `object`

A hash of the edits (original + edited values + operator notes, if any) made to the document processor run. Values conform to the value types of the fields.

---

**`type`** `string`

The type of the document processor run. Either `EXTRACT`, `CLASSIFY`, or `SPLITTER`.

---

**`config`** `object`

The config of the document processor run. The shape of output depends on the document processor `type`.
Details for each can be found in the [Output and Config types page](/2024-12-23/developers/guides/output-types).

---

**`initialOutput`** `object`

The initial raw output from the document processor. This is always set.
The shape of output depends on the document processor `type`.
Details for each can be found in the [Output and Config types page](/2024-12-23/developers/guides/output-types).

---

**`reviewedOutput`** `object`

An optional field that shows the output after review, if applicable.
The shape of output depends on the document processor `type`.
Details for each can be found in the [Output and Config types page](/2024-12-23/developers/guides/output-types).

---

**`output`** `object`

The final output, either reviewed or initial. You can rely on this to be always set as the final output (initial or post review when reviewed).
The shape of output depends on the document processor `type`.
Details for each can be found in the [Output and Config types page](/2024-12-23/developers/guides/output-types).

---

---

**`workflow`** `Workflow`

The details about the Workflow that was used in this WorkflowRun.

#### properties

**`object`** `string`

The type of response, in this case it will always be "workflow".

---

**`id`** `string`

The unique identifier of the Workflow.

---

**`name`** `string`

The name of the Workflow.

---

**`version`** `string`

The version of the Workflow.

---

---

**`stepRuns`** `WorkflowStepRun[]`

An array of WorkflowStepRun objects.
Each WorkflowStepRun represents a single run of a WorkflowStep and contains details about the step and the run's output.

**Note:** This field currently supports [External Data Validation](/2024-12-23/product/workflows/external-data-validation-step) and Rule Validation step types.
Document processor run outputs are included in the `outputs` field.

#### properties

**`object`** `string`

The type of response, in this case it will always be "workflow_step_run".

---

**`id`** `string`

The unique identifier of the WorkflowStepRun.

---

**`status`** `enum`

The status of the WorkflowStepRun.

One of: `PENDING`, `PROCESSING`, `PROCESSED`, `FAILED`

---

**`output`** `object`

The output of the WorkflowStepRun.
The shape of the output depends on the type of the WorkflowStep in the `step` field below.

`EXTERNAL_DATA_VALIDATION`

#### properties

The output will be the same object that was returned by the external endpoint configured for this step.

`RULE_VALIDATION`

#### properties

**`valid`** `boolean`

Indicates whether the entire validation step passed. This field will only be `true` if every validation rule passed.

---

**`rules`** `object[]`

#### properties

**`name`** `string`

The name of the validation rule.

---

**`valid`** `boolean`

Indicates whether this validation rule passed or not.
This field will be `true` only if the formula evaluates to `true`.
If the rule's formula is array valued, then this field will only be `true` if the formula evaluates to `true` for every item in the array.

---

**`validArray`** `string[]`

Only present if the validation rule's formula is array valued. This field contains the formula's evaluated result for every item in the array.

---

**`failureReason`** `enum`

If the validation rule is not valid, then this describes why the rule failed.

`RULE_FAILED`: The formula evaluated to `false` or `null`.

`PARSE_ERROR`: The formula could not be parsed.

`VALUE_ERROR`: An error occurred while evaluating the formula.

---

**`error`** `string`

If the `failureReason` is `PARSE_ERROR` or `VALUE_ERROR`, then this field contains the error's details.

---

---

---

**`step`** `WorkflowStep`

A WorkflowStep object.

#### properties

**`object`** `string`

The type of response, in this case it will always be "workflow_step".

---

**`id`** `string`

The unique identifier of the WorkflowStep.

---

**`name`** `string`

The name of the WorkflowStep.

---

**`type`** `enum`

The name of the WorkflowStep.
One of: `EXTERNAL_DATA_VALIDATION`, `RULE_VALIDATION`

---

---

---

**`Example WorkflowRun`**

```json Example WorkflowRun
{
  "object": "workflow_run",
  "id": "workflow_run_1234",
  "status": "PROCESSED",
  "metadata": {
    "internal_id": "id_1234"
  },
  "initialRunAt": "2023-01-01T09:41:00.000Z",
  "reviewedBy": "user_1234",
  "reviewedAt": "2023-01-10T05:39:14.500Z",
  "startTime": "2023-01-01T09:41:00.000Z",
  "endTime": "2023-01-10T05:39:24.500Z",
  "outputs": [
    {
      "object": "document_processor_run",
      "id": "dpr_1234",
      "edited": true,
      "type": "EXTRACT",
      "initialOutput": {
        // Output object - see “Processor output types” for details
      },
      "reviewedOutput": {
        // Output object - see “Processor output types” for details
      },
      "output": {
        // Output object - see “Processor output types” for details
      }
    }
  ],
  "stepRuns": [
    {
      "object": "workflow_step_run",
      "id": "step_run_5UUwMs8baKLE5yFS8-0yK",
      "status": "PROCESSED",
      "output": {
        "externalConfidence": 0.8,
        "requiresHumanReview": true
      },
      "step": {
        "object": "workflow_step",
        "id": "step_abolADNNmLcOlTtuxDvle",
        "name": "externalDataValidation1",
        "type": "EXTERNAL_DATA_VALIDATION"
      }
    },
    {
      "object": "workflow_step_run",
      "id": "step_run_OjueNCarlQNpkYfnFkD-A",
      "status": "PROCESSED",
      "output": {
        "valid": false,
        "rules": [
          {
            "name": "invoice_number_present",
            "valid": true
          },
          {
            "name": "line_item_amount",
            "valid": true,
            "validArray": [
              true,
              true
            ]
          },
          {
            "name": "vendor_number_present",
            "valid": false,
            "failureReason": "RULE_FAILED"
          }
        ]
      },
      "step": {
        "object": "workflow_step",
        "id": "step_Q1POO8orTTWgX7CmLLvJZ",
        "name": "validation1",
        "type": "RULE_VALIDATION"
      }
    }
  ],
  "workflow": {
    "object": "workflow",
    "id": "workflow_1234",
    "version": "1",
    "name": "test_workflow"
  }
}
```