---
title: "Trigger Run"
method: POST
path: "/api/v1/steps/project/{project_id}/run"
tags: ["steps"]
---

# Trigger Run

`POST /api/v1/steps/project/{project_id}/run`

Trigger a new run for a project.

- root_step_id=None → run all active steps (Run All).
- root_step_id=<id> → refresh that output: runs its ancestor closure back to roots.
  The target must be a ``database`` step.

## Path parameters

- `project_id` string, uuid, required

## Request body

- RunCreate — Trigger a new run. ``root_step_id`` is the target output (a database step). Null ``root_step_id`` means Run All — run every active step in the project. Project runs intentionally expose execution controls only. Runtime parameters belong to an App-invoked Automation; rejecting unknown fields prevents obsolete clients from silently submitting ignored ``input_data``. ``force_full`` bypasses the AI Lambda's content-addressed cache / the custom Lambda's api_action ledger for this run only — used for manual replays after schema changes or bug fixes. Cascade-created runs leave this False (see spec §7d — force_full does not propagate through cascade).
  - `root_step_id` string, uuid, nullable
  - `force_full` boolean

## Response `201`

Successful Response

- DomainsPipelinesSchemasRunRead — Run response.
  - `id` string, uuid, required
  - `project_id` string, uuid, required
  - `company_id` string, uuid, required
  - `user_id` string, uuid, required
  - `root_step_id` string, uuid, nullable, required
  - `status` string, required
  - `error` string, nullable, required
  - `error_summary` string, nullable, required
  - `trigger_source` string, required
  - `source_run_id` string, uuid, nullable
  - `temporal_workflow_id` string, nullable, required
  - `force_full` boolean
  - `started_at` string, date-time, required
  - `finished_at` string, date-time, nullable, required
  - `step_runs` StepRunRead[]
    - `id` string, uuid, required
    - `run_id` string, uuid, required
    - `step_id` string, uuid, nullable, required
    - `status` string, required
    - `error` string, nullable, required
    - `logs` string, nullable, required
    - `started_at` string, date-time, nullable, required
    - `finished_at` string, date-time, nullable, required
    - `rows_processed` integer, nullable
    - `output_row_count` integer, nullable
    - `rows_new` integer, nullable
    - `rows_changed` integer, nullable
    - `rows_removed` integer, nullable
    - `ai_rows_cached` integer, nullable
    - `ai_rows_processed` integer, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/netter/apis/dmi-backend.md) · [All operations](https://skmtc.net/netter/apis/dmi-backend/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/netter/dmi-backend/versions/a59877bf911b/schema)
