---
title: "DELETE /v1/orgs/:slug — soft-delete an organization (Owner only)."
method: DELETE
path: "/v1/orgs/{slug}"
tags: ["organizations"]
---

# DELETE /v1/orgs/:slug — soft-delete an organization (Owner only).

`DELETE /v1/orgs/{slug}`

The org drops out of every lookup immediately (inaccessible) but its data is kept
for a grace window so the account is recoverable, then a background reconciler
purges everything. Billing is canceled and running sandboxes are stopped now so we
stop charging + consuming compute; both are best-effort and re-ensured by the purge
job. `confirm` must echo the slug (the dashboard's type-to-confirm).

## Path parameters

- `slug` string, required

## Request body

- DeleteOrgRequest — DELETE /v1/orgs/:slug — delete an organization. `confirm` must echo the org slug, mirroring the dashboard's type-to-confirm, so a deletion can't fire by accident.
  - `confirm` string, required

## Response `200`

Organization scheduled for deletion

- MessageResponse — Simple message response for operations without a body.
  - `message` string, required

## Other responses

- `400` — Confirmation does not match
- `401` — Unauthorized
- `403` — Owner role required

---

[API](https://skmtc.dev/microsandbox/apis/microsandbox-api.md) · [All operations](https://skmtc.dev/microsandbox/apis/microsandbox-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/microsandbox/microsandbox-api/revisions/23f2a45cb09b/schema)
