API CRUD Segura con Node.js, Express y MongoDB (Mongoose)

Guía práctica para crear una API CRUD segura con Node.js, Express y MongoDB/Mongoose: validación de entradas, unicidad de email, paginación, manejo de errores y seguridad lista para producción.

22 sept 2025 • 5 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

Presentamos una guía práctica para crear una API CRUD segura para el recurso Cliente usando Node.js, Express y Mongoose, pensada para equipos que necesitan una base sólida y lista para producción. Este artículo ha sido preparado por Q2BSTUDIO, empresa de desarrollo de software especializada en aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad y servicios cloud aws y azure, entre otros servicios.

Resumen rápido: validación de entrada y control de correo único, paginación con lecturas lean para rendimiento, manejo centralizado de errores con respuestas JSON consistentes, seguridad básica con Helmet, CORS y rate limiting, estructura lista para desplegar con variables de entorno, health check y apagado ordenado. El ejemplo es de un único archivo para claridad, pero incorpora conceptos aptos para producción.

Requisitos previos: Node 18 o superior, MongoDB local o en la nube, conocimientos básicos de terminal y de peticiones REST.

Pasos iniciales y dependencias: crear proyecto con mkdir secure-crud-api && cd secure-crud-api, npm init -y, instalar dependencias con npm i express mongoose dotenv helmet cors morgan express-rate-limit y las devDependencies con npm i -D nodemon. Scripts sugeridos: dev con nodemon server.js y start con node server.js. Variables de entorno en .env: PORT=3000 y MONGO_URI=mongodb://127.0.0.1:27017/crud.

Estructura y enfoque: el ejemplo concentra todo en server.js para que puedas copiar y entender rápidamente la lógica. En producción recomendamos separar rutas, controladores, modelos y servicios, y añadir pruebas y documentación OpenAPI.

Modelo Mongoose: esquema Cliente con campos nom requerido, email requerido y único con validación por regex, telephone opcional, timestamps activados y versionKey deshabilitado. Transformación a JSON para exponer id en lugar de _id y mantener las respuestas limpias.

Middleware esencial: Helmet para cabeceras de seguridad, CORS con configuración según ambiente, body parser con límite razonable, morgan para logging, rate limiting para proteger contra abuso. Conexión a MongoDB con manejo de error y salida de proceso en caso de fallo inicial.

Rutas principales y comportamiento: health check en /healthz que devuelve estado ok. CRUD en /api/v1/clients: POST para crear validando nom y email; GET para listar con paginación y uso de lean para eficiencia; GET por id para leer un cliente; PATCH para actualización parcial validando campos permitidos y ejecutando runValidators; DELETE para borrar y devolver 204 No Content cuando procede. Paginación con parámetros page por defecto 1 y limit por defecto 20 con tope 100.

Manejo centralizado de errores: middleware que convierte errores de CastError en 400 Invalid ID, errores de índice duplicado en 409 Email already in use y cualquier otro error en 500 Internal server error. Respuestas de error siguen la forma consistente con una clave error y un mensaje legible, lo que facilita la integración con frontends y clientes API.

Manejo de apagado ordenado: servidor escucha en el puerto indicado en PORT y responde con la URL local. Función de shutdown captura SIGINT y SIGTERM, cierra el servidor, cierra la conexión de Mongoose y sale de forma controlada, con un timeout de seguridad para forzar salida si algo queda colgado. Esto hace que la API sea amigable con entornos Docker y Kubernetes.

Pruebas y uso: para probar los endpoints usa herramientas como Postman, Insomnia o peticiones HTTP desde tu código. Verifica creación con los campos nom email telephone, listado paginado con page y limit, lectura por id, actualización parcial sólo sobre los campos permitidos y eliminación que retorna 204 cuando el recurso se borra correctamente.

Por qu elegir este enfoque: la validación en el esquema y la unicidad mantienen la base de datos consistente. PATCH combinado con runValidators evita que actualizaciones parciales rompan las reglas. Paginación y lean reducen uso de memoria y aumentan rendimiento. El manejador centralizado de errores ofrece respuestas uniformes. Helmet, CORS y rate limiting son medidas rápidas y efectivas de seguridad. Health check y graceful shutdown facilitan la integración con pipelines de CI y orquestadores.

Referencia rápida de endpoints: POST /api/v1/clients para crear, GET /api/v1/clients para listar, GET /api/v1/clients/:id para leer uno, PATCH /api/v1/clients/:id para actualizar campos permitidos, DELETE /api/v1/clients/:id para eliminar, GET /healthz para comprobación de salud. Forma de error consistente con clave error y mensaje humano.

Consejos para producción: usar MongoDB Atlas y guardar MONGO_URI en secretos, registrar peticiones en ficheros con morgan en modo combined, restringir CORS a una allowlist de dominios en lugar de origin true, considerar bibliotecas de validación como Zod o express-validator para aplicaciones grandes, y separar código en carpetas routes controllers services models cuando el proyecto crezca.

Extras recomendados: dockerizar con base node:20-alpine y definir Mongo como servicio, implementar pruebas E2E con supertest y jest o vitest, y añadir documentación OpenAPI o Swagger para equipos de frontend y QA.

Sobre Q2BSTUDIO: como empresa de desarrollo de software ofrecemos soluciones completas en aplicaciones a medida y software a medida, diseño e implementación de servicios cloud aws y azure y proyectos de inteligencia empresarial con Power BI. Si buscas integrar capacidades de inteligencia artificial en tus procesos o desarrollar agentes IA para automatización y optimización, podemos ayudarte con experiencia y soluciones a medida. Descubre más sobre nuestras soluciones de aplicaciones a medida y sobre nuestros servicios de inteligencia artificial para empresas.

Palabras clave integradas naturalmente para mejorar posicionamiento: 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.

Palabras finales: esta plantilla ofrece una base segura y ampliable para un API CRUD con Node.js, Express y MongoDB. Es ideal como punto de partida para añadir autenticación, filtrado avanzado y controles de acceso por roles. Si quieres que preparemos la versión modular en ESM con carpetas separadas o que añadamos documentación Swagger, contacta con nosotros en Q2BSTUDIO y te apoyamos en el siguiente paso.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat