Works in a browser, but offline in Kochab

A browser carries sessions, redirects, and its own network - Kochab carries none of them. Check the gate, the address, and the network, in that order.

“It works in a browser” is a reasonable test, but a browser and Kochab are not sending the same request. A browser tab carries whatever you already gave it - a saved login, a certificate exception, an address you typed once and never think about. Kochab has an address and an API key, and nothing else. The gap between those two is almost always one of these.

Your browser is already signed in to a login gate

Authelia, Authentik, Cloudflare Access, Pangolin and similar single sign-on layers put a login page in front of the whole service. If you signed in to that gate in the browser recently, it remembers you and lets every request through - including the ones to the service’s own API. Open the address in a private/incognito window instead. If that also fails to load the service directly, the gate is the cause, not Kochab.

The fix depends on which gate you run. Most support an exemption for the API path while keeping the login page on everything else - see Reverse proxies and remote access for the Authelia example. Cloudflare Access and Pangolin are the two gates Kochab can carry its own service-token credentials for directly: choose External proxy authentication when adding the service and set the client ID and secret the gate issues, and Kochab authenticates itself on every request instead of needing an exemption at all. That setting applies to the external address only.

Your browser already trusts a self-signed certificate; Kochab does not yet

If you clicked through a certificate warning in your browser weeks ago, the browser remembers that decision. Kochab is a separate, sandboxed app - it has never seen that certificate before, and will not send credentials to it until you confirm the fingerprint yourself. That prompt is the expected first-time behavior, not a failure. See Certificate trust.

The address is not quite the same address

Browsers autocomplete and remember history, which hides small differences you would otherwise notice. Compare, character for character, against what you entered in Kochab:

  • A trailing path the browser kept from a bookmark, that Kochab’s address is missing (or the reverse).
  • HTTP vs HTTPS - the browser may have followed a redirect you never saw.
  • A different host entirely - a bookmark pointing at a tunnel or reverse-proxy hostname while Kochab has the raw LAN address.

You tested from a different network than your phone is on right now

“It works in a browser” often means a laptop on a network that is not your phone’s current network. A LAN address that loads instantly on a laptop plugged into the same switch as the server will not answer a phone on cellular data. Check what network the phone is actually on before ruling network reachability out - see Why won’t Kochab connect to my service? for the rest of the connection-test checklist.