Códigos HTTP: guía práctica para desarrolladores

Guía práctica de códigos HTTP: aprende cuándo usar 200, 201, 204 y 4xx/5xx; con casos reales, buenas prácticas REST y herramientas para depurar APIs.

4 sept 2025 • 5 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Hola devs

La semana pasada pasé tres horas persiguiendo lo que parecía un problema complejo de autenticación, y al final era un 422 que estaba interpretando mal. Esa noche me recordó que casi todos conocemos el famoso 404, pero muchos tropezamos con los códigos más sutiles que pueden ahorrarnos horas de depuración.

Este es un repaso práctico a los códigos de estado HTTP pensado para que se te queden de verdad. Nada de documentación seca, solo situaciones reales del día a día.

Por qué importan de verdad El mes pasado, nuestra API devolvía 200 OK en operaciones fallidas y el frontend estaba enloqueciendo porque su manejo de errores no se disparaba. La solución fue usar códigos correctos. No es solo cumplir un estándar, es reducir fricción y hacer la vida más fácil a todo el equipo.

2xx Todo va bien 200 OK es el comodín fiable para lecturas y operaciones exitosas, pero no todo es 200. 201 Created indica que algo nuevo se ha creado, ideal para POST de recursos porque el cliente distingue entre obtener datos existentes y crear algo nuevo. 204 No Content es perfecto cuando cumples la operación y no necesitas cuerpo de respuesta, por ejemplo en DELETE o actualizaciones sin payload de vuelta.

3xx Mira en otro sitio 301 Moved Permanently sirve para cambios definitivos de ruta o dominio y ayuda al SEO. 302 Found es para redirecciones temporales como páginas de mantenimiento. 304 Not Modified habilita caché eficiente cuando el recurso no ha cambiado desde la última petición y ahorra ancho de banda.

4xx Tú la liaste 400 Bad Request es genérico, pero siempre conviene incluir un cuerpo de error con detalles de validación útiles. 401 Unauthorized significa inicia sesión o presenta credenciales. 403 Forbidden es te reconozco pero no tienes permiso. 404 Not Found es el clásico; a veces conviene devolverlo en lugar de 403 para no filtrar la existencia de recursos privados. 409 Conflict encaja cuando hay duplicados o conflictos de estado en el servidor. 422 Unprocessable Entity brilla cuando la solicitud está bien formada pero es semánticamente inválida, por ejemplo un email con formato válido pero dominio inexistente o una edad negativa.

5xx Yo la lié 500 Internal Server Error es el algo se rompió en nuestro lado y debe estar bien monitorizado y registrado en producción. 502 Bad Gateway suele indicar fallos entre servicios o un backend que no respondió bien. 503 Service Unavailable es ideal para ventanas de mantenimiento y conviene acompañarlo de cabecera Retry-After. 504 Gateway Timeout es el apropiado cuando expira el tiempo de espera en una dependencia.

Historias reales de depuración Un día el checkout empezó a devolver 502 de forma aleatoria; resultó ser un timeout del servicio de pagos, y nuestro gateway devolvía 502 en lugar de 504. Ajustamos timeouts y devolvimos 504 para los casos de expiración real. En otra ocasión, un endpoint de creación de usuarios siempre devolvía 200 OK aunque el correo ya existía, y el frontend mostraba éxito en registros fallidos; lo corregimos con 409 Conflict. También aprendimos que los 302 en flujos OAuth pueden liar a apps móviles, mejor respuestas de API con tokens y flujos explícitos.

Buenas prácticas REST en la vida real Listar recursos debería devolver 200 con la lista. Crear recursos debería devolver 201 con el identificador y metadatos. Recuperar por id devuelve 200 o 404 si no existe. Actualizar devuelve 200 o 204 según si envías recurso actualizado o no, y 404 si no se encuentra. Borrar devuelve 204 si se elimina y 404 si no existe. Mantén la coherencia en toda tu API para que los clientes puedan anticipar el comportamiento.

Patrones de gestión de errores Diferencia claramente validaciones de negocio con 422, conflictos con 409, autenticación con 401 y autorización con 403. Incluye un cuerpo de error estandarizado con campos como error, detalles y posibles sugerencias. En frontend, maneja flujos por rangos de estado para mostrar mensajes adecuados y no bloquear la UX.

Herramientas que te salvan DevTools del navegador con la pestaña Network te muestra estados y tiempos; copiar como curl ayuda a reproducir. Postman o Insomnia permiten colecciones, ambientes y tests para verificar estados esperados. Con curl puedes seguir redirecciones, ver cabeceras y obtener solo el código para automatizar chequeos en pipelines.

Los raros que conviene conocer 418 I am a teapot nació como broma, pero algunos lo usan para detectar automatismos o throttling con humor. 451 Unavailable for Legal Reasons aparece cuando el contenido se bloquea por motivos legales.

Errores comunes Todo es 200 es una mala idea; si falla, usa el estado que toca. No ignores el cuerpo de error; un 400 sin explicación no ayuda. No mezcles autenticación con autorización; 401 para credenciales, 403 para permisos. Monitoriza patrones de estados; un pico de 5xx puede adelantarte a quejas de usuarios.

Pruebas de estados En tus tests de integración, valida que crear devuelve 201 y que los recursos incluyen su id. Comprueba que una validación de email incorrecto devuelve 422 con detalles. Simula duplicados para 409. Asegúrate de que 404 aparece cuando corresponde y que 401 y 403 se activan en los flujos correctos. En APIs distribuidas, prueba timeouts y verifica 504.

Códigos de estado en proyectos reales y Q2BSTUDIO En Q2BSTUDIO diseñamos y construimos APIs y plataformas robustas con foco en usabilidad y observabilidad. Somos una empresa de desarrollo de software con experiencia en aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi. Si quieres una API coherente, documentada y lista para escalar, echa un vistazo a nuestro enfoque de software a medida y aplicaciones a medida. Y si buscas llevar tu producto al siguiente nivel con modelos y agentes, descubre cómo aplicamos inteligencia artificial para empresas a casos reales, desde validación semántica hasta automatización de soporte con agentes IA.

Cierre Los códigos de estado no son números al azar, son un contrato de comunicación entre servidor y cliente. Elegir el adecuado mejora el debugging, la experiencia de usuario y la predictibilidad de tus APIs. La próxima vez que construyas un endpoint, pregúntate cuál es el estado más apropiado para este escenario. Tu yo del futuro, y tu equipo, te lo agradecerán. Y ya que estamos, cuál es el código que más te persigue en tus logs Yo diría que el 422 gana muchas batallas cuando se trata de validar negocio.

Recursos recomendados Revisa el registro oficial en IANA HTTP Status Codes, la guía completa en MDN y, para aprender con humor, HTTP Status Dogs.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat