Skip to main content
err:frontline:client:missing_credentials
The API you called runs on Unkey, and it needs an API key. The gateway didn’t find one where it looks, so the request never reached the . You get 401 Unauthorized.
Example response
Browsers get the same error as an HTML page.

If you’re calling an API hosted on Unkey

Send your API key where the API expects it. Unless the owner told you otherwise, that’s the Authorization header as a bearer token:
Common causes:
  • The Bearer prefix is missing. It isn’t case-sensitive, but without it the header is ignored.
  • The header is there but empty. That counts as missing.
  • The owner uses a custom header or query parameter. Use exactly the name they gave you.
  • You don’t have a key. Only the API owner can issue one.

If you own this API

Your key-auth policy lists where to look for the key: the Authorization: Bearer header, a named header (optionally with a prefix to strip), or a query parameter. It uses the first non-empty value, in order. With no locations set, it only reads Authorization: Bearer. Common causes:
  • Callers send the key somewhere the policy doesn’t look.
  • A stripPrefix doesn’t match what callers send. For example, stripPrefix: "Key " finds nothing in Authorization: Bearer ....

How to fix

  1. Compare where your callers send the key with the policy’s key locations.
  2. Add a second location if you need to accept both styles, and remove or loosen a stripPrefix that callers don’t send.
  3. Create a new deployment. The running deployment keeps the policies it started with.
Last modified on October 6, 2026