- API
- Punkty końcowe
- /foods/search
Search foods by name
Wyszukuj produkty spożywcze tak, jak wpisuje je użytkownik dziennika żywieniowego. Wyniki łączą dwa katalogi: produkty ogólne („banan”, „pełne mleko”), do których zwykle odnosi się wpis w dzienniku, oraz produkty pakowane z głównego katalogu Tuduu. Każdy wynik zawiera już makroskładniki w przeliczeniu na 100 g oraz swoją porcję, więc wyświetlenie wyniku wyszukiwania nie wymaga dodatkowego żądania. Strony zawierają 15 elementów, a ich rozmiaru nie można konfigurować. Do 5 produktów ogólnych otwiera pierwszą stronę, jeśli zapytanie pasuje do któregokolwiek z nich; wszystkie pozostałe elementy na tej stronie i na każdej kolejnej pochodzą z katalogu produktów pakowanych. Aby przewijać wyniki, odeślij otrzymany „meta.nextCursor”, bez „searchText”: kursor już zawiera zapytanie i ma pierwszeństwo, jeśli wyślesz oba parametry. Wartość null w „nextCursor” oznacza, że nie ma więcej wyników. Przewijanie zatrzymuje się po pierwszych 1000 produktach pakowanych — doprecyzuj zapytanie, aby dotrzeć dalej. Dopasowywanie uwzględnia akcenty, liczbę pojedynczą i mnogą oraz dodatkowe określenia: „caffè zuccherato” zwraca kawę zamiast pustej listy. Zwracane są tylko produkty spożywcze o znanej kaloryczności; wyniki produktów pakowanych są ograniczone do kategorii jadalnych oraz produktów, które podają markę, ponieważ produktu opisanego wyłącznie nazwą nie można odróżnić od jego duplikatów — takie produkty pozostają dostępne za pomocą identyfikatora. Wyniki produktów pakowanych, które podają porcję, pojawiają się jako pierwsze. Tylko język włoski: ten punkt końcowy zwraca 406 dla każdej innej wartości Accept-Language, ponieważ ogólne nazwy produktów spożywczych istnieją wyłącznie w języku włoskim.
Żądanie
FoodSearchRequest
object
FoodSearchRequest
searchText?
Nazwa produktu spożywczego w formie tekstu do wyszukania, wpisywana tak, jak zrobiłby to użytkownik dziennika. Wymagana do rozpoczęcia wyszukiwania; ignorowana, gdy przesłano również „cursor”. Maksymalnie 10 słów: nazwa produktu spożywczego składa się z kilku słów, a wymaganie większej ich liczby w tym samym tytule nie zwróci żadnych wyników.
cursor?
Nieprzezroczysty token zwrócony jako „meta.nextCursor” przez poprzednie wywołanie, służący do pobrania strony następującej po tamtej stronie. Zawiera już zapytanie, więc „searchText” nie jest potrzebny i jest ignorowany, gdy przesłano oba parametry. Nie wysyłaj kursora, aby rozpocząć nowe wyszukiwanie