Skip to content

API Reference

Bizflow ERP expone una API REST en /api/v1/.

Base URL

http://localhost:8080/api/v1

Autenticación

Todas las rutas (excepto login) requieren token JWT:

http
Authorization: Bearer <token>

Ver Autenticación para más detalles.

Endpoints Disponibles

Autenticación

MétodoRutaDescripción
POST/auth/loginIniciar sesión

Gastos

MétodoRutaDescripciónRoles
GET/expensesListar gastosADMIN, MANAGER
GET/expenses/searchBuscar con paginaciónADMIN, MANAGER
GET/expenses/myMis gastosTodos
GET/expenses/{id}Obtener gastoDueño, ADMIN
POST/expensesCrear gastoTodos
PUT/expenses/{id}Actualizar gastoDueño, ADMIN
DELETE/expenses/{id}Eliminar gastoADMIN

Empleados

MétodoRutaDescripciónRoles
GET/employeeListar empleadosADMIN, MANAGER
GET/employee/{id}Obtener empleadoADMIN, MANAGER
POST/employeeCrear empleadoADMIN
PUT/employee/{id}Actualizar empleadoADMIN (o propio para MANAGER)
DELETE/employee/{id}Eliminar empleadoADMIN

Nóminas

MétodoRutaDescripciónRoles
GET/payrollListar nóminasADMIN, MANAGER
GET/payroll/searchBuscar con paginaciónADMIN, MANAGER
GET/payroll/myMis nóminasTodos
GET/payroll/{id}Obtener nóminaADMIN, Dueño
POST/payrollCrear nóminaADMIN
PUT/payroll/{id}Actualizar nóminaADMIN
DELETE/payroll/{id}Eliminar nóminaADMIN

Cargos

MétodoRutaDescripciónRoles
GET/positionListar cargosADMIN, MANAGER
GET/position/{id}Obtener cargoADMIN, MANAGER
POST/positionCrear cargoADMIN
PUT/position/{id}Actualizar cargoADMIN
DELETE/position/{id}Eliminar cargoADMIN

Usuarios

MétodoRutaDescripciónRoles
GET/userListar usuariosADMIN
GET/user/{id}Obtener usuarioADMIN
POST/userCrear usuarioADMIN
PUT/user/{id}Actualizar usuarioADMIN
DELETE/user/{id}Eliminar usuarioADMIN

Códigos de Estado

CódigoSignificado
200OK - Operación exitosa
201Created - Recurso creado
400Bad Request - Error de validación
401Unauthorized - Token inválido o expirado
403Forbidden - Sin permisos
404Not Found - Recurso no encontrado
500Server Error - Error interno

Paginación

Los endpoints /search soportan paginación:

http
GET /api/v1/expenses/search?page=0&size=10&sortBy=expenseDate&sortDir=desc

Parámetros

ParámetroTipoDefaultDescripción
pagenumber0Número de página (0-indexed)
sizenumber10Items por página
sortBystringidCampo de ordenación
sortDirstringascDirección (asc/desc)

Response

json
{
  "content": [...],
  "page": 0,
  "size": 10,
  "totalElements": 45,
  "totalPages": 5,
  "first": true,
  "last": false
}

Licencia GNU GPL v3