Core API
Pantry
Manage a user’s pantry and use the AI pantry helpers to categorize items, normalize names, and estimate expiry. These power the “what’s in my kitchen?” experience.
Endpoints
/v1/ingredients/pantryList pantry items/v1/ingredients/pantryAdd an item/v1/ingredients/pantry/{id}Update an item/v1/ingredients/pantry/{id}Remove an item/v1/ingredients/pantry/insightsSuggested recipes, expiring items & shopping gaps/api/v1/pantry/suggest-categoriesAI: categorize & normalize ingredientsList and filter items
GET /v1/ingredients/pantry
Returns the authenticated user's pantry, paginated with ?per_page= (default 100, max 200). Filter server-side with ?category= (fridge, cupboard, spices, freezer, fresh) and ?search= for a name match.
Add an item
POST /v1/ingredients/pantry
Only ingredient_name is required. Everything else is optional metadata the app uses for expiry tracking and organization. Returns 201 Created with the stored item.
{
"ingredient_name": "chicken thigh",
"quantity": "400",
"unit": "g",
"category": "fridge",
"expiry_date": "2026-07-24",
"notes": "bone-in, skin-on"
}Suggest categories
POST /api/v1/pantry/suggest-categories
Pass a list of raw ingredient names; the AI returns a canonical name, a pantry category (fridge, cupboard, spices, freezer, fresh), and a confidence score.
{
"ingredients": ["chicken thigh", "basmati", "garam masala"],
"ingredient_name": null
}