---
title: "Update Virtual Ticket"
method: PATCH
path: "/api/dashboards/{dashboard_id}/virtual-tickets/{block_id}/{item_id}"
tags: ["dashboards"]
---

# Update Virtual Ticket

`PATCH /api/dashboards/{dashboard_id}/virtual-tickets/{block_id}/{item_id}`

## Request

- Base URL: `https://app.ctlsurf.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.ctlsurf.com/api/dashboards/{dashboard_id}/virtual-tickets/{block_id}/{item_id}`
- Auth: HTTP bearer

Write a board move or edit back to the source ctlsurf_task / checklist item.

## Path parameters

- `dashboard_id` string, uuid, required
- `block_id` string, uuid, required
- `item_id` string, required

## Request body

- VirtualTicketUpdate
  - `stage` 'todo' | 'in_progress' | 'blocked' | 'done', nullable
  - `text` string, nullable
  - `note` string, nullable
  - `completion` TaskCompletion: Structured completion data required when marking a task as done. Forces agents to document assumptions, failed attempts, and simplifications.
    - `summary` string, required
    - `assumptions` string[], required
    - `attempted_but_failed` string[], required
    - `simplified_or_skipped` string[], required
    - `caveats` string[]
    - `follow_ups` string[]

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/ctlsurf/apis/notebook-control-plane.md) · [All operations](https://skmtc.dev/ctlsurf/apis/notebook-control-plane/llms.txt) · [OpenAPI document](https://skmtc.dev/ctlsurf/apis/notebook-control-plane/revisions/ddfbbe20d5ce?raw)
