Soy una tetera — HTTP Status 418

Jorge Cáster
3 min readJul 14, 2020

--

“418 Soy una tetera” es un código de error HTTP creado como parte de una broma del día de los inocentes.

Photo by Manki Kim on Unsplash

Espera, ¿qué?

El código de error HTTP 418 — Soy una tetera hace referencia al Hyper Text Coffee Pot Control Protocol (HTCPCP), protocolo HTTP creado por Internet Engineering Task Force (IETF) como parte de una broma del April Fools’ de 1998. [1]

El HTCPCP es una propuesta (RFC 2324) para hacer café en cafeteras conectadas a internet y a través de llamadas HTTP. Según sus propias palabras:

Increasingly, home and consumer devices are being connected to the Internet. [...] Consumers want remote control of devices such as coffee pots so that they may wake up to freshly brewed coffee, or cause coffee to be prepared at a precise time after the completion of dinner preparations.

La propuesta fue escrita por L. Masinter y en ella se describen métodos, cabeceras y el esquema URI coffee: para las cafeteras conectadas a internet.

Más allá de ser una broma, la documentación es increíblemente completa y puedes leerla entera aquí.

Veamos algunas de sus características:

Métodos HTCPCP

BREW / POST: Son los encargados de controlar las cafeteras y tienen que incluir un mensaje con un Content-Type “application/coffee-pot-command”.

GET: Nos devuelve café, nada de información o datos. Habitualmente sin cafeína.

PROPFIND: Nos devuelve los metadatos del café.

WHEN: Para indicar cuándo queremos que la cafetera pare de echar leche. Este me ha parecido una joya 🤣

Enough milk? Say WHEN.

Cabeceras

Accept-Additions: Añade cualquier extra que queramos a nuestro café.

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" )

Códigos de respuesta

Llegamos por fin al título de esta entrada de blog. HTCPCP incluye 2 códigos de respuesta:

406 — Not acceptable

Respuesta que recibiremos si la cafetera no puede preparar nuestro café. Debería incluir una lista de los cafés que sí puede preparar.

418 — I’m a teapot

Respuesta que recibiremos si le pedimos café a una tetera. Maravilloso WTF.

Ejemplos en la vida real

Ya que se trata de una broma y solo una propuesta, no he encontrado más ejemplos que el de Google. Haciendo clic en la tetera, te llena la taza. Si lo ves desde el móvil, basta con girarlo para que la tetera se incline.

Google error 418
Puedes ver la pantalla de error 418 de Google aquí.

¿Qué os ha parecido esto?

A mí me ha hecho mucha gracia esta tontería. Si tenéis tiempo, echadle un ojo a la propuesta RFC, porque guarda alguna joya más.

¡Hasta el próximo café! ☕

Referencias y enlaces

  1. April Fools’ Day (Wikipedia): https://es.wikipedia.org/wiki/D%C3%ADa_de_las_bromas_de_abril
  2. Internet Engineering Task Force (Wikipedia): https://es.wikipedia.org/wiki/Grupo_de_Trabajo_de_Ingenier%C3%ADa_de_Internet
  3. Larry Masinter (Wikipedia): https://en.wikipedia.org/wiki/Larry_Masinter
  4. Error 418 en MDN: https://developer.mozilla.org/es/docs/Web/HTTP/Status/418
  5. Anexo: Códigos de estado HTTP (Wikipedia): https://es.wikipedia.org/wiki/Anexo:C%C3%B3digos_de_estado_HTTP
  6. ¿Es 418 soy una tetera un código real de respuesta HTTP? (Stackoverflow): https://stackoverflow.com/questions/52340027/is-418-im-a-teapot-really-an-http-response-code
  7. Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0) (RFC 2324): https://tools.ietf.org/html/rfc2324
  8. Página de Google para el error 418: https://www.google.com/teapot

--

--

Jorge Cáster

Futurist & Tech Lover | Lead Front End Engineer @Mercedes-Benz