Free tools

HTTP 101 Switching Protocols

The server is switching protocols, usually to WebSocket. Free reference, no signup.

101 Switching Protocols

MeaningThe server is switching protocols, usually to WebSocket.
WhenThe client asked for an upgrade and the server accepted it.
CausesA WebSocket or HTTP/2 upgrade handshake.
FixIf the switch never completes, check the Upgrade and Connection headers and any proxy that strips them.
RetryDo not retry the upgrade blindly.
Alert?No. A successful upgrade is normal.

Runs in your browser. Nothing you enter is stored.

Most 101s are not an incident

A successful upgrade is normal.

curl -sS -X POST https://api.trigv.com/v1/events \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer $TRIGV_API_KEY" \
  -d '{"channel":"ops","title":"HTTP 101","level":"warning"}'

How to use it

  1. Read what 101 means before changing a retry loop.
  2. Check the common causes against the response body and the server log.
  3. Follow the retry note. Retrying a 400 with the same body will fail again.
  4. Alert only in the cases the verdict describes.

About this tool

HTTP 101 Switching Protocols means The server is switching protocols, usually to WebSocket. Servers send it when The client asked for an upgrade and the server accepted it.

Common causes: A WebSocket or HTTP/2 upgrade handshake. The practical fix is: If the switch never completes, check the Upgrade and Connection headers and any proxy that strips them.

Retry: Do not retry the upgrade blindly.

Alert on it? No. A successful upgrade is normal.

Trigv is a push for the moment a status starts mattering, not a log of every response. If the code is one you should hear about, the snippet posts a single event with level error or warning. The status page itself does not call your API.

Questions

What is HTTP 101?

The server is switching protocols, usually to WebSocket.

Should the client retry?

Do not retry the upgrade blindly.

Should I alert on it?

No. A successful upgrade is normal.

How is this different from reading the spec?

The page adds a plain retry note and an alert verdict for people running the service, not only for people parsing the response.