---
title: "Delete Cfo Conversation"
method: DELETE
path: "/companies/{company_id}/cfo/conversations/{conversation_id}"
tags: ["cfo"]
---

# Delete Cfo Conversation

`DELETE /companies/{company_id}/cfo/conversations/{conversation_id}`

## Request

- Base URL: `https://app.zeno-works.ch` (the document declares no server; this is the origin it was published from)
- URL: `https://app.zeno-works.ch/companies/{company_id}/cfo/conversations/{conversation_id}`
- Auth: none declared

Delete a conversation (ZCT-257: accountant/owner).

Creating a conversation and sending messages stay member-level — the agent is a
member's reading tool. **Deleting is not symmetric with them**, and the asymmetry is
the point: ``repos/cfo_chat.delete_conversation`` filters on ``company_id`` alone and
never on ``created_by`` (which ``create_conversation`` does stamp), so this is not "a
member deleting their own thread" — it is any member deleting the owner's or the
fiduciary accountant's threads, and ``list_conversations`` is company-wide, so they can
see which ones those are.

Author-scoping the delete would be the better fix and is filed in
``progress/followups.md``; until then the role gate is what stops it.

## Path parameters

- `company_id` string, required
- `conversation_id` string, required

## Headers

- `authorization` string, nullable

## Cookies

- `access_token` string, nullable

## Response `204`

Successful Response

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zeno-works/apis/zeno-api.md) · [All operations](https://skmtc.dev/zeno-works/apis/zeno-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zeno-works/apis/zeno-api/revisions/1eb93dde146c?raw)
