---
title: "Mark workpaper dirty"
method: POST
path: "/internal/api/clients/{client_id}/workpaper/mark-dirty"
tags: ["CLIENT", "Workpaper"]
---

# Mark workpaper dirty

`POST /internal/api/clients/{client_id}/workpaper/mark-dirty`

## Request

- Base URL: `https://api.signalshq.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.signalshq.io/internal/api/clients/{client_id}/workpaper/mark-dirty`
- Auth: OAuth 2
  - Password
  - Token URL: `/auth/login`

Sets workpaper_dirty for this client and tax year. GET workpaper will return status=STALE until the next successful evaluation. Call when document upload or questionnaire data changes.

## Path parameters

- `client_id` string, uuid, required: Client ID

## Request body

- WorkpaperMarkDirtyBody: Request body for POST workpaper/mark-dirty. Call when inputs change (e.g. document upload).
  - `tax_year` integer, required: Tax year for the workpaper to mark dirty

## Response `200`

Successful Response

- WorkpaperMarkDirtyResponse: Response for POST workpaper/mark-dirty.
  - `updated` boolean, required: True if a tax return was found and workpaper_dirty was set; false if no return.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/signalshq/apis/signals-api.md) - [All operations](https://skmtc.dev/signalshq/apis/signals-api/llms.txt) - [OpenAPI document](https://skmtc.dev/signalshq/apis/signals-api/revisions/2c22af3b5576?raw)
