API reference · Keys
Revoke this key
POST/v1/me/key/revoke
Revokes the key the request is signed with, at once and for good, as revoking it in Settings → API would. Any valid key can revoke itself: for a script that is done with its key, or a command-line tool logging out. The account holder gets the usual email.
Responses
200 OK
The key, now revoked. application/json · RevokedKey
keyobject3 properties
idstringstatus"revoked"revoked_atstring (date-time)
Every response carries MK-Request-Id, plus RateLimit-Policy and RateLimit.
Errors
Errors use the error envelope. Match on code.
| Status | Code | Meaning |
|---|---|---|
| 400 | invalid_request | The request is malformed: bad JSON, an unknown or invalid field, or a missing header. |
| 401 | invalid_signature | The MK-* headers are missing or malformed, the key id is unknown, or the signature doesn't match. |
| 401 | key_expired | The key has passed its expiry date. |
| 401 | key_revoked | The key was revoked. |
| 401 | timestamp_out_of_range | MK-Timestamp is more than 30 seconds from the server clock. |
| 401 | nonce_reused | This key already used this MK-Nonce. |
| 403 | ip_not_allowed | The request came from an address outside the key's IP allowlist. |
| 429 | rate_limited | Too many requests. Wait for Retry-After seconds. |
| 429 | too_many_concurrent_requests | Too many requests in flight for this key or account. |
| 429 | key_suspended | The key is suspended, for example after sustained rate limiting. |
| 500 | internal_error | Something went wrong on our side. |
| 502 | bad_gateway | An upstream service answered unexpectedly. |
| 503 | overloaded | The service is overloaded. Retry after Retry-After seconds. |
| 503 | service_unavailable | The service is temporarily unavailable. |
| 504 | gateway_timeout | An upstream service didn't answer in time. A POST may still complete; retry with the same Idempotency-Key. |
Request
# Signed by sign-headers.sh: see Authentication
curl https://public-api.myntkaup.is/v1/me/key/revoke \
-X POST \
$(./sign-headers.sh POST /v1/me/key/revoke | sed 's/^/-H /')import { Myntkaup } from "@myntkaup/api";
const client = new Myntkaup(); // reads the key from the environment
// Every request this key signs after this fails.
const { key } = await client.revokeKey();
console.log(key.id, key.revoked_at);from myntkaup import Myntkaup
client = Myntkaup() # reads the key from the environment
# Every request this key signs after this fails.
key = client.revoke_key()["key"]
print(key["id"], key["revoked_at"])Response
{
"key": {
"id": "mk_live_4f9c2a7d1e0b8c6a5d3f",
"status": "revoked",
"revoked_at": "2026-11-03T10:15:10Z"
}
}Base URL https://public-api.myntkaup.is