Geliştiriciler için Ücretsiz Beslenme API'si: Nutrola'nın Gıda Verileriyle Uygulama Geliştirme

Nutrola'nın ücretsiz beslenme API'si ile beslenme odaklı uygulamalar geliştirmek için bir geliştirici kılavuzu. Uç noktaları, kimlik doğrulama, Python, JavaScript ve cURL'deki kod örnekleri, oran limitleri ve Nutritionix, Edamam ve USDA API'leri ile karşılaştırmalar içerir.

Medically reviewed by Dr. Emily Torres, Registered Dietitian Nutritionist (RDN)

Beslenme odaklı bir uygulama geliştirmek, geçmişte kendi gıda veritabanınızı sıfırdan oluşturmayı, pahalı veri setlerini lisanslamayı veya güvenilir olmayan kaynaklardan veri toplamayı gerektiriyordu. Bugün, beslenme API'leri, makro besin, mikro besin ve porsiyon boyutu verilerini temiz JSON formatında sunarak kapsamlı gıda veritabanlarına yapılandırılmış, programatik erişim sağlıyor. Bu kılavuz, geliştiricilerin beslenme API'leri dünyasına adım atmalarına yardımcı olurken, Nutrola'nın ücretsiz katmanıyla nasıl başlayacaklarına ve alternatifleriyle nasıl karşılaştırıldığına odaklanıyor.

İster bir yemek planlama uygulaması, ister bir fitness takipçisi, ister bir araştırma aracı, ister bir tarif analizörü ya da beslenme sorularını yanıtlayan bir yapay zeka asistanı oluşturuyor olun, bu kılavuz size bir API seçmek ve dakikalar içinde istek göndermeye başlamak için gerekli teknik detayları sunuyor.

Beslenme API'leri Genel Görünümü

Uygulama geliştirmeye başlamadan önce, 2026 yılında geliştiricilere sunulan ana beslenme API'lerinin karşılaştırması aşağıda yer almaktadır.

API Ücretsiz Katman Oran Limiti (Ücretsiz) Veritabanındaki Gıdalar Barkod Tarama Gıda Tanıma (AI) Fiyatlandırma (Ücretli)
Nutrola API Evet 500 istek/gün 900,000+ Evet Evet (ek özellik) Aylık 29$'dan itibaren
USDA FoodData Central Evet (tamamen ücretsiz) 1,000/saat anahtar başına 370,000+ Hayır Hayır Ücretsiz
Nutritionix API Evet (sınırlı) 50 istek/gün 1,000,000+ Evet Hayır Aylık 299$'dan itibaren
Edamam API Evet 100 istek/gün 900,000+ Hayır Hayır Aylık 19$'dan itibaren
FatSecret Platform API Evet 5,000 istek/gün 500,000+ Evet Hayır Atıf ile ücretsiz
Open Food Facts API Evet (tamamen ücretsiz) Makul kullanım 3,000,000+ Evet Hayır Ücretsiz
Spoonacular Evet 150 istek/gün 500,000+ Hayır Hayır Aylık 29$'dan itibaren

Nutrola API ile Başlarken

Adım 1: Geliştirici Hesabı Oluşturun

Nutrola Geliştirici Portalı'na giderek developers.nutrola.com adresinden ücretsiz bir hesap oluşturun. E-posta doğrulamasından sonra, kontrol panelinizde bir API anahtarı alacaksınız. Ücretsiz katman, günde 500 istek, tam gıda veritabanına erişim ve metin tabanlı gıda arama içerir. AI gıda tanıma uç noktaları, ücretli katmanlarda mevcuttur.

Adım 2: Kimlik Doğrulama

Tüm API istekleri, istek başlığında API anahtarınızı gerektirir. Anahtar, X-Api-Key başlığı aracılığıyla iletilir.

X-Api-Key: your_api_key_here

API yalnızca HTTPS kullanır. HTTP uç noktalarına yapılan tüm istekler, HTTPS'ye 301 yönlendirmesi alır. API anahtarınızı istemci tarafı koduna gömmeyin; her zaman istekleri arka uç sunucunuz üzerinden yönlendirin.

Adım 3: Temel URL

Tüm uç noktalar şu adresten sunulmaktadır:

https://api.nutrola.com/v1/

Yanıtlar JSON formatında ve UTF-8 kodlamasıyla gelir. API, standart HTTP durum kodları ile RESTful kurallarına uyar.

Temel Uç Noktalar

Gıdaları Ara

Gıda veritabanında metin sorgusuyla arama yapın. Besin verileri ile eşleşen gıdaları döner.

Uç Nokta: GET /v1/foods/search

Parametreler:

Parametre Tür Gerekli Açıklama
query string Evet Arama terimi (örn. "ızgara tavuk göğsü")
limit integer Hayır Sayfa başına sonuç sayısı (varsayılan: 10, maksimum: 50)
offset integer Hayır Sayfalama ofseti (varsayılan: 0)
type string Hayır Türüne göre filtreleme: "common", "branded", "restaurant"
language string Hayır Dil kodu (varsayılan: "en"). Destekler: en, es, de, fr, pt, ja, ko, zh

Örnek İstek (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"

Örnek İstek (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']}")

Örnek İstek (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}`);
  });
});

Örnek Yanıt:

{
  "foods": [
    {
      "id": "nf_001234",
      "name": "Chicken Breast, Grilled, Skinless",
      "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 grams",
      "alt_servings": [
        {
          "description": "1 medium breast (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
}

Gıda ID'si ile Getir

Belirli bir gıda maddesinin Nutrola ID'si ile detaylı besin verilerini alın.

Uç Nokta: GET /v1/foods/{food_id}

Örnek (cURL):

curl -X GET "https://api.nutrola.com/v1/foods/nf_001234" \
  -H "X-Api-Key: your_api_key_here"

Yanıt, tam makro ve mikro besin profili (30+ besin maddesi), mevcut tüm porsiyon boyutları, içerik listesi (markalı ve restoran ürünleri için), alerjen bayrakları, diyet etiketleri (vegan, glütensiz, helal, koçer) ve kaynak atıfı içerir.

Barkod ile Gıda Getir

Bir paketlenmiş gıda ürününü UPC veya EAN barkodu ile arayın.

Uç Nokta: GET /v1/foods/barcode/{code}

Parametreler:

Parametre Tür Gerekli Açıklama
code string Evet UPC (12 haneli) veya EAN (13 haneli) barkodu

Örnek (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']}")

Doğal Dil Girişi Analizi

Doğal dildeki bir gıda tanımını ayrıştırın ve yapılandırılmış besin verilerini döndürün. Bu uç nokta, miktarları, birimleri, hazırlama yöntemlerini ve tek bir dizedeki birden fazla öğeyi işler.

Uç Nokta: POST /v1/foods/analyze

İstek Gövdesi:

{
  "query": "2 scrambled eggs with a slice of whole wheat toast and half an avocado",
  "language": "en"
}

Örnek (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"Toplam: {result['total']['calories']} kcal")

Örnek Yanıt:

{
  "items": [
    {
      "name": "Scrambled Eggs",
      "quantity": 2,
      "unit": "large",
      "calories": 182,
      "protein_g": 12.2,
      "carbohydrates_g": 2.4,
      "fat_g": 13.6,
      "food_id": "nf_002891"
    },
    {
      "name": "Whole Wheat Toast",
      "quantity": 1,
      "unit": "slice",
      "calories": 81,
      "protein_g": 3.9,
      "carbohydrates_g": 13.8,
      "fat_g": 1.1,
      "food_id": "nf_003401"
    },
    {
      "name": "Avocado",
      "quantity": 0.5,
      "unit": "medium",
      "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 Gıda Tanıma (Ücretli Katman)

Bir gıda fotoğrafını AI destekli tanıma ve besin analizi için gönderin.

Uç Nokta: POST /v1/foods/recognize

İstek: Görüntü dosyası ile çok parçalı form verisi veya base64 kodlu bir görüntü ile JSON gövdesi.

Örnek (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")

Yanıt, güven puanları ile tespit edilen gıda maddelerini, sınırlı alan koordinatlarını, tahmini porsiyon boyutlarını, her bir öğenin besin analizini ve toplam yemek besin özetini içerir.

Oran Limitleri ve Hata Yönetimi

Katmana Göre Oran Limitleri

Katman Günlük İstekler İstek/Saniye AI Tanıma Fiyat
Ücretsiz 500 5 Dahil değil 0$
Başlangıç 5,000 10 100/gün Aylık 29$
Pro 50,000 25 1,000/gün Aylık 99$
Kurumsal Özel Özel Özel Satış ile iletişime geçin

Oran Limiti Başlıkları

Her yanıt, oran limiti başlıklarını içerir:

X-RateLimit-Limit: 500
X-RateLimit-Remaining: 487
X-RateLimit-Reset: 1710374400

Hata Yanıtları

API, açıklayıcı hata gövdeleri ile standart HTTP durum kodlarını kullanır.

{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Günlük istek limiti 500 aşıldı. 00:00 UTC'de sıfırlanır.",
    "status": 429
  }
}
Durum Kodu Anlamı
200 Başarılı
400 Geçersiz istek (geçersiz parametreler)
401 Yetkisiz (geçersiz veya eksik API anahtarı)
404 Gıda bulunamadı
429 Oran limiti aşıldı
500 Sunucu hatası

429 ve 500 yanıtları için üstel geri dönüşüm uygulayın. Basit bir strateji, ilk hatadan sonra 1 saniye, ikinci hatadan sonra 2 saniye, üçüncü hatadan sonra 4 saniye beklemektir; maksimum 60 saniyeye kadar.

Kullanım Senaryoları ve Uygulama Desenleri

Yemek Planlama Uygulamaları

Hedef makrolara ulaşan bir yemek planlayıcı oluşturun; gıdaları arayın, besin toplamlarını hesaplayın ve yemek planı kullanıcının hedeflerine ulaşana kadar yineleyin.

def find_foods_for_target(target_protein, target_calories):
    """Kalori bütçesi içinde protein açısından zengin gıdaları bul."""
    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"]
    # Protein-kalori oranına göre filtrele
    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)

Fitness Uygulaması Entegrasyonu

Kullanıcılara kalori dengelerini göstermek için aktivite verileri ile eşleştirin. Hızlı kayıt için doğal dil uç noktasını kullanın.

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();

  // Veritabanınıza kaydedin
  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;
}

Tarif Besin Hesaplayıcı

Her bir bileşeni arayarak bir tarifin besin içeriğini hesaplayın ve değerleri toplayın.

def analyze_recipe(ingredients):
    """
    ingredients: ["200g chicken breast", "1 cup brown rice", "2 tbsp olive oil"] gibi bir dizi
    """
    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

# Örnek kullanım
recipe = analyze_recipe([
    "200g chicken breast",
    "1 cup brown rice cooked",
    "2 tablespoons olive oil",
    "1 cup steamed broccoli"
])
print(f"Tarif toplamı: {recipe['calories']} kcal, {recipe['protein_g']}g protein")

Araştırma ve Veri Analizi

Akademik araştırmalar için, API'yi kullanarak çalışma popülasyonları için besin profilleri oluşturun veya diyet değerlendirme araçlarını doğrulayın.

import pandas as pd

def build_nutrition_profile(food_log_df):
    """
    food_log_df: ['food_description', 'date'] sütunlarına sahip bir DataFrame
    Her giriş için tam besin ayrıntıları içeren bir DataFrame döndürür.
    """
    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)

Alternatif API'lerle Karşılaştırma

USDA FoodData Central API

USDA API'si tamamen ücretsizdir ve hiç ücretli katman sunmaz, bu nedenle akademik ve devlet projeleri için varsayılan seçimdir. Temel, SR Legacy, Anket (FNDDS) ve Markalı veritabanları arasında yaklaşık 370,000 gıda kapsamaktadır. Güçlü yönleri, ABD gıda kompozisyon verileri için altın standart olması ve diğer veritabanlarının referans aldığı otoritedir. Sınırlamaları arasında doğal dil ayrıştırma olmaması (gıda isimlerini belirli veritabanı anahtarlarıyla eşleştirmeniz gerekir), barkod arama olmaması, AI tanıma olmaması ve markalı gıda verilerinin tutarsız olabilmesi yer alır; çünkü bu veriler üretici bildirimlerine dayanır. API belgeleri işlevsel ama modern standartlarda geliştirici dostu değildir.

En iyi kullanım: Akademik araştırmalar, devlet projeleri, otoriter referans verilerine ihtiyaç duyan uygulamalar ve eşleştirme karmaşıklığını ele alacak geliştirici kaynakları olan projeler.

Nutritionix API

Nutritionix, restoran ve markalı gıdalar konusunda güçlü bir kapsama sahip olan en büyük gıda veritabanlarından birine sahiptir. Doğal dil uç noktası olgun ve karmaşık sorguları iyi bir şekilde işler. Ancak, ücretsiz katmanı günde yalnızca 50 istek ile son derece sınırlıdır ve ücretli planlar aylık 299$'dan başlamaktadır; bu da birçok bağımsız geliştirici ve küçük girişim için erişilemez hale getirir. API iyi belgelenmiştir ve hem metin hem de barkod arama desteği sunar.

En iyi kullanım: Geniş restoran gıda verilerine ihtiyaç duyan ve fiyatlandırmayı karşılayabilecek iyi finanse edilmiş uygulamalar.

Edamam API

Edamam, besin analizi, tarif analizi ve gıda veritabanı API'leri sunar. Ücretsiz katman, günde 100 istek sağlar ki bu da prototipleme için çalışabilir. Edamam'ın gücü, bir tarifin bileşen listesini ayrıştırabilmesi ve porsiyon başına besin verilerini döndürebilmesidir. Veritabanı yaklaşık 900,000 gıda içermektedir. Sınırlamaları arasında porsiyon boyutu verilerinde zaman zaman tutarsızlıklar ve daha yeni API'lere kıyasla daha az sezgisel bir geliştirici deneyimi bulunmaktadır.

En iyi kullanım: Tarif odaklı uygulamalar, tarif düzeyinde analiz gerektiren yemek planlama araçları.

FatSecret Platform API

FatSecret, 5,000 istek/gün ile cömert bir ücretsiz katman sunarak bootstrapped projeler için cazip hale gelir. Ancak, uygulamanızda FatSecret markasını ve atıfını göstermeniz gerekir. Veritabanı yaklaşık 500,000 gıda içerir ve makul uluslararası kapsama sahiptir. API, OAuth 1.0 kimlik doğrulamasını destekler; bu, API anahtarı veya OAuth 2.0 yaklaşımlarına göre daha eski ve uygulanması daha karmaşıktır.

En iyi kullanım: Atıf gereksinimlerini karşılayabilecek ve OAuth 1.0'ı kabul edebilecek bütçe kısıtlaması olan projeler.

Open Food Facts API

Open Food Facts, 3 milyondan fazla ürün içeren, topluluk destekli, açık kaynaklı bir gıda veritabanıdır; çoğunlukla barkod verisi olan paketlenmiş ürünlerdir. Tamamen ücretsiz ve açıktır (Açık Veritabanı Lisansı). API, barkod aramaları için basittir, ancak besin arama sorguları için daha az yapılandırılmıştır. Veri kalitesi, topluluk katkıları nedeniyle değişkenlik gösterir; ancak bir topluluk inceleme süreci birçok hatayı yakalar.

En iyi kullanım: Paketlenmiş gıda barkod taraması, açık kaynak ilkeleriyle uyumlu projeler, uluslararası paketlenmiş gıda kapsama.

API Karşılaştırma Özeti

Özellik Nutrola USDA Nutritionix Edamam FatSecret Open Food Facts
Ücretsiz katman günlük limiti 500 1,000/saat 50 100 5,000 Sınırsız
Doğal dil ayrıştırma Evet Hayır Evet Evet Hayır Hayır
AI gıda tanıma Evet (ücretli) Hayır Hayır Hayır Hayır Hayır
Barkod arama Evet Hayır Evet Hayır Evet Evet
Çok dilli destek 8 dil İngilizce İngilizce İngilizce 16 dil 40+ dil
Tarif analizi NLP ile Hayır Evet Evet Hayır Hayır
Mikro besin derinliği 30+ besin maddesi 60+ besin maddesi 20+ besin maddesi 25+ besin maddesi 15+ besin maddesi Değişken
Kimlik doğrulama API Anahtarı API Anahtarı API Anahtarı Uygulama ID + Anahtar OAuth 1.0 Yok (isteğe bağlı)

Beslenme Uygulamaları Geliştirirken En İyi Uygulamalar

Aggresif Önbellekleme

Yaygın gıdaların besin verileri sık sık değişmez. API çağrılarını azaltmak ve yanıt sürelerini iyileştirmek için gıda arama sonuçlarını ve besin sorgularını arka uçta 24 ila 72 saat boyunca önbelleğe alın.

Eksik verileri nazikçe yönetin

Her gıda kaydı tam mikro besin verilerine sahip değildir. Kullanıcıların "bu gıda sıfır demir içeriyor" şeklinde yanlış yorumlamasını önlemek için, verilerin mevcut olmadığını belirtmek için UI'nizi tasarlayın.

API çağrılarından önce kullanıcı girişini doğrulayın

API'ye göndermeden önce boşlukları kesin, birimleri normalleştirin ve gıda isimlerini yazım denetiminden geçirin. İyi biçimlendirilmiş bir sorgu, yazım hataları içeren bir sorgudan çok daha iyi sonuçlar üretir.

Mümkünse doğal dil uç noktasını kullanın

Kendi gıda adı ayrıştırıcınızı oluşturmak yerine, /foods/analyze uç noktasını kullanın. Bu uç nokta, miktarları ("2 cups"), hazırlama yöntemlerini ("grilled") ve bileşik tanımları ("whole wheat toast with butter") çoğu özel uygulamadan daha iyi işler.

Oran limitlerine saygı gösterin

Doğru geri dönüşüm mantığını uygulayın. Mümkünse toplu işlemleri kullanın. Yüksek hacimli işlemler için senkron API çağrıları yerine web kancaları veya kuyruklar kullanın.

Veri kaynaklarını atıf yapın

İyi bir uygulama (ve bazen API'ye bağlı olarak yasal bir gereklilik), veri kaynağını atıf yapmaktır. Uygulamanızda "Besin verileri Nutrola tarafından sağlanmaktadır" veya kullandığınız API için eşdeğerini gösterin.

Sıkça Sorulan Sorular

Nutrola API'si gerçekten ücretsiz mi?

Evet. Ücretsiz katman, günde 500 API isteği sunar ve kredi kartı gerektirmez. Bu, prototipleme, küçük uygulamalar ve kişisel projeler için yeterlidir. Ücretsiz katman, metin araması, ID ile gıda sorgulama, barkod tarama ve doğal dil analizi içerir. Görüntülerden AI gıda tanıma, aylık 29$'dan başlayan ücretli katmanlarda mevcuttur.

API yanıtı hangi veri formatında döner?

Tüm yanıtlar JSON formatında ve UTF-8 kodlamasıyla gelir. Besin değerleri standart birimlerde sunulur: enerji için kilokalori, makro besinler ve lif için gram, sodyum ve çoğu mineral için miligram, vitaminler için ise mikrogram.

Nutrola API'sini ticari bir uygulamada kullanabilir miyim?

Evet. Hem ücretsiz hem de ücretli katmanlar ticari kullanıma izin verir. Ücretsiz katman, uygulamanızda Nutrola atıfı gerektirir. Ücretli katmanlar, atıf gerektirmeyen beyaz etiket seçenekleri sunar.

Gıda veritabanı ne sıklıkla güncelleniyor?

Nutrola gıda veritabanı, markalı ve restoran gıdaları için sürekli güncellenir; USDA referans verileri, USDA yayınlarından 30 gün içinde senkronize edilir. Büyük veritabanı güncellemeleri aylık olarak gerçekleşirken, bireysel gıda girişleri, üretici değişiklikleri, kullanıcı tarafından bildirilen düzeltmeler ve yeni ürün lansmanlarına bağlı olarak günlük olarak güncellenebilir.

API uluslararası gıdaları destekliyor mu?

Evet. Veritabanı, 50'den fazla ülkeden gıdaları kapsar ve 8 dilde (İngilizce, İspanyolca, Almanca, Fransızca, Portekizce, Japonca, Korece ve Çince) arama imkanı sunar. Uluslararası gıda kapsama, Nutrola'nın temel önceliklerindendir ve veritabanı, ABD merkezli veritabanlarında genellikle eksik olan yerel markalı ürünler, bölgesel yemekler ve mutfak spesifik hazırlamaları içerir.

API'yi bir mobil uygulama için kullanabilir miyim?

Evet, ancak API anahtarınızı doğrudan mobil istemci koduna gömmeyin; çünkü bu, uygulama ikili dosyasından çıkarılabilir. Bunun yerine, istekleri Nutrola API'sine yönlendiren ve kimlik doğrulamasını yöneten hafif bir arka uç sunucusu kurun. Bu, önbellekleme ve istek yönetimi için de bir katman sağlar.

Webhook veya akış seçeneği var mı?

Şu anda API, istek-cevap modeliyle çalışmaktadır. Büyük toplu işlemler için asenkron gıda tanıma sonuçları için webhook desteği, 2026 için yol haritasındadır. Bugün için toplu işlemler için, tek bir istekte 20 öğeye kadar kabul eden /v1/foods/analyze/batch uç noktasını kullanın.

Sonuç

Beslenme API'leri, geliştiricilerin özel bir gıda veritabanı sürdürmenin büyük yükü olmadan gıda odaklı uygulamalar geliştirmelerini pratik hale getirmiştir. Nutrola'nın API'si, cömert bir ücretsiz katman, uluslararası mutfaklarda kapsamlı gıda kapsama, doğal dil anlama ve isteğe bağlı AI gıda tanıma sunarak, hafta sonu prototiplerinden üretim uygulamalarına kadar projeler için güçlü bir seçimdir.

Projeniz için en iyi API, belirli ihtiyaçlarınıza bağlıdır: otoriter referans verileri için USDA, derin restoran kapsama için Nutritionix, açık kaynak barkod verileri için Open Food Facts veya özellikler, doğruluk ve geliştirici deneyimi açısından dengeli bir seçenek için Nutrola. Birçok durumda, birden fazla API'yi birleştirmek en iyi kapsama sağlar. Ücretsiz katmanla başlayın, kullanım durumunuza göre doğrulayın ve oradan ölçeklendirin.

Beslenme takibinizi dönüştürmeye hazır mısınız?

Nutrola ile sağlık yolculuklarını dönüştürmüş binlerce kişiye katılın!