---
title: "Run Workflow Non Blocking"
method: POST
path: "/wf/{workflow_id}/start_run/"
tags: ["workflow runs"]
---

# Run Workflow Non Blocking

`POST /wf/{workflow_id}/start_run/`

Start a non-blocking workflow run and return the run details

## Path parameters

- `workflow_id` string, required

## Query parameters

- `run_type` string

## Request body

- StartRunRequestSchema
  - `initial_inputs` object, nullable
  - `parent_run_id` string, nullable
  - `files` object, nullable

## Response `200`

Successful Response

- RunResponseSchema
  - `id` string, required
  - `workflow_id` string, required
  - `workflow_version_id` string, nullable
  - `workflow_version` WorkflowVersionResponseSchema — A response containing the details of a workflow version.
    - `version` integer, required
    - `name` string, required
    - `description` string, nullable, required
    - `definition` unknown, required
    - `definition_hash` string, required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
  - `status` 'PENDING' | 'RUNNING' | 'COMPLETED' | 'FAILED' | 'PAUSED' | 'CANCELED', required
  - `start_time` string, date-time, required
  - `end_time` string, date-time, nullable
  - `initial_inputs` object, nullable
  - `outputs` object, nullable
  - `tasks` TaskResponseSchema[]
    - `id` string, required
    - `run_id` string, required
    - `node_id` string, required
    - `parent_task_id` string, nullable, required
    - `status` 'PENDING' | 'RUNNING' | 'COMPLETED' | 'FAILED' | 'CANCELED' | 'PAUSED', required
    - `inputs` unknown, required
    - `outputs` unknown, required
    - `error` string, nullable, required
    - `start_time` string, date-time, nullable, required
    - `end_time` string, date-time, nullable, required
    - `subworkflow` WorkflowDefinitionSchemaOutput, required — A workflow is a DAG of nodes.
      - `nodes` WorkflowNodeSchemaOutput[], required
        - `id` string, required
        - `title` string
        - `parent_id` string, nullable
        - `node_type` string, required
        - `config` object
        - `coordinates` WorkflowNodeCoordinatesSchema — Coordinates for a node in a workflow.
          - `x` number, required
          - `y` number, required
        - `dimensions` WorkflowNodeDimensionsSchema — Dimensions for a node in a workflow.
          - `width` number, required
          - `height` number, required
        - `subworkflow` WorkflowDefinitionSchemaOutput — recursive
      - `links` WorkflowLinkSchema[], required
        - `source_id` string, required
        - `target_id` string, required
        - `source_handle` string, nullable
        - `target_handle` string, nullable
      - `test_inputs` object[]
      - `spur_type` 'workflow' | 'chatbot' | 'agent' — Enum representing the type of spur. Workflow: Standard workflow with nodes and edges Chatbot: Essentially a workflow with chat compatible IO and session management Agent: Autonomous agent node that calls tools, also has chat compatible IO and session management
    - `subworkflow_output` object, nullable, required
  - `parent_run_id` string, nullable
  - `run_type` string
  - `output_file_id` string, nullable
  - `input_dataset_id` string, nullable
  - `message` string, nullable
  - `duration` number, nullable, required
  - `percentage_complete` number, required

## Other responses

- `422` — Validation Error

## Changes

- **2025-03-12** `181efcea9e6e` — 1 info
  - endpoint added
- **2024-11-23** `a2d864f3a8db` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/pyspur-dev/apis/pyspur-api/changes/wf/:workflow_id/start_run/post.md)

---

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