Public URL error codes (LC1000 to LC1012)


When a request reaches a Public URL (also called a tunnel) but your app can't answer it, LocalCan replies with a 502 and a code that says which hop failed.

A browser gets an error page that shows the code. Other clients, such as curl or a webhook sender, get JSON. Every one of these responses carries an X-LocalCan-Error header with the code. LocalCan removes that header from your app's own responses, so when it's there, the error came from LocalCan. Header names are case-insensitive, so some tools show it as X-Localcan-Error.

JSON
{"error":"app_connection_refused","code":"LC1001","message":"LocalCan reached the computer behind this URL, but nothing is listening on localhost:3000.","host":"my-app.localcan.dev","target":"localhost:3000","edge":"ams"}
CodeWhat happenedWhat to do
LC1000The computer that serves this URL isn't connected to LocalCan.Open LocalCan and check that the Public URL is enabled and connected.
LC1001LocalCan reached your computer, but nothing is listening on the target.Start your app, or point the Public URL at the port your app uses.
LC1002Your app didn't answer in time.Check that your app is running and not stuck or overloaded.
LC1003The target hostname doesn't resolve on your computer.Check the Public URL's target hostname in LocalCan.
LC1004The TLS handshake with your app failed.If your app serves plain HTTP, change the target from https:// to http://.
LC1005Your app accepted the connection, then closed it before responding.Check your app's logs. It may be crashing on this request.
LC1006LocalCan couldn't connect to the target.Check that your app is running and reachable from your computer.
LC1010Your computer is connected but can't take more requests right now.If it keeps happening, restart LocalCan. Long-running requests may be holding every stream.
LC1011The request couldn't be delivered to your computer.Check LocalCan's connection status, then try again.
LC1012Your app answered, but the response couldn't be read.Check your app. It may be sending malformed HTTP, or the connection dropped mid-response.

© 2026 LocalCan™. All rights reserved.