HTTP 426 Upgrade Required — Protocol Upgrade Needed
Warning4xx client error
Overview
HTTP 426 Upgrade Required means the server refuses to perform the request using the current protocol and requires the client to upgrade to a different protocol.
Key Details
- Server requires the client to switch to a different protocol version
- The Upgrade header in the response specifies which protocol to use
- Common when a server requires TLS/HTTPS but receives plain HTTP
- Also used for WebSocket upgrade requirements
- Different from 301/308 redirects — 426 requires a protocol change, not a URL change
Common Causes
- Accessing an HTTPS-only endpoint via plain HTTP
- WebSocket endpoint receiving a regular HTTP request without upgrade
- Server requiring HTTP/2 but receiving HTTP/1.1 request
- API requiring a minimum TLS version not met by the client
Steps
- 1Check the Upgrade response header for the required protocol
- 2Switch from HTTP to HTTPS if indicated
- 3For WebSocket connections, ensure you send the proper Upgrade: websocket header
- 4Update your HTTP client to support the required protocol version
- 5If TLS version is the issue, update your client's TLS library
Tags
http426upgrade-requiredprotocolwebsocket
More in 4xx Client Error
http-400-bad-requestHTTP 400 Bad Request — What It Means & How to Fix It
Errorhttp-401-unauthorizedHTTP 401 Unauthorized — What It Means & How to Fix It
Errorhttp-402-payment-requiredHTTP 402 Payment Required — What It Means & How to Fix It
Errorhttp-403-forbiddenHTTP 403 Forbidden — What It Means & How to Fix It
Errorhttp-404-not-foundHTTP 404 Not Found — What It Means & How to Fix It
Errorhttp-405-method-not-allowedHTTP 405 Method Not Allowed — What It Means & How to Fix It
ErrorFrequently Asked Questions
Most commonly upgrading from HTTP to HTTPS (TLS), or from HTTP to WebSocket.