Hello LiveKit Support,
We are troubleshooting a connection issue on our LiveKit Cloud project bg-interviews-2-jru6e6g5.livekit.cloud and found what appears to be a server-side issue with the regions endpoint.
Observed behavior
The endpoint below returns HTTP 200 OK with a plain-text body of “unauthorized”:
https://bg-interviews-2-jru6e6g5.livekit.cloud/settings/regions
Expected behavior
We would expect one of the following:
-
HTTP 200 with valid JSON region data for authenticated requests
-
HTTP 401 for unauthenticated or invalid requests
Why this is causing failures
The LiveKit JS SDK’s region handling treats any 200 response as success and then attempts to parse the body as JSON. Because the response body is the string “unauthorized” instead of valid JSON, response.json() throws a parse error. That error is then surfaced by the SDK as ConnectionError.serverUnreachable.
What we have confirmed
-
curl https://bg-interviews-2-jru6e6g5.livekit.cloud/settings/regions returns HTTP 200 with body “unauthorized”
-
Worker registration succeeds against the same project, so the API key/secret pair appears valid
-
The failure is specifically tied to the /settings/regions response format/authorization behavior
Request
Could you please check why this project’s /settings/regions endpoint is returning “unauthorized” with HTTP 200, including for SDK-authenticated requests?
It would help to know:
-
whether this endpoint is misconfigured for this specific project
-
whether region lookup is enabled/disabled incorrectly on the project
-
whether the endpoint is expected to require authentication, and if so, why it is returning 200 instead of 401
If needed, we can also provide SDK logs and token-generation details.
Regards,
Ameh