FridgeRadar models physical storage as a two-level hierarchy: zones (zonas) represent distinct temperature or storage areas within a household — such as a refrigerator, freezer, or pantry — and shelves (estantes) are named subdivisions within a zone. Both resources are fully CRUD-capable, and their list endpoints accept a filter query parameter so clients can fetch only the items relevant to a given household or zone. Every request requires anDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/EstefanoARG/FridgeRadar/llms.txt
Use this file to discover all available pages before exploring further.
Authorization: Bearer <token> header.
Zones — /api/v1/zonas
POST /api/v1/zonas
Creates a new storage zone inside the specified household. Authentication:Authorization: Bearer <token> required.
Primary key of the household this zone belongs to.
Display name for the zone (e.g.
"Refrigerador", "Despensa").Category of storage area (e.g.
"frio", "congelado", "ambiente").Icon identifier or emoji used in the UI (e.g.
"🧊"). Optional.Minimum temperature in °C for this zone. Optional.
Maximum temperature in °C for this zone. Optional.
Response — 201 Created
Auto-assigned primary key for the new zone.
Household this zone belongs to.
Zone name as stored.
Zone type/category.
Icon identifier, or
null if not set.Minimum temperature in °C, or
null.Maximum temperature in °C, or
null.| Status | Meaning |
|---|---|
201 Created | Zone created; object returned. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | The referenced id_hogar does not exist. |
422 Unprocessable Entity | Validation error — required fields missing. |
GET /api/v1/zonas
Returns all zones, with an optional filter by household. Authentication:Authorization: Bearer <token> required.
If provided, returns only zones belonging to this household. Omit to return all zones visible to the authenticated user.
Response — 200 OK
Returns a JSON array ofZonaResponse objects (same shape as the POST response above).
Zone primary key.
Household this zone belongs to.
Zone name.
Zone type/category.
Icon identifier, or
null.Minimum temperature in °C, or
null.Maximum temperature in °C, or
null.| Status | Meaning |
|---|---|
200 OK | Array of zones returned (may be empty). |
401 Unauthorized | Token missing, expired, or invalid. |
GET /api/v1/zonas/{id_zona}
Fetches a single zone by its primary key.
Authentication: Authorization: Bearer <token> required.
The primary key of the zone to retrieve.
Response — 200 OK
Returns a singleZonaResponse object.
| Status | Meaning |
|---|---|
200 OK | Zone object returned. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | No zone with that ID. |
PATCH /api/v1/zonas/{id_zona}
Partially updates a zone. Only fields present in the request body are changed.
Authentication: Authorization: Bearer <token> required.
The primary key of the zone to update.
New display name. Optional.
Updated storage type. Optional.
Updated icon identifier. Optional.
Updated minimum temperature in °C. Optional.
Updated maximum temperature in °C. Optional.
Response — 200 OK
Returns the full updatedZonaResponse object.
| Status | Meaning |
|---|---|
200 OK | Updated zone returned. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | No zone with that ID. |
422 Unprocessable Entity | Validation error. |
DELETE /api/v1/zonas/{id_zona}
Permanently deletes a zone and all its shelves.
Authentication: Authorization: Bearer <token> required.
The primary key of the zone to delete.
| Status | Meaning |
|---|---|
204 No Content | Zone deleted; no response body. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | No zone with that ID. |
Shelves — /api/v1/estantes
GET /api/v1/estantes
Returns all shelves, with an optional filter by zone. Authentication:Authorization: Bearer <token> required.
If provided, returns only shelves that belong to this zone. Omit to return all shelves visible to the authenticated user.
Response — 200 OK
Returns a JSON array ofEstanteResponse objects.
Shelf primary key.
Zone this shelf belongs to.
Shelf display name.
Numeric vertical position within the zone (lower numbers = higher shelves, by convention).
Optional color hint for UI rendering (e.g.
"#A8D5BA"), or null.| Status | Meaning |
|---|---|
200 OK | Array of shelves returned (may be empty). |
401 Unauthorized | Token missing, expired, or invalid. |
POST /api/v1/estantes
Creates a new shelf inside a zone. Authentication:Authorization: Bearer <token> required.
Primary key of the zone this shelf belongs to.
Display name for the shelf (e.g.
"Cajón superior", "Bandeja de lácteos").Numeric position of the shelf within the zone. Used to render shelves in physical order.
Optional hex color or color token for UI display. Optional.
Response — 201 Created
Auto-assigned primary key for the new shelf.
Zone this shelf belongs to.
Shelf name as stored.
Vertical position as stored.
Color hint, or
null if not set.| Status | Meaning |
|---|---|
201 Created | Shelf created; object returned. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | The referenced id_zona does not exist. |
422 Unprocessable Entity | Validation error — required fields missing. |
GET /api/v1/estantes/{id_estante}
Fetches a single shelf by its primary key.
Authentication: Authorization: Bearer <token> required.
The primary key of the shelf to retrieve.
Response — 200 OK
Returns a singleEstanteResponse object.
| Status | Meaning |
|---|---|
200 OK | Shelf object returned. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | No shelf with that ID. |
PATCH /api/v1/estantes/{id_estante}
Partially updates a shelf. Only fields present in the request body are modified.
Authentication: Authorization: Bearer <token> required.
The primary key of the shelf to update.
New display name. Optional.
Updated vertical position. Optional.
Updated UI color hint. Optional.
Response — 200 OK
Returns the full updatedEstanteResponse object.
| Status | Meaning |
|---|---|
200 OK | Updated shelf returned. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | No shelf with that ID. |
422 Unprocessable Entity | Validation error. |
DELETE /api/v1/estantes/{id_estante}
Permanently deletes a shelf.
Authentication: Authorization: Bearer <token> required.
The primary key of the shelf to delete.
| Status | Meaning |
|---|---|
204 No Content | Shelf deleted; no response body. |
401 Unauthorized | Token missing, expired, or invalid. |
404 Not Found | No shelf with that ID. |