---
title: "Retrieve Task Run Result"
method: GET
path: "/v1/tasks/runs/{run_id}/result"
tags: ["Tasks v1"]
---

# Retrieve Task Run Result

`GET /v1/tasks/runs/{run_id}/result`

Retrieves a run result by run_id, blocking until the run is completed.

## Path parameters

- `run_id` string, required

## Query parameters

- `timeout` integer

## Response `200`

Successful Response

- TaskRunResult — Result of a task run.
  - `output` union, required — Output from the task conforming to the output schema.
    - TaskRunTextOutput — Output from a task that returns text.
      - `basis` FieldBasis[], required — Basis for the output. The basis has a single field 'output'.
        - `citations` Citation[] — List of citations supporting the output field.
          - `excerpts` string[], nullable — Excerpts from the citation supporting the output. Only certain processors provide excerpts.
          - `title` string, nullable — Title of the citation.
          - `url` string, required — URL of the citation.
        - `confidence` string, nullable — Confidence level for the output field. Only certain processors provide confidence levels.
        - `field` string, required — Name of the output field.
        - `reasoning` string, required — Reasoning for the output field.
      - `beta_fields` object, nullable — Additional fields from beta features used in this task run. When beta features are specified during both task run creation and result retrieval, this field will be empty and instead the relevant beta attributes will be directly included in the `BetaTaskRunJsonOutput` or corresponding output type. However, if beta features were specified during task run creation but not during result retrieval, this field will contain the dump of fields from those beta features. Each key represents the beta feature version (one amongst parallel-beta headers) and the values correspond to the beta feature attributes, if any. For now, only MCP server beta features have attributes. For example, `{mcp-server-2025-07-17: [{'server_name':'mcp_server', 'tool_call_id': 'tc_123', ...}]}}`
      - `content` string, required — Text output from the task.
      - `type` 'text', required — The type of output being returned, as determined by the output schema of the task spec.
    - TaskRunJsonOutput — Output from a task that returns JSON.
      - `basis` FieldBasis[], required — Basis for each top-level field in the JSON output. Per-list-element basis entries are available only when the `parallel-beta: field-basis-2025-11-25` header is supplied.
        - `citations` Citation[] — List of citations supporting the output field.
          - `excerpts` string[], nullable — Excerpts from the citation supporting the output. Only certain processors provide excerpts.
          - `title` string, nullable — Title of the citation.
          - `url` string, required — URL of the citation.
        - `confidence` string, nullable — Confidence level for the output field. Only certain processors provide confidence levels.
        - `field` string, required — Name of the output field.
        - `reasoning` string, required — Reasoning for the output field.
      - `beta_fields` object, nullable — Additional fields from beta features used in this task run. When beta features are specified during both task run creation and result retrieval, this field will be empty and instead the relevant beta attributes will be directly included in the `BetaTaskRunJsonOutput` or corresponding output type. However, if beta features were specified during task run creation but not during result retrieval, this field will contain the dump of fields from those beta features. Each key represents the beta feature version (one amongst parallel-beta headers) and the values correspond to the beta feature attributes, if any. For now, only MCP server beta features have attributes. For example, `{mcp-server-2025-07-17: [{'server_name':'mcp_server', 'tool_call_id': 'tc_123', ...}]}}`
      - `content` object, required — Output from the task as a native JSON object, as determined by the output schema of the task spec.
      - `output_schema` object, nullable — Output schema for the Task Run. Populated only if the task was executed with an auto schema.
      - `type` 'json', required — The type of output being returned, as determined by the output schema of the task spec.
  - `run` TaskRun, required — Status of a task run.
    - `created_at` string, nullable, required — Timestamp of the creation of the task, as an RFC 3339 string.
    - `error` Error — An error message.
      - `detail` object, nullable — Optional detail supporting the error.
      - `message` string, required — Human-readable message.
      - `ref_id` string, required — Reference ID for the error.
    - `is_active` boolean, required — Whether the run is currently active, i.e. status is one of {'cancelling', 'queued', 'running'}.
    - `metadata` object, nullable — User-provided metadata stored with the run.
    - `modified_at` string, nullable, required — Timestamp of the last modification to the task, as an RFC 3339 string.
    - `processor` string, required — Processor used for the run.
    - `run_id` string, required — ID of the task run.
    - `status` 'queued' | 'action_required' | 'running' | 'completed' | 'failed' | 'cancelling' | 'cancelled', required — Status of the run.
    - `taskgroup_id` string, nullable — ID of the taskgroup to which the run belongs.
    - `warnings` Warning[], nullable — Warnings for the run, if any.
      - `detail` object, nullable — Optional detail supporting the warning.
      - `message` string, required — Human-readable message.
      - `type` 'spec_validation_warning' | 'input_validation_warning' | 'warning', required — Type of warning. Note that adding new warning types is considered a backward-compatible change.

## Other responses

- `401` — Unauthorized: invalid or missing credentials
- `404` — Run failed or run id not found
- `408` — Request timed out; run still active
- `422` — Request validation error

## Changes

- **2026-01-13** `105d778ad64d` — 5 breaking, 33 info
  - the `error` response's property type/format changed from ``/`` to `object`/`` for status `401`
  - the `error` response's property type/format changed from ``/`` to `object`/`` for status `404`
  - the `error` response's property type/format changed from ``/`` to `object`/`` for status `408`
  - the `error` response's property type/format changed from ``/`` to `object`/`` for status `422`
  - …34 more
- **2025-11-06** `a2d634b57a8e` — 2 info
  - api tag `Tasks v1` added
  - api tag `Task API v1` removed
- **2025-08-31** `1aeb1c81a849` — 1 breaking, 4 warning, 13 info
  - added `#/components/schemas/TaskRunTextOutput, #/components/schemas/TaskRunJsonOutput` to the `output` response property `oneOf` list for the response status `200`
  - removed the optional property `detail` from the response with the `422` status
  - added the new `input_validation_warning` enum value to the `run/allOf[subschema #1: TaskRun]/warnings/anyOf[subschema #1]/items/type` response property for the response status `200`
  - added the new `spec_validation_warning` enum value to the `run/allOf[subschema #1: TaskRun]/warnings/anyOf[subschema #1]/items/type` response property for the response status `200`
  - …14 more
- …earlier changes not shown

[Full history](https://skmtc.dev/parallel-web/apis/parallel-api/changes/v1/tasks/runs/:run_id/result/get.md)

---

[API](https://skmtc.dev/parallel-web/apis/parallel-api.md) · [All operations](https://skmtc.dev/parallel-web/apis/parallel-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/parallel-web/parallel-api/revisions/31ff2f5e2e00/schema)
