Достъпът до Edamam B2B API се осъществява чрез изпращане на HTTPS заявки на конкретни URL адреси, както е описано по-долу. Основният URL адрес е https://api.edamam.com и вие получавате пълния URL адрес, като добавяте пътя на заявката към основния URL адрес, като https://api.edamam.com/search

търсене

При успех API връща HTTP код 200 OK и тялото съдържа резултата от заявката във формат JSON. В случай на грешки, API връща код за грешка (напр. 404 НЕ Е НАМЕРЕН). Основният текст може да съдържа полезна информация в HTML формат. Клиентските програми трябва да използват само кодовете за отговор, тъй като телата се предоставят за удобство на разработчиците на клиенти.

Сървърите на Edamam поддържат стандартна HTTP компресия, използвайки gzip. Използването на компресия може да намали размера на отговора и по този начин да увеличи скоростта на трансфер.

Клиентът може да включва следния заглавие, за да посочи какви методи за компресиране поддържа:

Приемане-кодиране: gzip

След това сървърът ще включва следния заглавие, за да посочи компресирания отговор

Кодиране на съдържание: gzip

или ще го пропусне, ако отговорът не е компресиран.

За повече информация вижте тук: http://en.wikipedia.org/wiki/Http_compression.

Търсене

Път: https://api.edamam.com/search

За рецепти на испански трябва да получите достъп до нашата бета на Път: https://test-es.edamam.com/search

Потърсете рецепти, съответстващи на посочената заявка. Уверете се, че вашите заявки са на правилния език на всяка конкретна точка за достъп!

Следните параметри са част от URL адреса на заявката GET:

Търсене по хранителен диапазон

Можете да посочите хранителни граници, като добавите параметри в следната форма:

хранителни вещества [NTR] = ОБХВАТ където

NTR е един от: CA, CHOCDF, CHOLE, FAMS, FAPU, FASAT, FAT, FATRN, FE, FIBTG, FOLDFE, K, MG, NA, NIA, P, PROCNT, RIBF, ЗАХАР, THIA, TOCPHA, VITA_RAE, VITB12, VITB6A, VITC, VITD, VITK1 или ZN;

RANGE е в едно от MIN +, MIN - MAX или MAX, където MIN и MAX са неотрицателни цели числа.

Например:
хранителни вещества [CA] = 50 + означава минимум 50 mg калций, където ‘50 + ’трябва да бъде правилно кодиран като ‘50% 2B’
хранителни вещества [FAT] = 30 означава максимум 30g мазнини и
хранителни вещества [FE] = 5-10 означава желязо между 5 mg и 10 mg включително
забележка: винаги кодирайте URL адреса, т.е. хранителните вещества [FE] са хранителни вещества% 5BFE% 5D

Можете да комбинирате повече от един хранителен диапазон в заявките за търсене

NTR кодово наименование Единица NTR кодово име
CA Калций mg ENERC_KCAL Енергия ккал
CHOCDF Въглехидрати ж NIA Ниацин (B3) mg
ХОЛ Холестерол mg P Фосфор mg
ФАМИ Мононенаситени ж PROCNT Протеин ж
FAPU Полиненаситени ж RIBF Рибофлавин (B2) mg
FASAT Наситени ж ЗАХАР Захари ж
ДЕБЕЛ Дебел ж ТАЗИ Тиамин (B1) mg
FATRN Транс ж ТОФФА Витамин Е mg
FE Желязо mg VITA_RAE Витамин А æg
FIBTG Фибри ж VITB12 Витамин В12 æg
FOLDFE Фолат (еквивалент) æg VITB6A Витамин В6 mg
К Калий mg VITC Витамин Ц mg
MG Магнезий mg VITD Витамин D æg
NA Натрий mg VITK1 Витамин К æg

Отрицателно търсене (изключени съставки)

Можете да посочите храни, които не искате да присъстват в резултатите, които заявката за търсене връща.

Този метод трябва да се комбинира с етикетите за диета/здраве/алерген и не е предназначен да ги замества.

Пример: Искате да получите обратно само рецепти, които не съдържат глутен, свинско или кисело мляко. Тогава ще използвате следните изключения:

Тази заявка, когато се комбинира с правилния термин „q =“, ще доведе до рецепти, които не съдържат обикновено кисело мляко или обикновено гръцко кисело мляко и които също не съдържат глутен и свинско месо.

Ако обаче искате да получите рецепти, които изобщо не съдържат мляко или дневник, ще бъде по-добре да използвате етикетите „без млечни продукти“ или „без мляко“, вместо да изброявате всички възможни храни, съдържащи лактоза в изключената съставка

Ето няколко примера за това как работи изключването на съставките:
• „Патладжанът“ ще изключи както патладжана, така и патладжана, защото те са синоними
• „Пилешките гърди“ изключват само пилешки гърди с кожа, но не и „пилешки“ или „пилешки гърди без кожа“, тъй като те са различни хранителни храни
• „спагети“ ще изключи всякакъв вид нормални тестени изделия като макарони или лингвини, тъй като всички те са една и съща хранителна храна, само в различен формат. Това обаче няма да изключи варени тестени изделия или пълнозърнести макаронени изделия, тъй като те се различават от обикновените тестени изделия.

Отрицателното търсене също така търси презентация на фразата от параметъра “изключен =” в заглавието на рецептата. Така че „изключено = кисело мляко“ ще изключи не само всички рецепти, които съдържат конкретната съставка обикновено кисело мляко в списъка си със съставки, но и всички рецепти, които съдържат фразата кисело мляко в заглавието си - например „Дресинг от гръцко кисело мляко“

Пример GET заявка

Ето пример за използване на curl:

ЗАБЕЛЕЖКА: Моля, уверете се, че използвате идентификационните данни, които сте създали за този точно API, тъй като те са специфични за приложението и плана. $ < >нотацията означава тип на входа и НЕ трябва да се включва в самата заявка.

Видове

Композитните типове са описани по отношение на тяхното JSON представяне.

В описанията се използват следните обозначения:
булев, цяло число, плувка, и низ означават примитивните типове JavaScript Булево, цяло число, плувка, и низ, съответно преброяване означава низово поле, което приема стойности само от предварително дефиниран диапазон (диапазонът е посочен там, където е необходимо) Т[] означава масив от обекти от тип т
Т[] означава обект (асоциативна карта), чието всяко поле (елемент) е от тип т.

Тип на полето Описание
q низ Текст на заявката, както е изпратен
от цяло число Първи индекс на резултата, както е подаден
да се цяло число Индекс на последния резултат, както е подаден
броя цяло число Брой намерени резултати
Повече ▼ булев Повече от максимално разрешения брой намерени резултати
хитове Натиснете [] Съвпадащи резултати (Хит обекти)
Тип на полето Описание
рецепта Рецепта Съответстваща рецепта (Рецепта обект)
отметка булев Дали тази рецепта е маркирана от търсещия потребител?
закупени булев Тази рецепта ли е закупена от търсещия потребител?

Рецепта

Забележка: В зависимост от интерфейса, чрез който се получава рецептата, може да присъства само подмножество от полетата. За подробности вижте описанието на конкретния интерфейс

Тип на полето Описание
ури низ Онтологичен идентификатор
етикет низ Заглавие на рецептата
образ низ URL адрес на изображението
източник низ Идентификатор на изходния сайт
URL адрес низ URL адрес на оригиналната рецепта
добив цяло число Брой порции
калории плувка Обща енергия, kcal
общо тегло плувка Общо тегло, g
съставки Съставка [] Списък на съставките
totalNutrients Общо хранителни вещества за цялата рецепта. totalNutrients/добив се равнява на хранителни вещества на порция
totalDaily % дневна стойност за цялата рецепта. общо/дневно/добив се равнява на хранителни вещества на порция
диетични етикети преброяване [] Диетични етикети: „балансиран“, „с високо съдържание на протеини“, „с високо съдържание на фибри“, „с ниско съдържание на мазнини“, „с ниско съдържание на въглехидрати“, „с ниско съдържание на натрий“ (етикетите са на порция)
етикети за здраве преброяване [] Здравни етикети: „веган“, „вегетариански“, „палео“, „без млечни продукти“, „без глутен“, „без пшеница“, „без мазнини“, „с ниско съдържание на захар“, „без яйца“, „Без фъстъци“, „без ядки“, „без соя“, „без риба“, „без черупки“ (етикетите са за порция)

Съставка

Тип на полето Описание
foodId низ Идентификатор на храната
количество плувка Количество на определената мярка
мярка Измерете Измерете
тегло плувка Общо тегло, g
храна Храна Храна
категория храна низ Категория на пътеката за пазаруване

Моля, обърнете внимание, че някои планове може да не включват всички полета за обекта на съставката. Консултирайте се със страницата на API за подробности и помислете за надграждане до различен план, ако имате нужда от всички полета.