300
HTTPREDIRECTNotable3xx RedirectionHIGH confidence

Multiple Choices

Production Risk

Low. It can be confusing for automated clients. For browsers, providing a clear HTML list of choices is key to good user experience.

What this means

The request has more than one possible response. The user-agent or user should choose one of them. There is no standardized way of choosing one of the responses, but HTML links to the possibilities are recommended so the user can pick.

Why it happens
  1. 1A resource is available in multiple languages, and the server wants the user to choose.
  2. 2A file is available in different formats (e.g., JPEG, PNG, WebP).
  3. 3The server is unsure which representation the client wants and offers a list of options.
How to reproduce

A server hosts a document in both PDF and HTML formats and offers the user a choice.

trigger — this will error
trigger — this will error
GET /document HTTP/1.1
Host: example.com

expected output

HTTP/1.1 300 Multiple Choices

Fix

Use Content Negotiation

WHEN You want to serve the best version automatically.

Use Content Negotiation
// Client sends:
Accept: text/html

// Server can then choose to redirect to the HTML version.

Why this works

Server Logic

What not to do

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All HTTP errors