---
title: Upgrade
summary: null
url: https://www.fastly.com/documentation/reference/http/http-headers/Upgrade
---

The `Upgrade` header field is intended to provide a simple mechanism for transitioning from HTTP/1.1 to some other protocol on the same connection. A client MAY send a list of protocols in the `Upgrade` header field of a request to invite the server to switch to one or more of those protocols, in order of descending preference, before sending the final response. A server MAY ignore a received `Upgrade` header field if it wishes to continue using the current protocol on that connection. `Upgrade` cannot be used to insist on a protocol change.

A server that sends a `101 (Switching Protocols)` response MUST send an `Upgrade` header field to indicate the new protocol(s) to which the connection is being switched; if multiple protocol layers are being switched, the sender MUST list the protocols in layer-ascending order. A server MUST NOT switch to a protocol that was not indicated by the client in the corresponding request's `Upgrade` header field. A server MAY choose to ignore the order of preference indicated by the client and select the new protocol(s) based on other factors, such as the nature of the request or the current load on the server.

A server that sends a `426 (Upgrade Required)` response MUST send an `Upgrade` header field to indicate the acceptable protocols, in order of descending preference.
