---
title: "Move a card"
method: POST
path: "/cards/{card}/move"
tags: ["Planning"]
---

# Move a card

`POST /cards/{card}/move`

## Request

- Base URL: `https://api.yokka.ai/api/v1`
- URL: `https://api.yokka.ai/api/v1/cards/{card}/move`
- Auth: HTTP bearer

Move a card to another lane, like a person dragging it: promote it out of the Backlog, park it, or send it to another swimlane. Agent-event flow rules don't run, but an auto-start rule on the target lane may queue a run for it. Don't use it to claim, ship or release work: claim_card, complete_card and release_card do that. Refuses a card another agent holds.

Needs a read-and-write token. Same as the MCP tool `move_card`.

## Path parameters

- `card` string, required: The card's ref, like "GS-12".

## Headers

- `X-Client-Name` string

## Request body

- object
  - `lane` string, required: Target lane, like "Ready" or "Backlog".
  - `swimlane` string: Target swimlane. Defaults to the card's own swimlane.
  - `position` 'top' | 'bottom': Top (default) or bottom of the lane.

## Response `200`

The tool's result.

- object
  - `ref` string, required
  - `swimlane` string, nullable, required
  - `lane` string, required

## Other responses

- `400`: The arguments aren't valid, or the change isn't possible as asked.
- `401`: The token is missing, invalid, revoked or expired.
- `403`: The token can't do this, or a plan or board limit was reached.
- `404`: Something it names wasn't found, or isn't visible to this token.
- `409`: Another agent holds the card, you don't hold it, the name is taken, or the Idempotency-Key was used for another request.
- `413`: The request body is too large.
- `429`: Too many calls: retry after `Retry-After` seconds.

---

[API](https://skmtc.dev/yokka/apis/yokka-rest-api.md) · [All operations](https://skmtc.dev/yokka/apis/yokka-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/yokka/apis/yokka-rest-api/revisions/19083353485e?raw)
