
Note that HTTP Status Code 306 is no longer used.
HTTP 306 is a redirect status code originally named "Switch Proxy." It was designed to tell a client that subsequent requests should be routed through a specified proxy server. The code is now obsolete and is no longer used in modern HTTP implementations.
The 306 status code was removed from active use because neither the code nor the associated proxy-switching behavior was ever fully standardized. It was also considered a security risk, which led to it being dropped from the HTTP/1.1 specification. Today it is officially reserved but unused.
No modern server or browser issues or processes a 306 response. If you encounter it, it almost certainly indicates a misconfiguration in a legacy system. The code was defined in an early HTTP/1.1 draft and deprecated before widespread adoption.
Unlike 301, 307, and 308 — which are active redirect codes that instruct clients to fetch a resource at a new URL — 306 was specifically about switching to a different proxy server, not redirecting to a new resource location. Those three codes remain valid and widely supported; 306 does not.
No. HTTP 306 is obsolete and should never be issued by a modern server or API. No current HTTP client will process it correctly. If you need to redirect clients or signal a proxy change, use an active redirect code such as 307 or 308 instead.
A 306 response in a live system almost always points to a misconfigured or legacy component. Investigate the server or proxy that is emitting it and update its configuration to use a current, supported status code. Because no modern client acts on 306, the response will likely be ignored or cause unexpected behavior.