---
title: "Delete a KV namespace"
method: DELETE
path: "/storage/kvs/{id}"
tags: ["kv namespaces"]
---

# Delete a KV namespace

`DELETE /storage/kvs/{id}`

Deletes a KV namespace and all of the keys it contains. Deletion is asynchronous: the namespace is returned with status `deleting`. Deleting a namespace whose deletion is already in progress returns a `409`.

## Path parameters

- `id` string, uuid, required

## Response `200`

KV namespace deletion initiated

- KvNamespaceResponseWrapper
  - `data` KvNamespace
    - `record_type` string
    - `id` string, uuid
    - `name` string
    - `status` 'pending' | 'provision_ok' | 'provision_failed' | 'deleting' | 'delete_failed' — Provisioning status. A namespace is usable once `status` is `provision_ok`. Once deletion completes, the namespace no longer appears in the API.
    - `created_at` string, date-time
    - `updated_at` string, date-time

## Other responses

- `400` — Bad request — `id` is not a valid UUID
- `401` — Unauthorized
- `404` — KV namespace not found
- `409` — Conflict — the namespace is already being deleted
- `500` — Internal server error

---

[API](https://skmtc.net/team-telnyx/apis/telnyx-api-2.md) · [All operations](https://skmtc.net/team-telnyx/apis/telnyx-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/team-telnyx/telnyx-api-2/versions/8f5f4e537994/schema)
