418
I'm a teapot
This route can't brew coffee, because it is, permanently, a teapot.
The actual history
RFC 2324 defined the Hyper Text Coffee Pot Control Protocol as an April Fools' joke — a serious-looking specification for controlling internet-connected coffee pots, complete with a BREW method and a coffee:// URI scheme. Status 418 was its punchline: the response a teapot returns when you ask it for coffee.
In 2017 a proposal moved to remove 418 from implementations on the grounds that it wasn't a real status code. Enough of the web pushed back — including a genuine Save 418 Movement — that it stayed, and it's now reserved specifically so nobody can reuse the number.
There's a real lesson under the joke: on a platform that can't break backwards compatibility, even the mistakes become permanent features. Same reason typeof null === "object" is never getting fixed.
There's a real one on this site
This page is an ordinary 200 — it's a document, and lying about its status would be worse than the joke is good. But /api/brew actually answers 418. Try it:
curl -i -X POST https://nodedata.dev/api/brew # HTTP/1.1 418 I'm a teapot# x-teapot: short and stout# x-rfc: 2324export async function POST() { return Response.json( { error: { code: "im_a_teapot", message: "…" } }, { status: 418, headers: { "x-teapot": "short and stout" } }, );}Some people use 418 as a quiet signal for “request rejected by a bot filter” — it's unambiguous, since nothing legitimate ever returns it.