---
title: "Revoke an API key for the authenticated customer"
method: DELETE
path: "/v1/api-keys/{key_id}"
tags: ["API Keys"]
---

# Revoke an API key for the authenticated customer

`DELETE /v1/api-keys/{key_id}`

## Request

- Base URL: `https://api.platform.soax.com`
- URL: `https://api.platform.soax.com/v1/api-keys/{key_id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/soax/apis/soax-api/docs/v1/api-keys/:key_id/delete.ts> (a function with typed inputs; its response is checked against the schema)

Revoke an API key belonging to your organization. Revocation is a soft delete: the key keeps appearing in `GET /v1/api-keys/` with status `revoked`, but any request using it is rejected with 401 from that point on. A key can revoke itself. Revocation cannot be undone — create a new key instead.

Requires the `api-keys:write` scope.

## Path parameters

- `key_id` string, required: The API key ID to revoke

## Response `204`

Successful Response

## Other responses

- `401`: Missing, invalid, or revoked API key.
- `403`: The API key does not carry the scope this endpoint requires.
- `404`: The resource does not exist, belongs to another organization, or is outside the API key's package restriction.
- `422`: Validation Error
- `429`: Rate limit exceeded (5 requests/second per API key, 500 requests/minute per IP). The response includes `Retry-After` (seconds), `RateLimit-Limit`, `RateLimit-Remaining`, and `RateLimit-Reset` (Unix time) headers — wait `Retry-After` seconds and retry.

---

[API](https://skmtc.dev/soax/apis/soax-api.md) - [All operations](https://skmtc.dev/soax/apis/soax-api/llms.txt) - [OpenAPI document](https://skmtc.dev/soax/apis/soax-api/revisions/2abdaa934277?raw)
