---
title: "Set status"
method: PATCH
path: "/operations/operations_tasks/set_status/v1"
tags: ["/operations/operations_tasks"]
---

# Set status

`PATCH /operations/operations_tasks/set_status/v1`

Sets the same status on each selected OperationsTask. Completing tasks stamps completed_at/by while other statuses clear them; missing or cross-org ids are skipped. | authz: min_org_role=operator | (OperationsTasksSetStatusReq1) -> (OperationsTasksStatusUpdateRes1)

## Request body

- OperationsTasksSetStatusReq1
  - `operations_task_ids` string[], required
  - `status` 'not_started' | 'in_progress' | 'blocked' | 'completed' | 'skipped' | 'cancelled', required — Operator-driven lifecycle of an operations task. Manually driven by operators for now (no automatic transitions). Kept structurally parallel to the Check status model in anticipation of the eventual Task <-> Check merge.

## Response `200`

Successful Response

- OperationsTasksStatusUpdateRes1
  - `updated_count` integer, required — How many requested tasks were found in the caller's org and updated; a lower count means missing or cross-org task ids were skipped.

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-16** `90f02389cb0d` — 1 info
  - added the new `blocked` enum value to the request property `status`

[Change history](https://skmtc.dev/chrt/apis/chrt-fastapi/changes/operations/operations_tasks/set_status/v1/patch.md)

---

[API](https://skmtc.dev/chrt/apis/chrt-fastapi.md) · [All operations](https://skmtc.dev/chrt/apis/chrt-fastapi/llms.txt) · [OpenAPI document](https://skmtc.dev/chrt/apis/chrt-fastapi/revisions/f39d4c9e8d5b?raw)
