Normal mode vs proxy mode
Enabling it
Proxy mode is off by default. Turn it on through the control plane:
The change hot-reloads across all pods within ~1s — no restart.
Proxy mode is gated by this global switch today. A per-relay-key
passthroughAllowed flag exists for future per-key gating but is not yet
enforced — for now, enabled is what controls access.Making a proxy request
SendX-WR-Proxy-Mode: Proxy, put your upstream key in Authorization, and
pin the upstream host with X-WR-Upstream-Host:
X-WR-*, X-WR-API-Key) and forwards the body
unchanged, with your Authorization reattached as the upstream credential.
Authenticated vs anonymous
- Authenticated proxy — include your relay key in
X-WR-API-Key. The request is attributed to that key and rate-limited under theinference-api-proxypool. If you omitX-WR-Upstream-Host, Relay reads themodelfrom the body and resolves the host from your relay key’s policy. - Anonymous proxy — omit the relay key. Allowed only when
allowUnauthenticatedis on, rate-limited per client IP underinference-api-proxy-anonymous, andX-WR-Upstream-Hostis required (there’s no policy to infer the host from).
Discovering upstream hosts
List the host slugs you can target withX-WR-Upstream-Host:
Errors
Proxy mode does no translation and no model rewriting — the body is forwarded
exactly as sent. Send the request in the wire shape the target host expects.