4xx
426 Upgrade Required
The server requires the client to switch to a different protocol to proceed.
What is HTTP 426?
This status code indicates that the server refuses to perform the request using the current protocol but might be willing to do so after the client upgrades to a different protocol. The server sends an Upgrade header in the response to indicate the required protocol. This is used when a server wants to enforce the use of a newer, more secure, or more efficient protocol.
Defined in RFC 9110
Common Causes
- The server requires an upgrade from HTTP/1.1 to HTTP/2 or a WebSocket connection
- An endpoint mandates TLS and the client is using plain HTTP
- The server requires a newer protocol version than what the client is using
How to Fix
- Check the Upgrade header in the response to determine which protocol is required
- Reconfigure your client to use the required protocol version
- If TLS is required, switch your request URL from http:// to https://
- Update your HTTP client library if it does not support the required protocol