---
title: "Revoke a managed key"
method: DELETE
path: "/v1/agent-keys/{keyId}"
tags: ["agent-keys"]
---

# Revoke a managed key

`DELETE /v1/agent-keys/{keyId}`

## Request

- Base URL: `https://api.bubblio.dev`
- URL: `https://api.bubblio.dev/v1/agent-keys/{keyId}`
- Auth: HTTP bearer

Idempotent and customer-scoped; the row is kept (the quote path needs `revoked_at`
to refuse honestly), and the FIRST revoke's timestamp survives repeats. In-flight
quotes made with the key refuse to confirm from this moment.

## Path parameters

- `keyId` string, uuid, required

## Response `200`

Revoked (idempotently).

- object
  - `ok` boolean
  - `revoked` string

## Other responses

- `404`: Not this customer's key (uniform with malformed ids).

---

[API](https://skmtc.dev/bubblio/apis/bubblio-agent-door-api.md) · [All operations](https://skmtc.dev/bubblio/apis/bubblio-agent-door-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bubblio/apis/bubblio-agent-door-api/revisions/d858aff9c01d?raw)
