Endpoints / Categorías
Listar categorías
Lista categorías de forma paginada dentro de la empresa del usuario autenticado.
/categoriesCaso de Uso
Se usa cuando la aplicación necesita mostrar una tabla de categorías, buscar por nombre o descripción, o filtrar por estado. Al usarlo, el usuario obtiene una página de categorías y los datos de paginación necesarios para navegar el listado.
Autenticación
Requiere token JWT en el header `Authorization: Bearer <token>`.
Parámetros de ruta
Este endpoint no recibe parámetros de ruta.
Body
No aplica.
Query params
pagenumberobligatorioNúmero de página. Debe ser un entero positivo.
pageSizenumberobligatorioTamaño de página. Debe ser un entero positivo.
searchstring opcionalTexto opcional para buscar por nombre o descripción de categoría.
statusstring opcionalEstado opcional. Solo acepta activo o inactivo.
Reglas de negocio
Solo lista categorías de la empresa del usuario autenticado.
La empresa del usuario autenticado debe estar activa.
El usuario autenticado debe estar activo.
El usuario autenticado debe tener rol jefe o empleado.
page es un query param obligatorio y debe ser un entero positivo.
pageSize es un query param obligatorio y debe ser un entero positivo.
search es un query param opcional y debe enviarse como texto.
search busca coincidencias por ctgnombre o ctgriadescripcion.
status es un query param opcional y solo acepta activo o inactivo.
Si status no se envía, se excluyen las categorías con estado eliminado.
Las categorías se ordenan por fecha de registro descendente.
Errores esperados
No se envió un token JWT válido o el token no contiene información válida del usuario.
El parámetro search se envió más de una vez o con un formato no válido.
El parámetro status se envió más de una vez o con un formato no válido.
El parámetro status tiene un valor distinto de activo o inactivo.
El parámetro page no se envió o no es un número entero mayor o igual a 1.
El parámetro pageSize no se envió o no es un número entero mayor o igual a 1.
La empresa asociada al usuario autenticado no fue encontrada.
La empresa asociada al usuario autenticado está inactiva.
El usuario autenticado no fue encontrado dentro de su empresa.
El usuario autenticado no pertenece a la empresa indicada por su sesión.
El usuario autenticado intentó acceder a información de una empresa distinta a la suya.
El rol del usuario no está permitido para acceder al módulo de categorías.
El usuario autenticado no tiene un rol permitido para consultar categorías.
El usuario autenticado está inactivo y no puede usar el sistema.
Ocurrió un error interno al consultar el listado de categorías.
Notas de uso
Este endpoint no recibe parámetros de ruta ni body.
Los filtros se envían como query params: page, pageSize, search y status.
Envía siempre page y pageSize para evitar errores de validación.
Usa search para buscar por nombre o descripción de categoría.
Si no envías status, el listado devuelve categorías activas e inactivas, pero no eliminadas.
Si no hay coincidencias, items se devuelve como un arreglo vacío.