Ingyenes Táplálkozási API Fejlesztőknek: Hogyan Építsünk Alkalmazásokat a Nutrola Élelmiszeradatbázisával
Fejlesztői útmutató a táplálkozásra érzékeny alkalmazások létrehozásához a Nutrola ingyenes táplálkozási API-jával. Tartalmazza az végpontokat, az azonosítást, Python, JavaScript és cURL példakódokat, a kérések korlátait, valamint összehasonlítást a Nutritionix, Edamam és USDA API-kkal.
Korábban a táplálkozásra érzékeny alkalmazások létrehozása megkövetelte, hogy saját élelmiszeradatbázist állítsunk össze, drága adatbázisokat licenceljünk, vagy megbízhatatlan forrásokból gyűjtsünk adatokat. Ma a táplálkozási API-k strukturált, programozott hozzáférést biztosítanak átfogó élelmiszeradatbázisokhoz, amelyek makro- és mikrotápanyag, valamint adagméret adatokat tartalmaznak, mindezt tiszta JSON formátumban. Ez az útmutató végigvezeti a fejlesztőket a táplálkozási API-k világán, különös figyelmet fordítva arra, hogyan kezdjék el a Nutrola ingyenes verziójával, és hogyan hasonlítható össze más lehetőségekkel.
Akár étkezés-tervező alkalmazást, akár fitnesz nyomkövetőt, kutatási eszközt, recept-analizálót, vagy AI asszisztenst készítesz, amely táplálkozással kapcsolatos kérdésekre válaszol, ez az útmutató megadja a technikai részleteket, hogy kiválaszthasd az API-t, és perceken belül elkezdhesd a kérések küldését.
Táplálkozási API-k Áttekintése
Mielőtt belevágnánk a megvalósításba, itt van egy összehasonlítás a 2026-ban elérhető fő táplálkozási API-król.
| API | Ingyenes verzió | Korlát (Ingyenes) | Élelmiszerek az adatbázisban | Vonalkód beolvasás | Élelmiszerfelismerés (AI) | Ár (Fizetős) |
|---|---|---|---|---|---|---|
| Nutrola API | Igen | 500 kérés/nap | 900,000+ | Igen | Igen (kiegészítő) | 29 dollártól/hó |
| USDA FoodData Central | Igen (teljesen ingyenes) | 1,000/óra kulcsonként | 370,000+ | Nem | Nem | Ingyenes |
| Nutritionix API | Igen (korlátozott) | 50 kérés/nap | 1,000,000+ | Igen | Nem | 299 dollártól/hó |
| Edamam API | Igen | 100 kérés/nap | 900,000+ | Nem | Nem | 19 dollártól/hó |
| FatSecret Platform API | Igen | 5,000 kérés/nap | 500,000+ | Igen | Nem | Ingyenes (attribúcióval) |
| Open Food Facts API | Igen (teljesen ingyenes) | Ésszerű használat | 3,000,000+ | Igen | Nem | Ingyenes |
| Spoonacular | Igen | 150 kérés/nap | 500,000+ | Nem | Nem | 29 dollártól/hó |
Kezdés a Nutrola API-val
1. lépés: Fejlesztői Fiók Létrehozása
Látogass el a Nutrola Fejlesztői Portáljára a developers.nutrola.com oldalon, hogy ingyenes fiókot hozz létre. Az e-mail ellenőrzése után egy API kulcsot kapsz a műszerfaladon. Az ingyenes verzió 500 kérést tartalmaz naponta, hozzáférést a teljes élelmiszeradatbázishoz és szöveges alapú élelmiszerkeresést. Az AI élelmiszerfelismerő végpontok a fizetős verziókban érhetők el.
2. lépés: Azonosítás
Minden API kéréshez szükséges az API kulcs a kérés fejlécében. A kulcs az X-Api-Key fejlécen keresztül kerül átadásra.
X-Api-Key: your_api_key_here
Az API kizárólag HTTPS-t használ. Minden HTTP végpontra küldött kérés 301-es átirányítást kap HTTPS-re. Ne ágyazd be az API kulcsodat a kliensoldali kódba; mindig a háttérszervereden keresztül proxyzd a kéréseket.
3. lépés: Alap URL
Minden végpont a következő címen érhető el:
https://api.nutrola.com/v1/
A válaszok JSON formátumban érkeznek UTF-8 kódolással. Az API RESTful konvenciókat követ, és standard HTTP státuszkódokat használ.
Fő Végpontok
Élelmiszerek Keresése
Keresd az élelmiszeradatbázist szöveges lekérdezéssel. Visszaadja a megfelelő élelmiszereket táplálkozási adatokkal.
Végpont: GET /v1/foods/search
Paraméterek:
| Paraméter | Típus | Kötelező | Leírás |
|---|---|---|---|
| query | string | Igen | Keresési kifejezés (pl. "grillezett csirkemell") |
| limit | integer | Nem | Eredmények száma oldalon (alapértelmezett: 10, max: 50) |
| offset | integer | Nem | Lapozási eltolás (alapértelmezett: 0) |
| type | string | Nem | Szűrés típusa: "common", "branded", "restaurant" |
| language | string | Nem | Nyelvkód (alapértelmezett: "en"). Támogatott: en, es, de, fr, pt, ja, ko, zh |
Példa Kérés (cURL):
curl -X GET "https://api.nutrola.com/v1/foods/search?query=grilled+chicken+breast&limit=5" \
-H "X-Api-Key: your_api_key_here"
Példa Kérés (Python):
import requests
API_KEY = "your_api_key_here"
BASE_URL = "https://api.nutrola.com/v1"
response = requests.get(
f"{BASE_URL}/foods/search",
headers={"X-Api-Key": API_KEY},
params={
"query": "grilled chicken breast",
"limit": 5
}
)
data = response.json()
for food in data["foods"]:
print(f"{food['name']}: {food['calories']} kcal per {food['serving_size']}{food['serving_unit']}")
Példa Kérés (JavaScript / Node.js):
const API_KEY = "your_api_key_here";
const BASE_URL = "https://api.nutrola.com/v1";
async function searchFoods(query) {
const url = new URL(`${BASE_URL}/foods/search`);
url.searchParams.append("query", query);
url.searchParams.append("limit", "5");
const response = await fetch(url, {
headers: { "X-Api-Key": API_KEY }
});
const data = await response.json();
return data.foods;
}
searchFoods("grilled chicken breast").then(foods => {
foods.forEach(food => {
console.log(`${food.name}: ${food.calories} kcal per ${food.serving_size}${food.serving_unit}`);
});
});
Példa Válasz:
{
"foods": [
{
"id": "nf_001234",
"name": "Grillezett Csirkemell, Bőr Nélkül",
"type": "common",
"calories": 165,
"protein_g": 31.0,
"carbohydrates_g": 0.0,
"fat_g": 3.6,
"fiber_g": 0.0,
"sugar_g": 0.0,
"sodium_mg": 74,
"serving_size": 100,
"serving_unit": "g",
"serving_description": "100 gramm",
"alt_servings": [
{
"description": "1 közepes mell (196g)",
"multiplier": 1.96
},
{
"description": "1 oz (28g)",
"multiplier": 0.28
}
],
"source": "USDA SR Legacy",
"updated": "2026-01-15"
}
],
"total_results": 47,
"offset": 0,
"limit": 5
}
Élelmiszer Lekérdezése ID Alapján
Részletes táplálkozási adatokat kérhetsz le egy adott élelmiszertermékről a Nutrola ID-ja alapján.
Végpont: GET /v1/foods/{food_id}
Példa (cURL):
curl -X GET "https://api.nutrola.com/v1/foods/nf_001234" \
-H "X-Api-Key: your_api_key_here"
A válasz tartalmazza a teljes makro- és mikrotápanyag profilt (30+ tápanyag), az összes elérhető adagméretet, az összetevők listáját (márkás és étterem termékek esetén), allergén jelzéseket, diétás címkéket (vega, gluténmentes, halal, kóser), és forráshivatkozásokat.
Élelmiszer Lekérdezése Vonalkód Alapján
Keresd meg a csomagolt élelmiszerterméket a UPC vagy EAN vonalkódja alapján.
Végpont: GET /v1/foods/barcode/{code}
Paraméterek:
| Paraméter | Típus | Kötelező | Leírás |
|---|---|---|---|
| code | string | Igen | UPC (12 számjegy) vagy EAN (13 számjegy) vonalkód |
Példa (Python):
response = requests.get(
f"{BASE_URL}/foods/barcode/041331092609",
headers={"X-Api-Key": API_KEY}
)
food = response.json()
print(f"{food['name']}: {food['calories']} kcal per {food['serving_description']}")
Természetes Nyelvű Bemenet Elemzése
Elemzd a természetes nyelvű élelmiszerleírást, és adj vissza strukturált táplálkozási adatokat. Ez a végpont kezeli a mennyiségeket, mértékegységeket, elkészítési módokat és több elemet egyetlen sztringben.
Végpont: POST /v1/foods/analyze
Kérés Törzs:
{
"query": "2 tojásrántotta egy szelet teljes kiőrlésű pirítóssal és fél avokádóval",
"language": "en"
}
Példa (Python):
response = requests.post(
f"{BASE_URL}/foods/analyze",
headers={
"X-Api-Key": API_KEY,
"Content-Type": "application/json"
},
json={
"query": "2 scrambled eggs with a slice of whole wheat toast and half an avocado"
}
)
result = response.json()
for item in result["items"]:
print(f"{item['quantity']} {item['unit']} {item['name']}: {item['calories']} kcal")
print(f"Összesen: {result['total']['calories']} kcal")
Példa Válasz:
{
"items": [
{
"name": "Tojásrántotta",
"quantity": 2,
"unit": "nagy",
"calories": 182,
"protein_g": 12.2,
"carbohydrates_g": 2.4,
"fat_g": 13.6,
"food_id": "nf_002891"
},
{
"name": "Teljes Kiőrlésű Pirítós",
"quantity": 1,
"unit": "szelet",
"calories": 81,
"protein_g": 3.9,
"carbohydrates_g": 13.8,
"fat_g": 1.1,
"food_id": "nf_003401"
},
{
"name": "Avokádó",
"quantity": 0.5,
"unit": "közepes",
"calories": 120,
"protein_g": 1.5,
"carbohydrates_g": 6.4,
"fat_g": 11.0,
"food_id": "nf_000892"
}
],
"total": {
"calories": 383,
"protein_g": 17.6,
"carbohydrates_g": 22.6,
"fat_g": 25.7
}
}
AI Élelmiszerfelismerés (Fizetős Szint)
Küldj el egy élelmiszerfotót AI-alapú felismerés és táplálkozási elemzés céljából.
Végpont: POST /v1/foods/recognize
Kérés: Multipart form data az kép fájl, vagy JSON törzs base64-kódolt képpel.
Példa (Python):
with open("meal_photo.jpg", "rb") as f:
response = requests.post(
f"{BASE_URL}/foods/recognize",
headers={"X-Api-Key": API_KEY},
files={"image": ("meal.jpg", f, "image/jpeg")}
)
result = response.json()
for item in result["detected_items"]:
print(f"{item['name']} ({item['confidence']:.1%}): {item['calories']} kcal")
A válasz tartalmazza a felismert élelmiszereket bizalmi pontszámokkal, keretkoordinátákat, becsült adagméreteket, táplálkozási bontást minden elemre, és az összes étkezés táplálkozási összegzését.
Korlátok és Hibakezelés
Korlátok a Szintek Szerint
| Szint | Napi Kérések | Kérések/másodperc | AI Felismerés | Ár |
|---|---|---|---|---|
| Ingyenes | 500 | 5 | Nem tartalmazza | 0 dollár |
| Starter | 5,000 | 10 | 100/nap | 29 dollár/hó |
| Pro | 50,000 | 25 | 1,000/nap | 99 dollár/hó |
| Vállalati | Egyedi | Egyedi | Egyedi | Kapcsolatfelvétel az értékesítéssel |
Korlátok Fejlécei
Minden válasz tartalmazza a korlátok fejléceit:
X-RateLimit-Limit: 500
X-RateLimit-Remaining: 487
X-RateLimit-Reset: 1710374400
Hibaválaszok
Az API standard HTTP státuszkódokat használ, leíró hibaüzenetekkel.
{
"error": {
"code": "rate_limit_exceeded",
"message": "A napi kéréskorlát (500) túllépve. 00:00 UTC-kor áll vissza.",
"status": 429
}
}
| Státuszkód | Jelentés |
|---|---|
| 200 | Siker |
| 400 | Hibás kérés (érvénytelen paraméterek) |
| 401 | Jogosulatlan (érvénytelen vagy hiányzó API kulcs) |
| 404 | Élelmiszer nem található |
| 429 | Kéréskorlát túllépve |
| 500 | Belső szerverhiba |
Implementálj exponenciális visszavonást a 429-es és 500-as válaszok esetén. Egy egyszerű stratégia, hogy az első hiba után 1 másodpercet vársz, a második után 2 másodpercet, a harmadik után 4 másodpercet, maximum 60 másodpercig.
Használati Esetek és Megvalósítási Minták
Étkezés Tervező Alkalmazások
Építs egy étkezés-tervezőt, amely eléri a célzott makrókat az élelmiszerek keresésével, a táplálkozási összesítések kiszámításával, és iterálva, amíg az étkezési terv megfelel a felhasználó céljainak.
def find_foods_for_target(target_protein, target_calories):
"""Keresd meg a fehérjében gazdag élelmiszereket a kalóriakeretben."""
response = requests.get(
f"{BASE_URL}/foods/search",
headers={"X-Api-Key": API_KEY},
params={
"query": "high protein",
"limit": 20,
"type": "common"
}
)
foods = response.json()["foods"]
# Szűrés fehérje-kalória arány szerint
efficient_foods = [
f for f in foods
if f["protein_g"] / max(f["calories"], 1) > 0.15
]
return sorted(efficient_foods, key=lambda f: f["protein_g"], reverse=True)
Fitnesz Alkalmazás Integráció
Párosítsd az aktivitási adatokkal, hogy megmutasd a felhasználóknak a kalóriaegyenlegüket. Használj természetes nyelvi végpontot a gyors naplózáshoz.
async function logMealFromText(description) {
const response = await fetch(`${BASE_URL}/foods/analyze`, {
method: "POST",
headers: {
"X-Api-Key": API_KEY,
"Content-Type": "application/json"
},
body: JSON.stringify({ query: description })
});
const data = await response.json();
// Tárold az adatbázisodban
await db.meals.insert({
user_id: currentUser.id,
items: data.items,
total_calories: data.total.calories,
total_protein: data.total.protein_g,
timestamp: new Date()
});
return data;
}
Recept Táplálkozási Kalkulátor
Számítsd ki egy recept táplálkozási tartalmát az összes összetevő keresésével és az értékek összegzésével.
def analyze_recipe(ingredients):
"""
ingredients: list of strings like ["200g chicken breast", "1 cup brown rice", "2 tbsp olive oil"]
"""
recipe_nutrition = {"calories": 0, "protein_g": 0, "carbohydrates_g": 0, "fat_g": 0}
for ingredient in ingredients:
response = requests.post(
f"{BASE_URL}/foods/analyze",
headers={
"X-Api-Key": API_KEY,
"Content-Type": "application/json"
},
json={"query": ingredient}
)
data = response.json()
for item in data["items"]:
recipe_nutrition["calories"] += item["calories"]
recipe_nutrition["protein_g"] += item["protein_g"]
recipe_nutrition["carbohydrates_g"] += item["carbohydrates_g"]
recipe_nutrition["fat_g"] += item["fat_g"]
return recipe_nutrition
# Példa használat
recipe = analyze_recipe([
"200g csirkemell",
"1 csésze barna rizs főzve",
"2 evőkanál olívaolaj",
"1 csésze párolt brokkoli"
])
print(f"Recept összesen: {recipe['calories']} kcal, {recipe['protein_g']}g fehérje")
Kutatás és Adat Elemzés
Akadémiai kutatásokhoz használd az API-t, hogy táplálkozási profilokat építs a vizsgálati populációk számára, vagy érvényesítsd a táplálkozási értékelési eszközöket.
import pandas as pd
def build_nutrition_profile(food_log_df):
"""
food_log_df: DataFrame with columns ['food_description', 'date']
Visszaadja a DataFrame-et, amely tartalmazza az egyes bejegyzések teljes táplálkozási bontását.
"""
results = []
for _, row in food_log_df.iterrows():
response = requests.post(
f"{BASE_URL}/foods/analyze",
headers={
"X-Api-Key": API_KEY,
"Content-Type": "application/json"
},
json={"query": row["food_description"]}
)
data = response.json()
results.append({
"date": row["date"],
"description": row["food_description"],
"calories": data["total"]["calories"],
"protein_g": data["total"]["protein_g"],
"carbs_g": data["total"]["carbohydrates_g"],
"fat_g": data["total"]["fat_g"]
})
return pd.DataFrame(results)
Összehasonlítás Alternatív API-kkal
USDA FoodData Central API
Az USDA API teljesen ingyenes, nincs fizetős szintje, így ez a legjobb választás akadémiai és kormányzati projektekhez. Körülbelül 370,000 élelmiszert fed le az Alap, SR Legacy, Felmérés (FNDDS) és Márkás adatbázisokból. Erőssége, hogy az Egyesült Államok élelmiszer-összetételi adatainak aranyszabványa, amelyre más adatbázisok hivatkoznak. Korlátai közé tartozik, hogy nincs természetes nyelvi elemzés (a konkrét adatbázis kulcsokhoz kell illeszteni az élelmiszerneveket), nincs vonalkód-keresés, nincs AI-felismerés, és a márkás élelmiszeradatok következetlenségeket mutathatnak, mivel a gyártói bejelentésekre támaszkodik. Az API dokumentációja funkcionális, de nem fejlesztőbarát a modern szabványok szerint.
Legjobb: Akadémiai kutatások, kormányzati projektek, olyan alkalmazások, amelyeknek hiteles referenciaadatokra van szükségük, és rendelkeznek fejlesztői erőforrásokkal a megfeleltetési összetettség kezelésére.
Nutritionix API
A Nutritionix rendelkezik az egyik legnagyobb élelmiszeradatbázissal, erős étterem és márkás élelmiszer lefedettséggel. Természetes nyelvi végpontja érett, és jól kezeli a bonyolult lekérdezéseket. Azonban az ingyenes szint rendkívül korlátozott, napi 50 kérésre, és a fizetős tervek 299 dollártól kezdődnek, ami sok független fejlesztő és kis startup számára elérhetetlenné teszi. Az API jól dokumentált, és támogatja a szöveges és vonalkód-keresést.
Legjobb: Jól finanszírozott alkalmazások, amelyek széleskörű étteremadatokra van szükségük, és megengedhetik az árazást.
Edamam API
Az Edamam táplálkozási elemzést, recept-elemzést és élelmiszeradatbázis API-kat kínál. Az ingyenes szint napi 100 kérést biztosít, ami működőképes prototípusokhoz. Az Edamam erőssége a recept-elemzési képessége, amely képes egy teljes recept összetevőlistáját elemezni, és adagonkénti táplálkozási adatokat visszaadni. Az adatbázis körülbelül 900,000 élelmiszert fed le. Korlátai közé tartozik az adagméret adatok időnkénti következetlensége és a kevésbé intuitív fejlesztői élmény a modern API-khoz képest.
Legjobb: Recept-orientált alkalmazások, étkezés-tervező eszközök, amelyek recept szintű elemzést igényelnek.
FatSecret Platform API
A FatSecret kedvező ingyenes szintet kínál, napi 5,000 kéréssel, ami vonzóvá teszi a költségvetés-korlátozott projektek számára. A hátrány az, hogy a FatSecret márkázását és attribúcióját meg kell jeleníteni az alkalmazásban. Az adatbázis körülbelül 500,000 élelmiszert fed le, és megfelelő nemzetközi lefedettséggel bír. Az API OAuth 1.0 azonosítást használ, ami régebbi és bonyolultabb megvalósítani, mint az API kulcs vagy OAuth 2.0 megközelítések.
Legjobb: Költségvetés-korlátozott projektek, amelyek el tudják fogadni az attribúciós követelményeket és az OAuth 1.0-t.
Open Food Facts API
Az Open Food Facts egy közösség által irányított, nyílt forráskódú élelmiszeradatbázis, több mint 3 millió termékkel, főként csomagolt árukkal, vonalkód adatokkal. Teljesen ingyenes és nyílt (Open Database License). Az API egyszerű vonalkód-keresésekhez, de kevésbé strukturált táplálkozási keresési lekérdezésekhez. Az adatok minősége változó, mivel a hozzájárulások közösségi alapon történnek, bár egy közösségi ellenőrzési folyamat sok hibát kiszűr.
Legjobb: Csomagolt élelmiszerek vonalkód-ellenőrzése, olyan projektek, amelyek összhangban állnak a nyílt forráskódú elvekkel, nemzetközi csomagolt élelmiszerek lefedettsége.
API Összehasonlítás Összegzés
| Jellemző | Nutrola | USDA | Nutritionix | Edamam | FatSecret | Open Food Facts |
|---|---|---|---|---|---|---|
| Ingyenes szint napi korlát | 500 | 1,000/óra | 50 | 100 | 5,000 | Korlátlan |
| Természetes nyelvi feldolgozás | Igen | Nem | Igen | Igen | Nem | Nem |
| AI élelmiszerfelismerés | Igen (fizetős) | Nem | Nem | Nem | Nem | Nem |
| Vonalkód-keresés | Igen | Nem | Igen | Nem | Igen | Igen |
| Többnyelvű támogatás | 8 nyelv | Angol | Angol | Angol | 16 nyelv | 40+ nyelv |
| Recept-elemzés | NLP-n keresztül | Nem | Igen | Igen | Nem | Nem |
| Mikrotápanyag mélység | 30+ tápanyag | 60+ tápanyag | 20+ tápanyag | 25+ tápanyag | 15+ tápanyag | Változó |
| Azonosítás | API Kulcs | API Kulcs | API Kulcs | App ID + Kulcs | OAuth 1.0 | Nincs (opcionális) |
Legjobb Gyakorlatok Táplálkozási Alkalmazások Építéséhez
Aggresszív gyorsítótárazás
A gyakori élelmiszerek táplálkozási adatai nem változnak gyakran. Gyorsítsd meg az élelmiszer-keresési eredményeket és a táplálkozási lekérdezéseket a háttérszervereden 24-72 óráig, hogy csökkentsd az API hívásokat és javítsd a válaszidőket.
Hiányzó adatok kezelése
Nem minden élelmiszerbejegyzés rendelkezik teljes mikrotápanyag adatokkal. Tervezd meg a felhasználói felületet úgy, hogy jelezze, amikor az adatok nem állnak rendelkezésre, ahelyett, hogy nullákat mutatnál, amelyeket a felhasználók "ez az élelmiszer nulla vasat tartalmaz" értelmezhetnek.
Felhasználói bemenet érvényesítése az API hívások előtt
Vágd le a felesleges szóközöket, normalizáld az egységeket, és ellenőrizd a helyesírást az élelmiszerneveknél, mielőtt elküldenéd őket az API-nak. Egy jól megformált lekérdezés sokkal jobb eredményeket ad, mint egy elírásokkal teli.
Használj természetes nyelvi végpontot, amikor csak lehet
Ahelyett, hogy saját élelmiszerneveket elemzőt építenél, használd a /foods/analyze végpontot. Ez jobban kezeli a mennyiségeket ("2 csésze"), elkészítési módokat ("grillezett"), és összetett leírásokat ("teljes kiőrlésű pirítós vajjal") mint a legtöbb egyedi megvalósítás.
Tartsd tiszteletben a kéréskorlátokat
Implementálj megfelelő visszavonási logikát. Csoportosítsd a műveleteket, ahol csak lehet. Használj webhooks-t vagy sorokat a nagy mennyiségű műveletekhez, ahelyett, hogy szinkron API hívásokat végeznél.
Attribúció az adatforrásokhoz
Jó gyakorlat (és néha jogi követelmény az API-tól függően), hogy tüntesd fel az adatforrást. Írd ki, hogy "A táplálkozási adatokat a Nutrola biztosítja", vagy az adott API megfelelőjét.
Gyakran Ismételt Kérdések
A Nutrola API valóban ingyenes?
Igen. Az ingyenes szint napi 500 API kérést biztosít költség nélkül, hitelkártya megadása nélkül. Ez elegendő prototípusokhoz, kis alkalmazásokhoz és személyes projektekhez. Az ingyenes szint tartalmazza a szöveges keresést, az élelmiszerlekérdezést ID alapján, a vonalkód-keresést és a természetes nyelvi elemzést. Az AI élelmiszerfelismerés képekből a 29 dollártól kezdődő fizetős szinteken érhető el.
Milyen adatformátumban érkeznek a válaszok az API-tól?
Minden válasz JSON formátumban érkezik UTF-8 kódolással. A táplálkozási értékek standard egységeket használnak: kilokalóriát az energiához, grammot a makrotápanyagokhoz és rosthoz, milligrammot a nátriumhoz és a legtöbb ásványi anyaghoz, és mikrogrammot a vitaminokhoz, ahol alkalmazható.
Használhatom a Nutrola API-t kereskedelmi alkalmazásban?
Igen. Mind az ingyenes, mind a fizetős szintek kereskedelmi használatra engedélyezettek. Az ingyenes szint megköveteli a Nutrola attribúciót az alkalmazásban. A fizetős szintek közé tartoznak a fehér címkés lehetőségek, ahol nem szükséges attribúció.
Milyen gyakran frissül az élelmiszeradatbázis?
A Nutrola élelmiszeradatbázis folyamatosan frissül a márkás és étterem élelmiszerek esetében, az USDA referenciaadatokat pedig 30 napon belül szinkronizálják az USDA kiadásaival. A fő adatbázis-frissítések havonta történnek, míg az egyes élelmiszerbejegyzések naponta frissülhetnek a gyártói változások, felhasználói jelentések és új termékek bevezetése alapján.
Támogatja az API a nemzetközi élelmiszereket?
Igen. Az adatbázis több mint 50 ország élelmiszereit fedi le, a keresés 8 nyelven érhető el (angol, spanyol, német, francia, portugál, japán, koreai és kínai). A nemzetközi élelmiszerek lefedettsége a Nutrola alapvető prioritása, és az adatbázis tartalmazza a regionális ételeket, helyi márkás termékeket és konyha-specifikus elkészítési módokat, amelyek gyakran hiányoznak az Egyesült Államokra összpontosító adatbázisokból.
Használhatom az API-t mobilalkalmazásban?
Igen, de ne ágyazd be az API kulcsodat közvetlenül a mobil kliens kódba, mivel az kinyerhető az alkalmazás binárisából. Ehelyett állíts be egy könnyű háttérszervert, amely proxyzza a kéréseket a Nutrola API-hoz, és kezeli az azonosítást. Ez egy réteget is ad a gyorsítótárazáshoz és a kéréskezeléshez.
Van webhook vagy streaming lehetőség?
Jelenleg az API kérés-válasz modellen működik. A webhook támogatás az aszinkron élelmiszerfelismerési eredményekhez (nagy tétel feldolgozás esetén) a 2026-os ütemtervben szerepel. A mai napig a /v1/foods/analyze/batch végpontot használd, amely akár 20 elemet is elfogad egyetlen kérésben.
Következtetés
A táplálkozási API-k lehetővé tették a fejlesztők számára, hogy élelmiszerekkel kapcsolatos alkalmazásokat építsenek anélkül, hogy hatalmas költségekkel járó saját élelmiszeradatbázist kellene fenntartaniuk. A Nutrola API bőséges ingyenes szintet, átfogó élelmiszer lefedettséget kínál a nemzetközi konyhákban, természetes nyelvi megértést és opcionális AI élelmiszerfelismerést, így erős választás a hétvégi prototípusoktól a termelési alkalmazásokig.
A legjobb API a projektedhez a konkrét igényeidtől függ: USDA a hiteles referenciaadatokhoz, Nutritionix a mély étterem lefedettséghez, Open Food Facts a nyílt forráskódú vonalkód adatokhoz, vagy Nutrola a funkciók, pontosság és fejlesztői élmény egyensúlyához. Sok esetben a több API kombinálása adja a legjobb lefedettséget. Kezdj az ingyenes szinttel, érvényesítsd azt a használati esetedhez, és onnan skálázz.
Készen állsz a táplálkozásod nyomon követésének átalakítására?
Csatlakozz ezrekhez, akik a Nutrolával átalakították az egészségügyi útjukat!