- API
- Eindpunten
- /foods/search
Search foods by name
Zoek voedingsmiddelen zoals een gebruiker van een voedingsdagboek ze invoert. De resultaten combineren twee catalogi: generieke voedingsmiddelen ('banaan', 'volle melk'), waar een dagboekinvoer doorgaans naar verwijst, en verpakte producten uit de Tuduu-hoofdcatalogus. Elk resultaat bevat al de macronutriënten per 100 g en de portie, zodat je voor het weergeven van een zoekresultaat geen vervolgoproep nodig hebt. Pagina's bevatten 15 items en hun grootte kan niet worden geconfigureerd. Maximaal 5 generieke voedingsmiddelen openen de eerste pagina wanneer de zoekopdracht overeenkomt met een resultaat; alles daarna, op die pagina en op elke volgende pagina, komt uit de catalogus met verpakte producten. Stuur voor het scrollen de ontvangen 'meta.nextCursor' terug, zonder 'searchText': de cursor bevat de zoekopdracht al en heeft voorrang als je beide meestuurt. Een null-waarde voor 'nextCursor' betekent dat er niets meer is. Het scrollen stopt na de eerste 1000 verpakte items — verfijn de zoekopdracht om verder te komen. De matching houdt rekening met accenten, enkelvoud/meervoud en extra modifiers: 'caffè zuccherato' geeft koffie terug in plaats van een lege lijst. Alleen voedingsmiddelen met bekende calorieën worden geretourneerd; verpakte resultaten worden beperkt tot eetbare categorieën en producten die een merk vermelden, omdat een product dat alleen met zijn naam wordt beschreven niet van duplicaten kan worden onderscheiden — deze producten blijven op id adresseerbaar. Verpakte resultaten met een opgegeven portie komen eerst. Alleen Italiaans: dit endpoint geeft 406 terug voor elke andere Accept-Language, omdat generieke voedingsnamen uitsluitend in het Italiaans bestaan.
Aanvraag
FoodSearchRequest
object
FoodSearchRequest
searchText?
Naam van het voedingsmiddel in vrije tekst waarop moet worden gezocht, zoals een gebruiker van een voedingsdagboek die zou invoeren. Verplicht om een zoekopdracht te starten; genegeerd wanneer ook 'cursor' wordt meegestuurd
cursor?
Ondoorzichtig token dat door een eerdere aanroep als 'meta.nextCursor' is teruggegeven, om de pagina na die aanroep op te halen. Het bevat de zoekopdracht al, dus 'searchText' is niet nodig en wordt genegeerd wanneer beide worden meegestuurd. Stuur geen cursor mee om een nieuwe zoekopdracht te starten