archive_task
Archives a task (or several — taskId accepts an array, up to 100): it leaves the lists and the card indicators, without being destroyed. It is the action that replaces a deletion. Archiving never cascades to subtasks: if it keeps LIVE ones, the response SAYS so via liveChildren + liveChildrenNote (the action still succeeds; subtasks are archived explicitly if that is intended). In BATCH form, each id is archived INDEPENDENTLY — an id not found never prevents the others from succeeding — and the response carries succeeded/failed instead of the flat fields of the single action.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| taskId | Yes | ONE identifier, or UP TO 100 (array) — each one is archived INDEPENDENTLY: a refusal (locked block, task not found) on one does not prevent the others from succeeding. In batch form, the response carries `succeeded`/`failed` instead of the flat fields of the single action. | |
| claimToken | No | The token of YOUR claim (returned by `claim_task`) — REQUIRED to write to a task a lease holds: without it, the refusal is `CLAIM_HELD`; a stale token gives `CLAIM_LOST`. A SECRET that stays out of every written text. Any write that carries it extends the lease without touching the declared progress; the end of the task (`done`, archiving, back to `todo`) releases the claim. On a task nobody holds, the field stays empty. | |
| expectedProjectId | No | UUID of the project targeted by THIS call. ACTUALLY targets this project instead of the session project. Refused without changing anything if access is not granted. |