Toolman

HTTP 400 — Bad Request

4xx Client Error

What it means

The server could not understand the request: malformed JSON, an invalid query parameter, a header that does not parse.

What to do about it

Check the request body actually parses, that required fields are present, and that Content-Type matches what you are sending. Return a body explaining which field was wrong — a bare 400 wastes everyone's time.

Where it sits

400 belongs to the 4xx family: The request contains something the server will not or cannot process. The fix is normally on the client side.

HTTP/1.1 400 Bad Request

Checking it yourself

# see the status code and headers only
curl -sI https://example.com/path

# follow redirects and print each hop
curl -sIL -o /dev/null -w "%{http_code} %{url_effective}\n" https://example.com/path

# JavaScript
const r = await fetch(url);
console.log(r.status, r.statusText);

Other 4xx codes

All HTTP status codes