Esta es una plantilla básica para crear una API CRUD utilizando TypeScript y Express, junto con MongoDB para la base de datos.
Esta API está configurada para realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) sobre una base de datos MongoDB utilizando Express como framework y TypeScript para el tipado.
Para instalar todos los paquetes, tipos y dependencias del proyecto:
npm install- Copia el archivo
.env.exampley renómbralo a.env. - Rellena los valores en el archivo
.envcon tus credenciales.
cp .env.example .env- Edita el archivo
.envy agrega tus variables de entorno:
MONGODB_URI=<your-mongodb-uri>
JWT_SECRET=<your-jwt-secret>
ACCOUNT_EMAIL=<your-email>
ACCOUNT_APP_PASSWORD=<your-google-app-password>- Crear un nuevo usuario
POST /api/users
Body:
{
"nombre": "Nombre",
"apellido": "Apellido",
"email": "email@example.com",
"telefono": "1234567890"
}- Obtiene todos los usuarios
GET /api/users
Headers:
x-api-key: api-key- Obtener un usuario por ID
GET /api/users/:id
Headers:
x-api-key: api-key- Eliminar un usuario por ID
DELETE /api/users/:id
Headers:
x-api-key: tu-api-key-aqui- Actualizar un usuario por ID
PUT /api/users/:id
Headers:
x-api-key: tu-api-key-aqui
Body:
{
"nombre": "NuevoNombre",
"apellido": "NuevoApellido",
"email": "nuevoemail@example.com",
"telefono": "0987654321"
}- Registro de Usuario y Verificación de Email (para obtener la api key)
POST /register
Body:
{
"nombre": "Nombre",
"apellido": "Apellido",
"email": "email@example.com",
"telefono": "1234567890"
}GET /verify-email?token=tu-token