> ## Documentation Index
> Fetch the complete documentation index at: https://docs.noresponse.org/llms.txt
> Use this file to discover all available pages before exploring further.

# 409 self_revocation

> You called DELETE /v1/workspaces/{workspace_id}/keys/{key_id} with the key that key_id names.

HTTP 409Not retryable

## Why

A key never revokes itself, so a revocation made with a key always leaves a management key in the environment.

## What to do

To replace the key, rotate it with `POST /v1/keys/rotate`: it stops working when the overlap ends. To end it now, revoke it with another management key.

## In the SDKs

The Node and Python SDKs raise `ConflictError`. The Go SDK returns `*apierrors.ConflictError`, which you match with `errors.As`.

```json title="409 self_revocation" theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
{
  "type": "https://docs.noresponse.org/problems/self-revocation",
  "title": "Self revocation",
  "status": 409,
  "detail": "An API key cannot revoke itself; rotate it, or revoke it with another management key.",
  "code": "self_revocation",
  "request_id": "5e8be3a91fde9499f7ce48ae66290895"
}
```

Every error has this shape. [Errors and limits](https://docs.noresponse.org/reference/errors.md) lists every code.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.