---
title: "Delete Subaccount"
method: DELETE
path: "/v1/subaccounts/{subaccount_id}"
tags: ["subaccounts"]
---

# Delete Subaccount

`DELETE /v1/subaccounts/{subaccount_id}`

## Request

- Base URL: `https://api.rivermarkets.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.rivermarkets.com/v1/subaccounts/{subaccount_id}`
- Auth: none declared

Delete a subaccount. Requires user:manage on the subaccount. Custodial
subaccounts cannot be deleted.

Refused with 409 if the subaccount has any open order (resting/in-flight
orders, or an active iceberg, peg, smart-taker or conditional order) —
cancel those first.

This is a soft delete: the row is marked is_active = false so the audit trail
(orders, fills, ledger entries) stays intact. The user never sees it again.

## Path parameters

- `subaccount_id` string, required

## Response `204`

Successful Response

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/rivermarkets/apis/river-finance-api.md) - [All operations](https://skmtc.dev/rivermarkets/apis/river-finance-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rivermarkets/apis/river-finance-api/revisions/3732aea08430?raw)
