Cómo crear tu primera API REST con Node.js: Guía práctica para tu negocio

¡Hola, emprendedores y devs de Colombia! Sabemos que acá el tiempo es oro y que mantener las operaciones de un negocio rodando no es tarea fácil. En un mundo donde todo se digitaliza, tener tus propios sistemas para gestionar ventas, inventarios o clientes ya no es un lujo, es una necesidad. Hoy te vamos a enseñar cómo montar tu primera API REST usando Node.js y Express. Es más sencillo de lo que imaginas y te abrirá las puertas para crear apps web o móviles que se conecten con tu base de datos.

¿Qué es una API REST y por qué tu negocio la necesita?

Para no enredarnos con términos muy técnicos, piensa en una API (Application Programming Interface) como el mesero de un restaurante. Tú (la aplicación móvil o la página web) le pides un plato (datos) al mesero (la API), y él va a la cocina (la base de datos), lo trae y te lo entrega. Una API REST simplemente es una forma estándar y ordenada de organizar ese restaurante digital.

Si tienes una tienda en Medellín, Bogotá o cualquier rinconcito de Colombia y quieres que tu app móvil sepa cuántos productos te quedan en bodega, necesitas una API que consulte esa información y se la envíe al celular. ¡Vamos a construir una básica para gestionar un inventario!

Preparando el entorno de desarrollo

Antes de poner manos a la obra, necesitamos tener nuestras herramientas listas. Lo bueno de Node.js es que es gratuito y funciona en Windows, Mac y Linux.

Inicializando el proyecto

Abre VS Code, crea una carpeta nueva llamada inventario-api y ábrela en el editor. Abre la terminal integrada (Ctrl + ñ o Cmd + ñ) y ejecuta el siguiente comando para iniciar el proyecto:

npm init -y

Esto creará un archivo package.json que guardará la información de tu proyecto y las dependencias. Ahora, vamos a instalar Express, que es el framework que nos facilitará enormemente la creación del servidor:

npm install express

Programando el servidor con Express

Crea un archivo en la raíz de tu carpeta llamado index.js. Este será el corazón de nuestra aplicación. Vamos a escribir el código básico para levantar un servidor local:

const express = require('express');
const app = express();
const port = 3000;

// Middleware para poder entender los datos en formato JSON que nos envíen
app.use(express.json());

app.listen(port, () => {
  console.log(`Servidor corriendo exitosamente en http://localhost:${port}`);
});

Para ver esto en acción, ve a la terminal y ejecuta node index.js. Deberías ver el mensaje en la consola. Si es así, ¡felicitaciones! Ya tienes un servidor montado. Presiona Ctrl + C para detenerlo mientras seguimos programando.

Creando las rutas para gestionar productos

Como somos prácticos, vamos a simular una base de datos usando un arreglo (array) en memoria. En un proyecto real, aquí conectarías PostgreSQL o MongoDB, pero para entender el concepto, esto es perfecto.

Añade el siguiente código a tu index.js, justo antes de la línea app.listen:

// Nuestra "base de datos" temporal
let productos = [
  { id: 1, nombre: 'Camiseta Camilincanins', precio: 45000, stock: 100 },
  { id: 2, nombre: 'Termo para café', precio: 30000, stock: 50 }
];

// Ruta GET para ver todos los productos
app.get('/api/productos', (req, res) => {
  res.json(productos);
});

// Ruta POST para agregar un nuevo producto
app.post('/api/productos', (req, res) => {
  const nuevoProducto = {
    id: productos.length + 1,
    nombre: req.body.nombre,
    precio: req.body.precio,
    stock: req.body.stock
  };
  productos.push(nuevoProducto);
  res.status(201).json({ mensaje: 'Producto agregado con éxito', producto: nuevoProducto });
});

Aquí estamos definiendo dos rutas. La primera (GET) responde con la lista de productos cuando alguien la consulta. La segunda (POST) recibe datos nuevos (nombre, precio, stock) y los agrega a nuestra lista.

Probando nuestra API con Postman

Vuelve a ejecutar tu servidor con node index.js. Abre tu navegador y entra a http://localhost:3000/api/productos. Verás los dos productos iniciales en formato JSON. ¡Excelente!

Ahora probemos el POST. Abre Postman, crea una nueva petición de tipo POST hacia http://localhost:3000/api/productos. Ve a la pestaña "Body", selecciona "raw" y el formato "JSON", y envía esto:

{
  "nombre": "Gorra con logo",
  "precio": 25000,
  "stock": 20
}

Al presionar "Send", la API te responderá con un mensaje de éxito. Si vuelves a consultar la ruta GET, verás que el nuevo producto ya aparece. ¡Acabas de crear el backend básico para el inventario de tu negocio!

Consejos prácticos para llevarlo a producción

Este ejemplo es bacano para aprender, pero antes de ponerlo en internet para que tus clientes o empleados lo usen, ten en cuenta esto:

Conclusión

Desarrollar software a medida no tiene que ser un mito inalcanzable. Con herramientas como Node.js, puedes empezar a construir las soluciones tecnológicas que tu pyme necesita para ser más eficiente y escalar. La clave es empezar pequeño, probar y seguir iterando.

Sin embargo, sabemos que como emprendedor tu tiempo es valioso y quizás prefieras enfocarte en hacer crecer tu negocio mientras dejas la parte técnica en manos de expertos. Si quieres dar el salto digital, ya sea con una página web, una app móvil o un software a medida, en Camilincanins Company estamos listos para acompañarte en el proceso. ¡Escríbenos y conversemos sobre cómo podemos transformar tu idea en realidad!

¿Tienes un proyecto en mente? Te ayudamos a hacerlo realidad.

Solicitar cotización gratis 🦎