Skip to content

4xx Client error

426 Upgrade Required

The server needs the client to switch to a different protocol.

What 426 means

For example, the server requires TLS or a newer HTTP version. The Upgrade header says which.

Common causes

  • A plain-HTTP request to an HTTPS-only service.
  • An outdated protocol version.

How to fix it

If you're calling an API

  • Use the protocol in the Upgrade header (often switching to https://).

If you run the server

  • Send an Upgrade header naming the required protocol.

Should you retry?

With the upgraded protocol.

Example response

HTTP
HTTP/1.1 426 Upgrade Required
Content-Type: application/problem+json

{
  "type": "about:blank",
  "title": "Upgrade Required",
  "status": 426,
  "detail": "The server needs the client to switch to a different protocol."
}

Related headers: Upgrade.

Defined in: RFC 9110 (HTTP Semantics). 426 is a client error: change the request before retrying.

Debugging an API call? Convert your request with the cURL converter, check the response with the JSON formatter, or see whether the API is down on its status page.

HTTP 426 FAQ

What does HTTP 426 mean?

426 Upgrade Required: The server needs the client to switch to a different protocol. For example, the server requires TLS or a newer HTTP version. The Upgrade header says which.

Is 426 a client or server error?

It's a client error (4xx): something about the request needs to change before it can succeed.

How do I fix a 426 error?

Use the protocol in the Upgrade header (often switching to https://).

Should I retry after a 426?

With the upgraded protocol.

Other 4xx status codes

All HTTP status codes