It was an April Fools' Joke in 1998 as RFC 2324 Hyper Text Coffee Pot Control Protocol. The definition of status code 418:
tiny tea! by tseyg (one of my Flickr contacts) |
2.3.2 418 I'm a teapot Any attempt to brew coffee with a teapot should result in the error code "418 I'm a teapot". The resulting entity body MAY be short and stout.
Decaf? Get outta here! ;)
2.2.3 Omitted Header Fields No options were given for decaffeinated coffee. What's the point?
And the header
Accept-Additions
is just awesome, pretty much cover all additions, even this protocol was written in 1998. Coffee hasn't changed a lot.Accept-Additions = "Accept-Additions" ":" #( addition-range [ accept-params ] ) addition-type = ( "*" | milk-type | syrup-type | sweetener-type | spice-type | alcohol-type ) *( ";" parameter ) milk-type = ( "Cream" | "Half-and-half" | "Whole-milk" | "Part-Skim" | "Skim" | "Non-Dairy" ) syrup-type = ( "Vanilla" | "Almond" | "Raspberry" | "Chocolate" ) alcohol-type = ( "Whisky" | "Rum" | "Kahlua" | "Aquavit" )
I really want to see a tea machine has built-in support of RFC 2324. However, that doesn't make much sense since this RFC is for coffee pot, so the protocol
coffee:
shouldn't be known by a tea machine, therefore no way it can respond with 418.If the coffee pot is unable to brew or can't do certain type of coffee, maybe it can return 301/302 for redirecting user to Starbucks?