Missing or invalid API key
The request carried no usable API key.
| Problem type | /problems/unauthenticated |
|---|---|
| HTTP status | 401 |
| Emitted by | REST API (/v1) |
| Title values | Missing or invalid API key |
| Response headers | WWW-Authenticate |
| Trigger |
REST API (/v1):
missing/unknown API key
|
What happened
The Authorization header was absent, was not of the form Bearer senv_live_... or Bearer senv_test_..., or named a key that is unknown, revoked, or expired. The response is HTTP 401 with WWW-Authenticate: Bearer.
What it means
Revoked, expired, and never-existed keys are reported identically. No request state is consulted before this check, so a 401 says nothing about the resource.
What to do next
Send the full key exactly as it was given to you. A test key can be copied again from Settings, API keys; a live key is shown once, when it is created. If the key was revoked, create a new one there, or with POST /v1/keys using a key that still works. Live keys are revoked when a workspace returns to the sandbox (a cancellation or an unpaid balance) and stay revoked: after going live again, create new live keys on the API keys page. Every key of a deleted workspace is revoked too.
Problem body
Every error the API returns is an RFC 9457 problem document with media type
application/problem+json. The type member is the
stable identifier to switch on; docs_url is this page.
{
"type": "/problems/unauthenticated",
"title": "Missing or invalid API key",
"status": 401,
"instance": "/v1/...",
"docs_url": "https://staging.signenvoy-docs-b4g.pages.dev/errors/unauthenticated"
}