The products resource represents every item on the La Previa Restobar menu. Each product carries pricing data (both a sale price for customers and an optional cost price for margin tracking), a category label, and optional inventory-tracking fields. WhenDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/luisumit/LaPreviaRestobar/llms.txt
Use this file to discover all available pages before exploring further.
trackInventory is true the stock and minStock fields are meaningful and the inventory subsystem will decrement stock as orders are confirmed.
Product Object
The fields below describeProductDto — the shape returned by the API. The local Product model (used by Room and the Android ViewModel) adds a version field for optimistic concurrency that is not part of the DTO and is therefore not present in API responses.
Unique product identifier (Firebase push key or UUID string).
Display name of the menu item, e.g.
"Choripán".Optional longer description shown on the menu. Defaults to an empty string.
Product category string, e.g.
"Entradas", "Bebidas", "Postres". Defaults to "General".Price charged to the customer (in local currency). May be
null while the product is being configured.Internal cost price used for margin reporting. Not surfaced to end-customers. May be
null.When
true, stock levels are decremented when this product appears in a confirmed order. Defaults to false.Current available stock quantity. Only meaningful when
trackInventory is true. Defaults to 0.0.Minimum stock threshold. When
stock falls below this value the inventory dashboard shows a low-stock warning. Defaults to 0.0.URL of the product image. May be
null if no image has been uploaded.Whether the product is visible and orderable. Defaults to
true.Unix epoch timestamp (milliseconds) when the product was created.
Unix epoch timestamp (milliseconds) of the last update.
GET /products
Returns the full list of products stored in Firebase.200 OK
GET /products/{id}
Returns a single product by its ID. Path parametersThe product’s unique identifier (Firebase push key).
200 OK
GET /products/categories
Returns a deduplicated list of every category string that exists among the stored products.200 OK
POST /products
Creates a new product and persists it to theproducts node in Firebase.
Request body (CreateProductDto)
Display name for the product.
Optional description. May be
null.Sale price in local currency.
Category label. Use
/products/categories to retrieve existing values.Initial stock quantity. Set to
0 for non-tracked products.200 OK — returns the created ProductDto.
PUT /products/{id}
Updates an existing product. Supply only the fields that should change — the backend replaces the stored record with the provided body. Path parametersThe product’s unique identifier.
UpdateProductDto)
Updated display name.
Updated description. May be
null.Updated sale price.
Updated category label.
Updated stock quantity.
200 OK — returns the updated ProductDto.
DELETE /products/{id}
Removes a product from Firebase permanently. Path parametersThe product’s unique identifier.
204 No Content — empty body on success.