---
title: "Cancel One Job"
method: POST
path: "/api/conversations/{conversation_id}/jobs/{job_id}/cancel"
tags: ["jobs"]
---

# Cancel One Job

`POST /api/conversations/{conversation_id}/jobs/{job_id}/cancel`

## Request

- Base URL: `https://api.tintin-x.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tintin-x.com/api/conversations/{conversation_id}/jobs/{job_id}/cancel`
- Auth: HTTP bearer

Cancel a single in-flight async job within a conversation.

Returns 404 when the job isn't registered against this conversation
(TTL expired, never registered, finished, or wrong id) — makes
repeat-clicks idempotent without resurrecting stale state.

Returns 200 even when no upstream fal cancel was fired (e.g. the
job is non-fal, or the worker hasn't mirrored the request_id back
yet). The cancel sentinel is set in either case so the worker
short-circuits on next SQS receive.

## Path parameters

- `conversation_id` string, uuid, required
- `job_id` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/tintin-x/apis/tintin-api.md) · [All operations](https://skmtc.dev/tintin-x/apis/tintin-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tintin-x/apis/tintin-api/revisions/8839a8d0a66c?raw)
