---
title: "Cancel the draft Luca is writing for one inbound turn"
method: POST
path: "/api/review-queue/drafting/{turnId}/cancel"
tags: ["Review queue"]
---

# Cancel the draft Luca is writing for one inbound turn

`POST /api/review-queue/drafting/{turnId}/cancel`

## Request

- Base URL: `https://api.setluca.com`
- URL: `https://api.setluca.com/api/review-queue/drafting/{turnId}/cancel`
- Auth: one of:
  - API key in cookie `luca.session_token`
  - API key in header `x-api-key`
  - HTTP bearer

Stops the run at its next step. The row stays on the drafting list for 24 hours with Retry and Dismiss. A queued draft that is still pending is taken back; an approved or sent one is not. Cancelling a turn that a cancel already stopped answers state cancelled.

**API key scopes:** `review_queue:write`. You also need an `Idempotency-Key` header.

## Path parameters

- `turnId` string, uuid, required

## Headers

- `Luca-API-Version` '1'

## Response `200`

ok

- DraftingCancelResponse
  - `turnId` string, uuid, required
  - `state` 'drafting' | 'pausing' | 'cancelling' | 'paused' | 'cancelled' | 'failed', required

## Other responses

- `401`: unauthorized
- `404`: not found
- `409`: conflict
- `429`: rate limited
- `500`: internal error

---

[API](https://skmtc.dev/setluca/apis/luca-api.md) · [All operations](https://skmtc.dev/setluca/apis/luca-api/llms.txt) · [OpenAPI document](https://skmtc.dev/setluca/apis/luca-api/revisions/90a200e4100b?raw)
