Saltar al contenido principal

Categorías

Archivo: api/src/routes/admin.js (router categories) · Prefijo: /api/categories

En la interfaz de administración las categorías aparecen como "Centros de costos" (/admin/centros-de-costos).

GET /api/categories​

Acceso: Autenticado, o un API key de integración con scope catalog:read

Integraciones externas

Este es el único endpoint de administración que también acepta un API key de integración (scope catalog:read), pensado para consumidores de solo lectura como un chatbot. El resto de rutas de este archivo siguen exigiendo login de usuario.

Respuesta 200 (filas en snake_case)

{
"items": [
{ "id": "…", "name": "Tornillería", "description": null, "active": true }
]
}

POST /api/categories​

Acceso: admin

CampoTipoRequeridoPor defecto
namestringSí
descriptionstringNo
activebooleanNotrue

Respuesta 201: { "id": "<uuid>" }

PUT /api/categories/:id​

Acceso: admin. Mismos campos, todos opcionales. Usa COALESCE: enviar null no borra el valor.

Respuesta 200: { "id": "<uuid>" } · Errores: 404 NOT_FOUND.

DELETE /api/categories/:id​

Borra la categoría. Los productos asociados quedan con category_id = NULL.

Acceso: admin · Respuesta 204