Stateless — nothing is stored. Ingredients with the same name are combined and unit-converted, then grouped into aisle categories from aisle.conf; a category with no matching entries is omitted from categories entirely, and ingredients that match no aisle category land in other, sorted alphabetically. Quantities are reduced by anything in pantry.conf; pantry_items lists the ingredient names that were found there (with a nonzero or unlim quantity) and subtracted. checked echoes the server's current persistent checked state, unrelated to the recipes in this request.
Response
{
"categories": [
{
"category": "fruit and veg",
"items": [
{
"name": "ripe tomatoes",
"quantities": [
{
"scalable": true,
"unit": "large",
"value": { "type": "number", "value": { "type": "regular", "value": 3.0 } }
}
]
}
]
},
{
"category": "milk and dairy",
"items": [
{
"name": "fresh mozzarella",
"quantities": [
{
"scalable": false,
"unit": "g",
"value": { "type": "number", "value": { "type": "regular", "value": 200.0 } }
}
]
},
{
"name": "mozzarella cheese",
"quantities": [
{
"scalable": false,
"unit": "g",
"value": { "type": "number", "value": { "type": "regular", "value": 200.0 } }
}
]
}
]
},
{
"category": "tinned goods and baking",
"items": [
{
"name": "tipo zero flour",
"quantities": [
{
"scalable": false,
"unit": "g",
"value": { "type": "number", "value": { "type": "regular", "value": 1680.0 } }
}
]
},
{
"name": "fresh yeast",
"quantities": [
{
"scalable": false,
"unit": "g",
"value": { "type": "number", "value": { "type": "regular", "value": 3.2 } }
}
]
}
]
},
{
"category": "dried herbs and spices",
"items": [
{
"name": "salt",
"quantities": [
{
"scalable": false,
"unit": "tsp",
"value": {
"type": "number",
"value": { "type": "fraction", "value": { "whole": 0, "num": 1, "den": 8, "err": 0.0 } }
}
},
{
"scalable": false,
"unit": "g",
"value": { "type": "number", "value": { "type": "regular", "value": 49.2 } }
}
]
},
{
"name": "black pepper",
"quantities": [
{
"scalable": false,
"unit": "tsp",
"value": { "type": "number", "value": { "type": "regular", "value": 0.0625 } }
}
]
}
]
},
{
"category": "oils and dressings",
"items": [
{
"name": "Dijon mustard",
"quantities": [
{
"scalable": false,
"unit": "tsp",
"value": {
"type": "number",
"value": { "type": "fraction", "value": { "whole": 0, "num": 1, "den": 4, "err": 0.0 } }
}
}
]
},
{
"name": "honey",
"quantities": [
{
"scalable": false,
"unit": "tsp",
"value": {
"type": "number",
"value": { "type": "fraction", "value": { "whole": 0, "num": 1, "den": 4, "err": 0.0 } }
}
}
]
},
{
"name": "red wine vinegar",
"quantities": [
{
"scalable": false,
"unit": "ml",
"value": { "type": "number", "value": { "type": "regular", "value": 10.0 } }
}
]
}
]
},
{
"category": "other",
"items": [
{ "name": "basil leaves", "quantities": [] },
{
"name": "San Marzano tomato sauce",
"quantities": [
{
"scalable": false,
"unit": "tbsp",
"value": { "type": "number", "value": { "type": "regular", "value": 10.0 } }
}
]
},
{ "name": "semolina", "quantities": [] }
]
}
],
"pantry_items": ["flour", "water", "salt", "tipo zero flour", "olive oil", "fresh basil", "black pepper"],
"checked": []
}