Unidades de medida
POST
Listar unidades de medida
POST /api/units/list-units
Descripción
Retorna el catálogo paginado de unidades de medida con búsqueda libre y filtro por tipo.
Detalles
* Devuelve unidades de los tres tipos disponibles: base, universal e individual. * Cada unidad incluye su tipo, su medida base de referencia y el factor de conversión. * La búsqueda libre aplica sobre nombre, símbolo y nombre del insumo asociado. * Solo incluye unidades disponibles; las eliminadas no aparecen en el listado.
Permisos requeridos
catalog.module
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| search | string | No |
max:100
|
| unitKind | string | No |
enum:base,universal,individual
|
Paginación
| defaultLimit | 50 |
| maxLimit | 100 |
| allowedSorts | name, symbol, unitKind |
| defaultSort | name |
| defaultDir | asc |
| withTotal | true |
Ejemplo de request
curl -X POST https://app.restofy.co/api/units/list-units \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>"
Los valores son demo: reemplázalos por datos reales del negocio.
Ejemplo de respuesta
Actualizado: 2026-07-15T13:20:48Z
HTTP 200
Request
[]
Response
{
"success": true,
"message": "Operación realizada correctamente",
"data": {
"units": [
{
"unitId": 102,
"name": "Bolsa Lomo 500g",
"symbol": "bls",
"unitKind": "individual",
"baseUnitId": 2,
"baseUnitName": "Gramo",
"baseUnitSymbol": "g",
"factor": "500.0000",
"inventoryItemId": 1,
"inventoryItemName": "Lomo de Res",
"isAvailable": 1
},
{
"unitId": 9,
"name": "Caja",
"symbol": "caj",
"unitKind": "universal",
"baseUnitId": 1,
"baseUnitName": "Unidad",
"baseUnitSymbol": "und",
"factor": "1.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 104,
"name": "Caja Churrasco",
"symbol": "cjch",
"unitKind": "individual",
"baseUnitId": 2,
"baseUnitName": "Gramo",
"baseUnitSymbol": "g",
"factor": "6000.0000",
"inventoryItemId": 2,
"inventoryItemName": "Churrasco",
"isAvailable": 1
},
{
"unitId": 101,
"name": "Caja Lomo 5kg",
"symbol": "cjlom",
"unitKind": "individual",
"baseUnitId": 2,
"baseUnitName": "Gramo",
"baseUnitSymbol": "g",
"factor": "5000.0000",
"inventoryItemId": 1,
"inventoryItemName": "Lomo de Res",
"isAvailable": 1
},
{
"unitId": 7,
"name": "Centilitro",
"symbol": "cl",
"unitKind": "universal",
"baseUnitId": 3,
"baseUnitName": "Mililitro",
"baseUnitSymbol": "ml",
"factor": "10.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 103,
"name": "Corte Churrasco",
"symbol": "ctch",
"unitKind": "individual",
"baseUnitId": 2,
"baseUnitName": "Gramo",
"baseUnitSymbol": "g",
"factor": "300.0000",
"inventoryItemId": 2,
"inventoryItemName": "Churrasco",
"isAvailable": 1
},
{
"unitId": 10,
"name": "Docena",
"symbol": "doc",
"unitKind": "universal",
"baseUnitId": 1,
"baseUnitName": "Unidad",
"baseUnitSymbol": "und",
"factor": "12.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 2,
"name": "Gramo",
"symbol": "g",
"unitKind": "base",
"baseUnitId": null,
"baseUnitName": null,
"baseUnitSymbol": null,
"factor": "1.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 4,
"name": "Kilogramo",
"symbol": "kg",
"unitKind": "universal",
"baseUnitId": 2,
"baseUnitName": "Gramo",
"baseUnitSymbol": "g",
"factor": "1000.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 5,
"name": "Libra",
"symbol": "lb",
"unitKind": "universal",
"baseUnitId": 2,
"baseUnitName": "Gramo",
"baseUnitSymbol": "g",
"factor": "453.5920",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 6,
"name": "Litro",
"symbol": "lt",
"unitKind": "universal",
"baseUnitId": 3,
"baseUnitName": "Mililitro",
"baseUnitSymbol": "ml",
"factor": "1000.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 3,
"name": "Mililitro",
"symbol": "ml",
"unitKind": "base",
"baseUnitId": null,
"baseUnitName": null,
"baseUnitSymbol": null,
"factor": "1.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 100,
"name": "Pieza Lomo Res",
"symbol": "pza",
"unitKind": "individual",
"baseUnitId": 2,
"baseUnitName": "Gramo",
"baseUnitSymbol": "g",
"factor": "3500.0000",
"inventoryItemId": 1,
"inventoryItemName": "Lomo de Res",
"isAvailable": 1
},
{
"unitId": 8,
"name": "Porción",
"symbol": "por",
"unitKind": "universal",
"baseUnitId": 1,
"baseUnitName": "Unidad",
"baseUnitSymbol": "und",
"factor": "1.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
},
{
"unitId": 1,
"name": "Unidad",
"symbol": "und",
"unitKind": "base",
"baseUnitId": null,
"baseUnitName": null,
"baseUnitSymbol": null,
"factor": "1.0000",
"inventoryItemId": null,
"inventoryItemName": null,
"isAvailable": 1
}
],
"pagination": {
"page": 1,
"limit": 50,
"total": 15,
"totalPages": 1,
"hasNext": false,
"hasPrev": false
}
}
}