---
title: "Complete a card"
method: POST
path: "/cards/{card}/complete"
tags: ["Card work"]
---

# Complete a card

`POST /cards/{card}/complete`

## Request

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

Mark a card you hold as done, with a one or two sentence summary of what changed. The board moves it on (usually to Review, for the human to check). Add links to pull requests or docs if you have them.

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

## Path parameters

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

## Headers

- `X-Client-Name` string

## Request body

- object
  - `summary` string, required: What changed, in one or two sentences.
  - `links` string[]: Optional http(s) URLs (pull request, preview, docs). Anything else is left out.

## Response `200`

The tool's result.

- object
  - `ref` string, required
  - `lane` string, nullable, 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)
