1xx Informativos ⤢ 100Continue El servidor recibió las cabeceras de la petición y el cliente puede enviar el cuerpo. Tras una comprobación previa antes de subir un cuerpo grande. ⤢ 101Switching Protocols El servidor acepta cambiar al protocolo que pidió el cliente. Actualizar una conexión HTTP a WebSocket. ⤢ 102Processing El servidor recibió la petición y sigue trabajando en ella. Un servidor WebDAV reconoce una petición larga para que el cliente no caduque. ⤢ 103Early Hints El servidor envía cabeceras preliminares antes de que la respuesta final esté lista. Permitir que un navegador precargue recursos mientras la página aún se renderiza. 2xx Éxito ⤢ 200OK La petición tuvo éxito y el cuerpo de la respuesta contiene el resultado. Éxito estándar para un GET o un PUT. ⤢ 201Created La petición tuvo éxito y se creó un nuevo recurso. Devolver tras un POST con éxito que crea algo. ⤢ 202Accepted La petición se aceptó para procesarse, pero aún no terminó. Un trabajo largo arrancó y se ejecuta de forma asíncrona. ⤢ 203Non-Authoritative Information La petición tuvo éxito, pero los datos devueltos se transformaron en el camino de vuelta. Un proxy o caché sirve metadatos modificados en lugar de los del origen. ⤢ 204No Content La petición tuvo éxito y no hay cuerpo que devolver. Un DELETE con éxito, o un PUT sin nada que decir. ⤢ 205Reset Content La petición tuvo éxito y el cliente debe restablecer la vista que la envió. Tras enviar un formulario, para que la página limpie sus campos. ⤢ 206Partial Content El servidor devuelve solo parte del recurso, tal como se pidió. Servir un rango de bytes de una petición Range. 3xx Redirección ⤢ 301Moved Permanently El recurso tiene una URL nueva permanente y las peticiones futuras deberían usarla. Una página se movió y los buscadores deben actualizar su índice. ⤢ 302Found El recurso está temporalmente en otra URL, pero sigue usando la original. Redirigir a una página de login por un momento. ⤢ 303See Other La respuesta vive en otra URL y debe obtenerse con un GET. El patrón PRG: redirigir un POST a una página de resultado para que un refresco no reenvíe. ⤢ 304Not Modified La copia en caché sigue siendo válida, así que el servidor no envía cuerpo. GET condicional donde la caché del cliente está al día. ⤢ 305Use Proxy La petición debe enviarse a través del proxy indicado en la respuesta. Redes de proxy heredadas; obsoleto desde 2011. ⤢ 307Temporary Redirect El recurso está temporalmente en otro sitio y debe conservarse el método original de la petición. Como 302, pero un POST sigue siendo POST en la redirección. ⤢ 308Permanent Redirect El recurso tiene una URL nueva permanente y debe conservarse el método original de la petición. Como 301, pero un POST sigue siendo POST en la redirección. 4xx Error del cliente ⤢ 400Bad Request El servidor no pudo entender la petición por una sintaxis mal formada. JSON mal formado o un campo obligatorio que falta. ⤢ 401Unauthorized Se requiere autenticación y faltó o falló. Sin token, o un token inválido o caducado. ⤢ 402Payment Required La petición requiere pago, aunque la especificación nunca definió cómo. Algunas APIs lo usan como marcador de muro de pago; la mayoría nunca lo usa. ⤢ 403Forbidden El cliente está autenticado pero no puede acceder a este recurso. Login válido, pero sin permiso para este recurso. ⤢ 404Not Found El servidor no tiene ningún recurso en esta URL. URL desconocida o un ID que no existe. ⤢ 405Method Not Allowed La URL existe pero no permite el método usado en la petición. Un POST contra un endpoint que solo acepta GET. ⤢ 406Not Acceptable El servidor no puede devolver contenido que coincida con las cabeceras Accept del cliente. El cliente pidió solo XML, pero la API solo devuelve JSON. ⤢ 407Proxy Authentication Required El cliente debe autenticarse con el proxy antes de que la petición continúe. Un proxy corporativo rechaza una petición sin autenticar. ⤢ 408Request Timeout El cliente tardó demasiado en enviar la petición y el servidor se rindió. Una subida que se detuvo antes de que el cuerpo terminara de llegar. ⤢ 409Conflict La petición entra en conflicto con el estado actual del recurso. Un email duplicado o una carrera de edición sobre el mismo registro. ⤢ 410Gone El recurso existió una vez pero se eliminó de forma permanente. Un endpoint retirado a propósito, más fuerte que 404. ⤢ 411Length Required La petición necesita una cabecera Content-Length y no la tiene. Un servidor que debe conocer el tamaño por adelantado rechaza un cuerpo en streaming. ⤢ 412Precondition Failed Una precondición de cabecera como If-Match se evaluó como falsa. Una edición optimista donde el registro cambió desde que el cliente lo leyó. ⤢ 413Content Too Large El cuerpo de la petición supera el límite que acepta el servidor. Una subida mayor que el tamaño máximo de cuerpo del servidor. ⤢ 414URI Too Long La URL de la petición es más larga de lo que el servidor está dispuesto a interpretar. Un formulario serializado por accidente en una query string GET que creció sin control. ⤢ 415Unsupported Media Type El formato del cuerpo de la petición no es uno que el endpoint acepte. Un POST con Content-Type text/plain contra un endpoint solo-JSON. ⤢ 416Range Not Satisfiable El rango de bytes de la cabecera Range no cabe en el recurso. Pedir bytes más allá del final de un archivo al reanudar una descarga. ⤢ 417Expectation Failed El servidor no puede cumplir la expectativa indicada en la cabecera Expect. Una expectativa 100-continue que el servidor se niega a honrar. ⤢ 418I'm a teapot El servidor es una tetera y se niega a preparar café. Una broma del 1 de abril de 1998 que no muere; las APIs la devuelven por diversión. ⤢ 421Misdirected Request La petición se envió a un servidor que no puede producir una respuesta para ella. Una conexión reutilizada enviada a un host que este servidor no sirve. ⤢ 422Unprocessable Entity La petición está bien formada pero sus valores no pasan la validación semántica. JSON válido cuyos campos violan reglas de negocio. ⤢ 425Too Early El servidor rechaza una petición con riesgo de ser una repetición. Rechazar una petición no idempotente reintentada antes de rotar las claves. ⤢ 426Upgrade Required El cliente debe cambiar a un protocolo distinto para usar este recurso. Un endpoint que exige TLS o WebSocket. ⤢ 428Precondition Required El servidor exige cabeceras condicionales que la petición no envió. Una API que exige If-Match para evitar actualizaciones perdidas. ⤢ 429Too Many Requests El cliente ha enviado demasiadas peticiones en una ventana de tiempo. Se alcanzó un límite de tasa; espera y reintenta. ⤢ 431Request Header Fields Too Large Uno o más campos de cabecera son demasiado grandes para que el servidor los procese. Una cookie o token que creció hasta bloquear cada petición al sitio. ⤢ 451Unavailable For Legal Reasons El recurso está bloqueado por razones legales, como una retirada o una restricción geográfica. Una retirada gubernamental o una página bloqueada en un país. 5xx Error del servidor ⤢ 500Internal Server Error El servidor sufrió una condición inesperada y falló. Una excepción sin manejar o un bug en el servidor. ⤢ 501Not Implemented El servidor no admite el método o la función solicitada. Un endpoint está declarado pero aún sin construir. ⤢ 502Bad Gateway Una pasarela o proxy recibió una respuesta inválida de un servidor de origen. Un proxy inverso no pudo alcanzar el backend. ⤢ 503Service Unavailable El servidor no puede atender temporalmente la petición. Mantenimiento, sobrecarga o un servicio del que depende caído. ⤢ 504Gateway Timeout Una pasarela o proxy no recibió a tiempo una respuesta del servidor de origen. El backend tardó demasiado y el proxy se rindió. ⤢ 505HTTP Version Not Supported El servidor no admite la versión HTTP de la petición. Un cliente que habla una versión de protocolo que el servidor nunca aprendió. ⤢ 506Variant Also Negotiates La negociación transparente de contenido terminó en una referencia circular. Un servidor mal configurado con negociación de contenido experimental. ⤢ 507Insufficient Storage El servidor no puede almacenar la representación necesaria para completar la petición. Un servidor WebDAV con su almacenamiento asignado lleno. ⤢ 508Loop Detected El servidor entró en un bucle infinito al procesar la petición. Un enlace WebDAV que se refiere a sí mismo. ⤢ 511Network Authentication Required El cliente debe autenticarse con la red para obtener acceso. Un portal cautivo en un hotel o aeropuerto intercepta la petición.