---
title: "Update task status"
method: PUT
path: "/task/status/{id}"
tags: ["Tasks"]
---

# Update task status

`PUT /task/status/{id}`

Move a task to another column in the same project.

## Path parameters

- `id` string, required

## Request body

- object
  - `status` string, required

## Response `200`

The updated task

- Task
  - `id` string, required
  - `projectId` string, required
  - `position` number, nullable, required — Order within its column, ascending.
  - `number` number, nullable, required — Per-project counter shown as {projectSlug}-{number}.
  - `userId` string, nullable, required — The assignee, if any.
  - `title` string, required
  - `description` string, nullable, required
  - `status` string, required — The slug of the column the task sits in.
  - `priority` string, required — One of: no-priority, low, medium, high, urgent.
  - `startDate` string, date-time, nullable, required
  - `dueDate` string, date-time, nullable, required
  - `createdAt` string, date-time, required

## Other responses

- `400` — Invalid body, or unknown task
- `401` — Missing or invalid credentials
- `403` — No workspace access, or missing task:update permission

## Changes

- **2026-08-24** `08bbb5bedb5d` — 2 breaking, 10 info
  - the response property `dueDate` became nullable for the status `200`
  - the response property `startDate` became nullable for the status `200`
  - added the non-success response with the status `400`
  - added the non-success response with the status `401`
  - …8 more
- **2026-07-11** `32cece1ebe43` — 4 breaking, 1 info
  - request body became required
  - the `createdAt` response's property type/format changed from ``/`` to `string`/`date-time` for status `200`
  - the `dueDate` response's property type/format changed from ``/`` to `string`/`date-time` for status `200`
  - the `priority` response's property type/format changed from ``/`` to `string`/`` for status `200`
  - …1 more
- **2026-03-05** `c45ef22a736c` — 4 breaking, 4 info
  - the response property `description` became nullable for the status `200`
  - the response property `number` became nullable for the status `200`
  - the response property `position` became nullable for the status `200`
  - the response property `userId` became nullable for the status `200`
  - …4 more
- …earlier changes not shown

[Full history](https://skmtc.dev/usekaneo/apis/kaneo-api/changes/task/status/:id/put.md)

---

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