---
title: "Revoke a key"
method: DELETE
path: "/v1/keys/{key_id}"
tags: ["Account"]
---

# Revoke a key

`DELETE /v1/keys/{key_id}`

## Request

- Base URL: `https://api.placementapi.com`
- URL: `https://api.placementapi.com/v1/keys/{key_id}`
- Auth: HTTP bearer

Scoped to your own keys. Revoking the key you are using is refused with 409 unless `?confirm=self`.

## Path parameters

- `key_id` string, required

## Query parameters

- `confirm` 'self'

## Response `200`

OK

- object
  - `key_id` string
  - `revoked` true

## Other responses

- `401`: Missing, malformed or revoked Bearer credential: `{ error: "unauthorized" }`.
- `403`: `insufficient_scope` when the key lacks the `order` scope; `customer_key_required` when the operator token is used where a customer must be attributable.
- `404`: `not_found`.
- `409`: `would_revoke_current_key`.
- `503`: `server_misconfigured` when the store is not configured; `upstream_unfunded` when the measurement provider's prepaid balance is exhausted (fresh profiles, gap maps and SERPs pause; cached results and catalogue are unaffected); `upstream_unavailable` on a provider error; `payments_unavailable` when card payments are not configured.

---

[API](https://skmtc.dev/placementapi/apis/placement-api.md) · [All operations](https://skmtc.dev/placementapi/apis/placement-api/llms.txt) · [OpenAPI document](https://skmtc.dev/placementapi/apis/placement-api/revisions/fc4e7866eaf7?raw)
