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

# Invalid or revoked API key

> 401 — The API key presented was rejected.

The API key presented was rejected.

```json 401 application/problem+json theme={null}
{
  "type": "https://docs.permitcore.io/errors/invalid-api-key",
  "title": "Invalid or revoked API key",
  "status": 401,
  "detail": "…",
  "instance": "/v1/permits",
  "request_id": "req_1f07fb45782b445e9f6312ba23921234"
}
```

Every PermitCore error is [RFC 9457](https://www.rfc-editor.org/rfc/rfc9457)
`application/problem+json`. **Branch on `type` (a stable URI)**, not on `title`
or `detail` (human-readable, may change).

## When it occurs

The credential could not be authenticated. In most cases the API returns [`invalid-credentials`](/errors/invalid-credentials) for a bad key; this generic variant is emitted on the fallback path.

## How to fix

Confirm you are sending the full plaintext key, or rotate it at [permitcore.io/account/api-keys](https://permitcore.io/account/api-keys). Not retryable unchanged.

**Not retryable** — fix the request before resubmitting; retrying unchanged returns the same error.

See the full [error catalog](/errors) for the response shape and retry matrix.
Every response carries an `x-request-id` header — include it in any support request.
