# Códigos de estado HTTP

> El número de tres dígitos con el que un servidor web te dice cómo salió tu pedido.

- Nivel: Básico
- Temas: Redes
- URL: https://tidbit.legios.com.ar/es/http-status-codes/
- En inglés: [HTTP status codes](https://tidbit.legios.com.ar/http-status-codes/)

Cada vez que tu navegador o una app le pide algo a un servidor por HTTP, la respuesta arranca con un **código de estado HTTP**: un número de tres dígitos que resume qué pasó. Casi nunca lo ves, porque es `200 OK` y la página carga y listo. Lo notás cuando algo sale mal, como el famoso `404 Not Found`.

El primer dígito te dice la familia. `2xx` es éxito. `3xx` quiere decir que la cosa se mudó y el navegador tiene que ir a buscarla a otro lado, como `301 Moved Permanently`. `4xx` es un problema del lado del cliente: una URL mal escrita (`404`), falta iniciar sesión (`401`), no tenés permiso (`403`), demasiados pedidos seguidos (`429`). `5xx` es que falló el servidor: `500 Internal Server Error` es un bug o una caída, y `503 Service Unavailable` suele significar que está saturado o en mantenimiento.

Para quienes desarrollan, estos números son un idioma común. Las herramientas de monitoreo cuentan cuántos `5xx` devuelve un sitio para detectar caídas, los buscadores leen el `301` para saber que una página se mudó, y una API los usa para decirle a un programa exactamente por qué rechazó su pedido.

## Una analogía

Como las respuestas cortas en el mostrador de una farmacia: acá tenés (200), lo pasamos a la otra sucursal (301), esa receta no existe (404), necesito ver tu DNI (401), perdón, se nos cayó el sistema (500).

## Para quedarse

- 2xx éxito, 3xx redirección, 4xx error del cliente, 5xx error del servidor.
- Un 404 significa que la dirección no apunta a nada; no es que se cayó el servidor.
- Un 500 o un 503 indican que el problema es del sitio, no tuyo.
- Las APIs usan códigos de estado para que los programas sepan por qué falló un pedido.

## Para seguir leyendo

- [Códigos de estado de respuesta HTTP (MDN)](https://developer.mozilla.org/es/docs/Web/HTTP/Reference/Status)
- [Códigos de estado HTTP en Wikipedia](https://es.wikipedia.org/wiki/Anexo:Códigos_de_estado_HTTP)

## Términos relacionados

- [Navegador web](https://tidbit.legios.com.ar/es/web-browser/): La app que trae páginas web desde internet y las dibuja en tu pantalla.
- [Servidor](https://tidbit.legios.com.ar/es/server/): Una computadora cuyo trabajo es responder pedidos de otras computadoras, todo el día.
- [HTTP](https://tidbit.legios.com.ar/es/http/): El idioma de pedido y respuesta que hablan los navegadores y los sitios web.
- [URL](https://tidbit.legios.com.ar/es/url/): La dirección completa de algo en la web: protocolo, sitio y ruta.
- [Bug](https://tidbit.legios.com.ar/es/bug/): Un error en un software que hace que se comporte distinto de lo que se buscaba.
- [API](https://tidbit.legios.com.ar/es/api/): El menú de cosas que un programa le deja pedir a otro programa.
