Troubleshooting
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"}
| Code | What happened | What to do |
|---|---|---|
| LC1000 | The computer that serves this URL isn't connected to LocalCan. | Open LocalCan and check that the Public URL is enabled and connected. |
| LC1001 | LocalCan reached your computer, but nothing is listening on the target. | Start your app, or point the Public URL at the port your app uses. |
| LC1002 | Your app didn't answer in time. | Check that your app is running and not stuck or overloaded. |
| LC1003 | The target hostname doesn't resolve on your computer. | Check the Public URL's target hostname in LocalCan. |
| LC1004 | The TLS handshake with your app failed. | If your app serves plain HTTP, change the target from https:// to http://. |
| LC1005 | Your app accepted the connection, then closed it before responding. | Check your app's logs. It may be crashing on this request. |
| LC1006 | LocalCan couldn't connect to the target. | Check that your app is running and reachable from your computer. |
| LC1010 | Your 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. |
| LC1011 | The request couldn't be delivered to your computer. | Check LocalCan's connection status, then try again. |
| LC1012 | Your 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.