Skip to content

Categorías

Categorías

Prefijo: /api/categorias
Requiere Auth:
Permiso requerido: categorias, *

Módulo de categorías para clasificar productos del menú y catálogo.

GET /api/categorias/

Descripción: Lista todas las categorías
Requiere Auth:
Permiso requerido: categorias, leer

Respuesta exitosa: 200 OK

Response:

[
{
"id": 1,
"nombre": "Bebidas",
"descripcion": "Bebidas frías y calientes",
"tenant_id": "uuid-tenant",
"fecha_creacion": "2025-01-01T00:00:00"
}
]

cURL:

Terminal window
curl http://localhost/api/categorias/ -H "Authorization: Bearer <token>"

Python:

import httpx
resp = httpx.get("http://localhost/api/categorias/", headers={"Authorization": f"Bearer {token}"})
categorias = resp.json()

JavaScript:

const resp = await fetch('http://localhost/api/categorias/', {
headers: {'Authorization': `Bearer ${token}`}
});
const categorias = await resp.json();

GET /api/categorias/{categoria_id}

Descripción: Obtiene una categoría por ID
Requiere Auth:
Permiso requerido: categorias, leer

Respuesta exitosa: 200 OK
Errores: 404 (no encontrada)

cURL:

Terminal window
curl http://localhost/api/categorias/1 -H "Authorization: Bearer <token>"

POST /api/categorias/

Descripción: Crea una nueva categoría
Requiere Auth:
Permiso requerido: categorias, crear

Request:

{
"nombre": "Nueva Categoría",
"descripcion": "Descripción opcional"
}

Respuesta exitosa: 201 Created

cURL:

Terminal window
curl -X POST http://localhost/api/categorias/ \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token>" \
-d '{"nombre":"Nueva Categoría","descripcion":"Descripción opcional"}'

Python:

import httpx
resp = httpx.post("http://localhost/api/categorias/",
json={"nombre": "Nueva Categoría", "descripcion": "Descripción opcional"},
headers={"Authorization": f"Bearer {token}"})
categoria = resp.json()

JavaScript:

const resp = await fetch('http://localhost/api/categorias/', {
method: 'POST',
headers: {'Content-Type': 'application/json', 'Authorization': `Bearer ${token}`},
body: JSON.stringify({nombre: 'Nueva Categoría', descripcion: 'Descripción opcional'})
});

PUT /api/categorias/{categoria_id}

Descripción: Actualiza una categoría existente
Requiere Auth:
Permiso requerido: categorias, actualizar

Respuesta exitosa: 200 OK
Errores: 404 (no encontrada)

cURL:

Terminal window
curl -X PUT http://localhost/api/categorias/1 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token>" \
-d '{"nombre":"Bebidas Actualizado"}'

DELETE /api/categorias/{categoria_id}

Descripción: Elimina una categoría
Requiere Auth:
Permiso requerido: categorias, eliminar

Respuesta exitosa: 204 No Content
Errores: 404 (no encontrada)

cURL:

Terminal window
curl -X DELETE http://localhost/api/categorias/1 -H "Authorization: Bearer <token>"