Request identity
Method, scheme, host, path, query string, tunnel name, and receive timestamp.
Requests
Request inspection in Binboi means more than printing a method and path. It means giving developers the metadata they need to answer what arrived, where it was routed, what the upstream service returned, and whether the error belongs to auth, transport, or application code.
Model
A useful request view should help a developer reconstruct the life of one request without reading a whole stream of unrelated logs.
At minimum, the request view should tell you which tunnel received the request and which target service handled it.
It should show when the request arrived, how long it took, and what status code came back.
For webhooks, it should also preserve enough header and payload detail to explain signature and schema mismatches.
Metadata
A developer-friendly request inspection surface should prioritize context that leads to action.
Method, scheme, host, path, query string, tunnel name, and receive timestamp.
Forwarding headers, content type, provider-specific webhook headers, and trace-friendly identifiers.
Readable body previews that help debug shape mismatches without turning the UI into a data dump.
Which local service or upstream target handled the request and whether the route matched what the operator expected.
Duration, receive time, completion time, and clues about whether slowness came from the app or the network path.
Status code, selected response headers, and a small response preview when it is safe and useful.
Response
The most useful request UIs help you compare inbound context and outbound response in one place.
Show headers that explain routing, auth, or provider intent.
Preview payloads at a size that is practical for debugging but still safe for operators.
Preview response status, timing, and any short body excerpt that explains whether the upstream app succeeded or failed.
Always include the target service identity so the operator knows which local process actually answered.
Errors
Classifying failures correctly is half the debugging battle.
| Type | What it usually means | What to check first |
|---|---|---|
| `AUTH_ERROR` | The CLI token is invalid or the session could not authenticate. | `binboi whoami`, token status, API URL configuration. |
| `UPSTREAM_CONNECT` | The relay reached the agent, but the agent could not reach the local target. | Is the app listening on the expected port? |
| `UPSTREAM_TIMEOUT` | The request reached the app, but the app did not respond in time. | Long handlers, startup lag, database waits. |
| `HOST_MISMATCH` | The incoming host did not resolve to a valid or active tunnel. | Subdomain spelling, reserved tunnel state, domain config. |
| `WEBHOOK_SIGNATURE` | The request arrived, but signature verification failed in your app. | Signing secret, raw-body handling, middleware order. |
| `APPLICATION_500` | Your app ran and threw a failure. | Application logs, stack traces, route code. |