Skip to content

Proxy URLs

If you’ve ever needed your frontend code to call an API that blocks cross-origin requests, or wished you could put HTTPS in front of an insecure internal server, Proxy URLs solve both problems.

ProxyBox acts as a pass-through: your application makes a request to a ProxyBox URL, and ProxyBox forwards it to the target server on your behalf. The response comes back through ProxyBox with the right CORS headers already attached.

Browser security prevents your frontend JavaScript from calling APIs on different origins unless those APIs explicitly allow it with CORS headers. Many APIs — especially internal or third-party ones — don’t set these headers, which means your frontend gets blocked even though the request itself is perfectly valid.

With a Proxy URL, your frontend calls ProxyBox instead. ProxyBox makes the request server-side (where CORS doesn’t apply), gets the response, and passes it back to your browser with the correct headers. Your frontend code works without a dedicated backend or CORS proxy.

Plenty of devices and internal servers only speak plain HTTP — legacy equipment, internal tools, IoT devices. Modern browsers increasingly refuse to make insecure requests from HTTPS pages. ProxyBox wraps these in TLS: your browser talks HTTPS to ProxyBox, and ProxyBox talks HTTP to the target. The insecure hop stays on your local network.

Combine Proxy URLs with the .cloud tunnel and you can reach internal servers from anywhere. A cloud application can query a local API, pull data from an on-premises system, or interact with network equipment — all through a single secure ProxyBox URL.

A Proxy URL encodes the target server directly in the path:

https://pbx-<id>.pbxz.io/proxy-https/ecs-iot.com:443/api
PartExampleDescription
ProxyBox Domainhttps://pbx-<id>.pbxz.ioYour ProxyBox address (.io for local, .cloud for remote).
Route Type/proxy-httpsproxy-https for HTTPS targets, proxy-http for plain HTTP targets.
Target Hostecs-iot.comDomain or IP of the server you’re reaching.
Target Port:443Port on the target server.
Target Path/apiThe path to forward to on the target server.

The full pattern:

https://{proxybox}/{route-type}/{host}:{port}/{path}

Forward an HTTPS request to https://ecs-iot.com:443/api through ProxyBox jrdn:

https://pbx-jrdn.pbxz.io/proxy-https/ecs-iot.com:443/api

Wrap a local HTTP server running on 192.168.1.50:8080 in TLS:

https://pbx-jrdn.pbxz.io/proxy-http/192.168.1.50:8080/dashboard

Reach an internal server from anywhere using the .cloud tunnel:

https://pbx-jrdn.pbxz.cloud/proxy-http/192.168.1.50:8080/api/data