{"auth":{"reads":"public","writes":"Bearer or X-API-Key when API_WRITE_KEY is set; login will replace this later"},"docs":"/docs","endpoints":[{"method":"GET","path":"/api/health"},{"method":"GET","path":"/api/stats"},{"method":"GET","path":"/api/ingredients"},{"method":"POST","path":"/api/ingredients"},{"method":"GET","path":"/api/ingredients/<id-or-slug>"},{"method":"PATCH","path":"/api/ingredients/<id-or-slug>"},{"method":"PUT","path":"/api/ingredients/<id-or-slug>"},{"method":"DELETE","path":"/api/ingredients/<id-or-slug>"},{"method":"GET","path":"/api/search"},{"method":"GET","path":"/api/search/suggest"},{"method":"GET","path":"/api/categories"},{"method":"POST","path":"/api/categories"},{"method":"GET","path":"/api/cuisines"},{"method":"POST","path":"/api/cuisines"},{"method":"GET","path":"/api/tags"},{"method":"POST","path":"/api/tags"},{"method":"GET","path":"/api/allergens"},{"method":"POST","path":"/api/allergens"},{"method":"GET","path":"/api/forms"}],"filters":{"category":"Category slug (includes direct children)","cuisine":"Single cuisine slug","cuisines":"Repeatable cuisine slugs (match any)","estimated":"true/false \u2014 nutrition_estimated flag","exclude_allergen":"Repeatable allergen slugs to exclude","form":"Culinary form. fresh and raw match each other","forms":"Repeatable culinary forms","ids":"Comma-separated ingredient ids","max_fat":"Maximum fat g / 100 g","max_fiber":"Maximum fiber g / 100 g","max_kcal":"Maximum kcal / 100 g","max_protein":"Maximum protein g / 100 g","max_sodium":"Maximum sodium mg / 100 g","max_sugars":"Maximum sugars g / 100 g","min_fat":"Minimum fat g / 100 g","min_fiber":"Minimum fiber g / 100 g","min_kcal":"Minimum kcal / 100 g","min_protein":"Minimum protein g / 100 g","min_sodium":"Minimum sodium mg / 100 g","min_sugars":"Minimum sugars g / 100 g","order":"asc | desc","page":"Page number (default 1)","per_page":"Page size (default 24, max 100)","q":"Full-text search across name, scientific name, description, and aliases","slugs":"Comma-separated ingredient slugs","sort":"name | protein | kcal | fat | fiber | updated | id","tags":"Repeatable tag slugs (AND). Alias: tag"},"name":"Endless Flavour ingredient API"}
