API danych żywieniowych Nutrola: Jak programiści mogą uzyskać dostęp do naszej bazy danych żywności

Przewodnik dla programistów po API danych żywieniowych Nutrola. Dowiedz się, jak uzyskać dostęp do naszej zweryfikowanej bazy danych żywności z ponad 3 milionami wpisów, odkryj punkty końcowe, autoryzację i przykłady zastosowań w rzeczywistości.

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

Tworzysz aplikację zdrowotną, fitnessową lub związaną z żywnością? Jednym z największych wyzwań, przed którymi staniesz, jest pozyskanie danych żywieniowych. Potrzebujesz dokładnych informacji o kaloriach i makroskładnikach dla tysięcy produktów, musisz mieć dostęp do międzynarodowych produktów, a także musisz być na bieżąco, gdy producenci zmieniają swoje receptury.

Większość programistów zaczyna od pobierania danych z otwartych baz danych rządowych, takich jak USDA FoodData Central. To daje solidną podstawę, ale nie obejmuje produktów markowych z 47 krajów, posiłków w restauracjach ani tysięcy regionalnych potraw, które codziennie spożywają prawdziwi użytkownicy. Wypełnienie tych luk samodzielnie oznacza lata pracy związanej z kuracją danych.

API danych żywieniowych Nutrola daje programistom dostęp do tej samej zweryfikowanej bazy danych żywności, która zasila naszą aplikację — ponad 3 miliony wpisów, obejmujących surowe składniki, produkty markowe, posiłki w restauracjach i przepisy. Każdy wpis jest weryfikowany w ramach naszego wielowarstwowego procesu kontroli jakości, tego samego systemu, któremu zaufało ponad 2 miliony użytkowników.

Ten przewodnik zawiera wszystko, co musisz wiedzieć, aby rozpocząć budowanie z naszym API: architektura, autoryzacja, punkty końcowe, limity zapytań i przykłady kodu z rzeczywistego świata.

Przegląd API

API danych żywieniowych Nutrola to RESTful JSON API. Wysyłasz zapytania HTTP, otrzymujesz odpowiedzi JSON. Nie są wymagane żadne SDK, chociaż udostępniamy biblioteki klienckie dla Pythona, JavaScriptu i Swifta dla wygody.

Podstawowy URL

https://api.nutrola.com/v1

Wszystkie punkty końcowe są obsługiwane przez HTTPS. Zwykłe zapytania HTTP są odrzucane.

Kluczowe funkcje

Funkcja Opis
Wyszukiwanie żywności Pełnotekstowe wyszukiwanie w ponad 3M wpisach żywności z filtrowaniem według kategorii, marki i kraju
Wyszukiwanie kodów kreskowych Uzyskaj dane żywieniowe na podstawie UPC, EAN lub innych formatów kodów kreskowych
Szczegóły żywieniowe Pełny profil żywieniowy dla dowolnej żywności (ponad 70 składników odżywczych, w tym mikroskładników)
Rozmiary porcji Standardowe i alternatywne rozmiary porcji z przeliczeniami na gramy
Analiza przepisów Prześlij listę składników i uzyskaj połączone dane żywieniowe
Kategorie żywności Przeglądaj hierarchiczną taksonomię kategorii żywności
Katalog marek Wyszukuj i przeglądaj producentów żywności markowej
Autouzupełnianie Szybkie sugestie dla interfejsów wyszukiwania żywności

Format odpowiedzi

Wszystkie odpowiedzi mają spójną strukturę:

{
  "status": "success",
  "data": { },
  "meta": {
    "request_id": "req_abc123",
    "rate_limit_remaining": 245,
    "rate_limit_reset": "2026-03-10T15:00:00Z"
  }
}

Odpowiedzi o błędach zawierają kod błędu w formacie zrozumiałym dla maszyny oraz komunikat zrozumiały dla człowieka:

{
  "status": "error",
  "error": {
    "code": "FOOD_NOT_FOUND",
    "message": "Nie znaleziono wpisu żywności odpowiadającego podanemu ID.",
    "request_id": "req_xyz789"
  }
}

Autoryzacja

Wszystkie zapytania API wymagają klucza API przekazywanego w nagłówku Authorization.

Uzyskiwanie klucza API

  1. Utwórz konto dewelopera na developer.nutrola.com
  2. Przejdź do sekcji Klucze API w swoim panelu
  3. Wygeneruj nowy klucz i określ potrzebne zakresy
  4. Bezpiecznie przechowuj klucz — będzie wyświetlany tylko raz

Używanie klucza API

Dołącz klucz do każdego nagłówka zapytania:

Authorization: Bearer YOUR_API_KEY

Przykład z użyciem curl:

curl -H "Authorization: Bearer ntr_live_abc123def456" \
  https://api.nutrola.com/v1/foods/search?q=chicken+breast

Zakresy klucza API

Zakres Poziom dostępu
foods:read Wyszukiwanie i pobieranie danych o żywności (najczęściej używane)
barcodes:read Wyszukiwanie kodów kreskowych
recipes:analyze Analiza żywieniowa przepisów
brands:read Dostęp do katalogu marek
categories:read Taksonomia kategorii żywności

Klucze mogą być ograniczone do określonych funkcji. Klucz z tylko foods:read nie może uzyskać dostępu do wyszukiwania kodów kreskowych. To przestrzega zasady minimalnych uprawnień — żądaj tylko tych zakresów, których potrzebuje Twoja aplikacja.

Główne punkty końcowe

Wyszukiwanie żywności

Wyszukuj w bazie danych według nazwy, słowa kluczowego lub frazy.

GET /v1/foods/search

Parametry:

Parametr Typ Wymagany Opis
q string Tak Zapytanie wyszukiwania (np. "grillowana pierś z kurczaka")
category string Nie Filtrowanie według kategorii żywności (np. "nabiał", "warzywa")
brand string Nie Filtrowanie według nazwy marki
country string Nie Kod kraju ISO 3166-1 alpha-2 (np. "US", "DE", "JP")
verified_only boolean Nie Zwracaj tylko wpisy z zweryfikowanymi danymi źródłowymi (domyślnie: true)
page integer Nie Numer strony dla paginacji (domyślnie: 1)
per_page integer Nie Wyniki na stronę, maks. 50 (domyślnie: 20)

Przykład zapytania:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.nutrola.com/v1/foods/search?q=greek+yogurt&country=US&per_page=5"

Przykład odpowiedzi:

{
  "status": "success",
  "data": {
    "results": [
      {
        "id": "food_8f2k9d",
        "name": "Jogurt grecki, naturalny, odtłuszczony",
        "brand": null,
        "category": "nabiał",
        "country": "US",
        "verified": true,
        "source": "USDA",
        "nutrition_per_100g": {
          "calories": 59,
          "protein": 10.2,
          "carbohydrates": 3.6,
          "fat": 0.4,
          "fiber": 0,
          "sugar": 3.2,
          "sodium": 36
        },
        "default_serving": {
          "description": "1 opakowanie (170g)",
          "grams": 170
        }
      }
    ],
    "total_results": 342,
    "page": 1,
    "per_page": 5
  }
}

Uzyskaj szczegóły żywności

Pobierz pełny profil żywieniowy dla konkretnego produktu.

GET /v1/foods/{food_id}

Przykład zapytania:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.nutrola.com/v1/foods/food_8f2k9d"

Odpowiedź szczegółowa zawiera pełny podział składników odżywczych — ponad 70 składników, w tym wszystkie witaminy, minerały, aminokwasy i profile kwasów tłuszczowych. Zawiera również wszystkie dostępne rozmiary porcji i ich odpowiedniki w gramach.

Częściowa odpowiedź (kluczowe składniki):

{
  "status": "success",
  "data": {
    "id": "food_8f2k9d",
    "name": "Jogurt grecki, naturalny, odtłuszczony",
    "nutrition_per_100g": {
      "calories": 59,
      "protein": 10.2,
      "carbohydrates": 3.6,
      "fat": 0.4,
      "fiber": 0,
      "sugar": 3.2,
      "saturated_fat": 0.1,
      "monounsaturated_fat": 0.1,
      "polyunsaturated_fat": 0,
      "cholesterol": 5,
      "sodium": 36,
      "potassium": 141,
      "calcium": 110,
      "iron": 0.1,
      "vitamin_a": 4,
      "vitamin_c": 0,
      "vitamin_d": 0
    },
    "serving_sizes": [
      { "description": "1 opakowanie (170g)", "grams": 170 },
      { "description": "1 szklanka (245g)", "grams": 245 },
      { "description": "1 łyżka (15g)", "grams": 15 },
      { "description": "100g", "grams": 100 }
    ],
    "allergens": ["mleko"],
    "source": "USDA",
    "source_id": "170903",
    "last_verified": "2026-02-15",
    "confidence_score": 0.98
  }
}

Wyszukiwanie kodów kreskowych

Wyszukaj produkt żywnościowy na podstawie jego kodu kreskowego.

GET /v1/barcodes/{barcode}

Obsługiwane formaty: UPC-A, UPC-E, EAN-13, EAN-8

Przykład zapytania:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.nutrola.com/v1/barcodes/0049000006346"

Odpowiedź zwraca ten sam obiekt szczegółów żywności co punkt końcowy /foods/{food_id}, z dodatkowymi polami specyficznymi dla kodu kreskowego, takimi jak barcode_format i regional_variants (tablica identyfikatorów żywności dla tego samego produktu w różnych krajach, które mogą mieć różne formuły).

Analiza przepisów

Prześlij listę składników i otrzymaj połączony podział żywieniowy.

POST /v1/recipes/analyze

Treść żądania:

{
  "name": "Owsianka na noc",
  "servings": 2,
  "ingredients": [
    { "food_id": "food_3k8m2n", "grams": 160 },
    { "food_id": "food_9p4q7r", "grams": 400 },
    { "food_id": "food_1a5b8c", "grams": 60 },
    { "food_id": "food_6d2e9f", "grams": 2, "description": "szczypta soli" }
  ]
}

Możesz również przesłać składniki jako tekst do automatycznego przetwarzania:

{
  "name": "Owsianka na noc",
  "servings": 2,
  "ingredients_text": "160g płatków owsianych, 400ml mleka pełnotłustego, 60g masła orzechowego, szczypta soli"
}

Odpowiedź:

{
  "status": "success",
  "data": {
    "name": "Owsianka na noc",
    "servings": 2,
    "nutrition_per_serving": {
      "calories": 425,
      "protein": 18.5,
      "carbohydrates": 42.3,
      "fat": 21.2,
      "fiber": 5.8
    },
    "nutrition_total": {
      "calories": 850,
      "protein": 37.0,
      "carbohydrates": 84.6,
      "fat": 42.4,
      "fiber": 11.6
    },
    "ingredients_matched": [
      { "input": "160g płatków owsianych", "matched_food": "food_3k8m2n", "confidence": 0.97 },
      { "input": "400ml mleka pełnotłustego", "matched_food": "food_9p4q7r", "confidence": 0.99 },
      { "input": "60g masła orzechowego", "matched_food": "food_1a5b8c", "confidence": 0.96 },
      { "input": "szczypta soli", "matched_food": "food_6d2e9f", "confidence": 0.88 }
    ]
  }
}

Autouzupełnianie

Szybkie sugestie dla budowy interfejsów wyszukiwania.

GET /v1/foods/autocomplete?q={query}

Parametry:

Parametr Typ Wymagany Opis
q string Tak Częściowe zapytanie wyszukiwania (minimum 2 znaki)
limit integer Nie Maksymalna liczba wyników, 1-10 (domyślnie: 5)
country string Nie Priorytetowe wyniki z tego kraju

Czasy odpowiedzi są zoptymalizowane do interaktywnego użytku — zazwyczaj poniżej 50 ms. Punkt końcowy autouzupełniania zwraca uproszczone obiekty żywności (ID, nazwa, marka i kategoria) dla szybkiego renderowania.

Limity zapytań i ceny

Darmowy poziom

Darmowy poziom jest zaprojektowany do rozwoju, testowania i małych aplikacji:

Limit Wartość
Zapytania dziennie 500
Zapytania na minutę 30
Wyniki wyszukiwania żywności na zapytanie 20
Analiza przepisów dziennie 10
Wyszukiwania kodów kreskowych dziennie 100

Poziom wzrostu

Dla aplikacji produkcyjnych z umiarkowanym ruchem:

Limit Wartość
Zapytania dziennie 25,000
Zapytania na minutę 300
Wyniki wyszukiwania żywności na zapytanie 50
Analiza przepisów dziennie 500
Wyszukiwania kodów kreskowych dziennie 5,000
Cena 49 USD/miesiąc

Poziom przedsiębiorstwa

Dla aplikacji o dużym ruchu, rozwiązań białej etykiety i niestandardowych wymagań:

Funkcja Szczegóły
Zapytania dziennie Niestandardowe (zwykle 100K+)
Limity zapytań Niestandardowe
Dedykowane wsparcie Wliczone
SLA Gwarancja dostępności 99.9%
Niestandardowe eksporty danych Dostępne
Powiadomienia webhook Dostępne dla aktualizacji danych
Cena Skontaktuj się z działem sprzedaży

Informacje o limitach zapytań są zawarte w każdej odpowiedzi API w obiekcie meta oraz w nagłówkach odpowiedzi HTTP (X-RateLimit-Remaining, X-RateLimit-Reset).

Przykłady zastosowań w rzeczywistości

Aplikacje fitness i treningowe

Jeśli tworzysz aplikację fitness i chcesz dodać śledzenie żywności bez budowania bazy danych żywności od podstaw, API Nutrola to najszybsza droga. Użyj punktów końcowych wyszukiwania żywności i kodów kreskowych, aby umożliwić użytkownikom rejestrowanie posiłków, a punkt końcowy analizy przepisów do niestandardowych wpisów posiłków.

Platformy planowania posiłków

Aplikacje do planowania posiłków potrzebują dokładnych danych żywieniowych, aby generować plany, które osiągają określone cele makroskładników. Szczegółowy podział składników odżywczych API (ponad 70 składników) umożliwia precyzyjną optymalizację planów posiłków, nie tylko pod względem kalorii i makroskładników, ale także mikroskładników, alergenów i zgodności z ograniczeniami dietetycznymi.

Opieka zdrowotna i telemedycyna

Platformy zdrowotne, które monitorują żywienie pacjentów, mogą integrować się z API, aby zapewnić dokładne rejestrowanie żywności w ramach istniejących interfejsów. Zweryfikowane źródła danych (USDA, EFSA, bezpośrednio od producentów) spełniają standardy dokładności wymagane do monitorowania żywienia klinicznego.

Restauracje i usługi gastronomiczne

Platformy zamówień w restauracjach mogą korzystać z API, aby wyświetlać informacje żywieniowe dla pozycji w menu. Punkt końcowy analizy przepisów jest szczególnie przydatny w tym przypadku — prześlij składniki dania i uzyskaj pełny podział żywieniowy bez ręcznego obliczania każdego składnika.

Badania i akademia

Badacze żywienia mogą korzystać z API, aby ustandaryzować kodowanie żywności w badaniach dietetycznych. Spójne, zweryfikowane dane redukują błąd pomiarowy, który dotyka badania polegające na danych żywieniowych zgłaszanych przez uczestników.

Przykłady kodu

Python: Wyszukiwanie żywności i uzyskiwanie szczegółów żywieniowych

import requests

API_KEY = "ntr_live_your_key_here"
BASE_URL = "https://api.nutrola.com/v1"

headers = {
    "Authorization": f"Bearer {API_KEY}"
}

# Wyszukiwanie żywności
search_response = requests.get(
    f"{BASE_URL}/foods/search",
    headers=headers,
    params={"q": "grillowana pierś z kurczaka", "per_page": 3}
)

results = search_response.json()["data"]["results"]

for food in results:
    print(f"{food['name']} - {food['nutrition_per_100g']['calories']} cal/100g")

# Uzyskaj pełne szczegóły dla pierwszego wyniku
food_id = results[0]["id"]
detail_response = requests.get(
    f"{BASE_URL}/foods/{food_id}",
    headers=headers
)

food_detail = detail_response.json()["data"]
nutrition = food_detail["nutrition_per_100g"]

print(f"\n{food_detail['name']}")
print(f"Kalorie: {nutrition['calories']}")
print(f"Białko: {nutrition['protein']}g")
print(f"Węglowodany: {nutrition['carbohydrates']}g")
print(f"Tłuszcz: {nutrition['fat']}g")
print(f"Rozmiary porcji: {food_detail['serving_sizes']}")

JavaScript: Integracja skanowania kodów kreskowych

const API_KEY = "ntr_live_your_key_here";
const BASE_URL = "https://api.nutrola.com/v1";

async function lookupBarcode(barcode) {
  const response = await fetch(
    `${BASE_URL}/barcodes/${barcode}`,
    {
      headers: {
        "Authorization": `Bearer ${API_KEY}`
      }
    }
  );

  if (!response.ok) {
    if (response.status === 404) {
      console.log("Produkt nie znaleziony w bazie danych");
      return null;
    }
    throw new Error(`Błąd API: ${response.status}`);
  }

  const data = await response.json();
  return data.data;
}

// Przykład użycia
const product = await lookupBarcode("0049000006346");

if (product) {
  const serving = product.default_serving;
  const factor = serving.grams / 100;

  console.log(`${product.name} (${product.brand})`);
  console.log(`Na ${serving.description}:`);
  console.log(`  Kalorie: ${Math.round(product.nutrition_per_100g.calories * factor)}`);
  console.log(`  Białko: ${(product.nutrition_per_100g.protein * factor).toFixed(1)}g`);
  console.log(`  Węglowodany: ${(product.nutrition_per_100g.carbohydrates * factor).toFixed(1)}g`);
  console.log(`  Tłuszcz: ${(product.nutrition_per_100g.fat * factor).toFixed(1)}g`);
}

Swift: Budowanie pola wyszukiwania z autouzupełnianiem

import Foundation

class Nutrola API {
    private let apiKey: String
    private let baseURL = "https://api.nutrola.com/v1"

    init(apiKey: String) {
        self.apiKey = apiKey
    }

    func autocomplete(query: String, limit: Int = 5) async throws -> [FoodSuggestion] {
        guard query.count >= 2 else { return [] }

        var components = URLComponents(string: "\(baseURL)/foods/autocomplete")!
        components.queryItems = [
            URLQueryItem(name: "q", value: query),
            URLQueryItem(name: "limit", value: String(limit))
        ]

        var request = URLRequest(url: components.url!)
        request.setValue("Bearer \(apiKey)", forHTTPHeaderField: "Authorization")

        let (data, _) = try await URLSession.shared.data(for: request)
        let response = try JSONDecoder().decode(AutocompleteResponse.self, from: data)
        return response.data.suggestions
    }
}

struct FoodSuggestion: Codable {
    let id: String
    let name: String
    let brand: String?
    let category: String
}

struct AutocompleteResponse: Codable {
    let status: String
    let data: AutocompleteData
}

struct AutocompleteData: Codable {
    let suggestions: [FoodSuggestion]
}

Najlepsze praktyki obsługi błędów

API używa standardowych kodów statusu HTTP:

Kod statusu Znaczenie Typowe przyczyny
200 Sukces Żądanie zakończone normalnie
400 Złe żądanie Brak wymaganego parametru lub nieprawidłowa wartość
401 Nieautoryzowany Nieprawidłowy lub brakujący klucz API
403 Zabronione Klucz API nie ma wymaganych uprawnień
404 Nie znaleziono ID żywności lub kod kreskowy nie znajduje się w bazie danych
429 Ograniczenie zapytań Zbyt wiele zapytań; sprawdź nagłówki limitów zapytań
500 Błąd serwera Wewnętrzny błąd; spróbuj ponownie z opóźnieniem wykładniczym

Gdy otrzymasz odpowiedź 429, nagłówek Retry-After informuje, ile sekund należy poczekać przed ponownym spróbowaniem. Zdecydowanie zaleca się wdrożenie opóźnienia wykładniczego dla odpowiedzi 429 i 500 w aplikacjach produkcyjnych.

Świeżość danych i aktualizacje

Baza danych Nutrola jest ciągle aktualizowana. Wpisy produktów markowych są odświeżane, gdy producenci zgłaszają zmiany, zazwyczaj w ciągu 48 godzin. Wpisy z rządowych baz danych są synchronizowane co kwartał, gdy publikowane są nowe wersje.

Jeśli Twoja aplikacja buforuje odpowiedzi API (co zalecamy dla wydajności), sugerujemy czas życia bufora (TTL) wynoszący 24 godziny dla odpowiedzi dotyczących szczegółów żywności i 1 godzinę dla wyników wyszukiwania. Pole last_verified w odpowiedziach dotyczących szczegółów żywności informuje, kiedy wpis został ostatnio potwierdzony jako dokładny.

Dla klientów korporacyjnych oferujemy powiadomienia webhook, gdy wpisy żywności są aktualizowane, dzięki czemu Twoja aplikacja może proaktywnie unieważnić buforowane dane, zamiast czekać na wygaśnięcie TTL bufora.

Jak zacząć

  1. Zarejestruj się na developer.nutrola.com — zajmuje to mniej niż minutę
  2. Wygeneruj klucz API z wymaganymi zakresami
  3. Zrób swoje pierwsze zapytanie korzystając z powyższych przykładów curl
  4. Zbadaj interaktywne dokumenty na developer.nutrola.com/docs, gdzie możesz testować punkty końcowe bezpośrednio w przeglądarce
  5. Dołącz do społeczności deweloperów na naszym serwerze Discord, aby uzyskać wsparcie, zgłaszać prośby o funkcje i zobaczyć, co budują inni programiści

Jeśli masz pytania, napotkałeś problemy lub chcesz omówić integrację korporacyjną, skontaktuj się z naszym zespołem ds. relacji z deweloperami pod adresem api@nutrola.com.

FAQ

Czy API Nutrola jest darmowe w użyciu?

Tak, istnieje darmowy poziom, który obejmuje 500 zapytań dziennie. Jest to odpowiednie do rozwoju, testowania i małych aplikacji. Dla aplikacji produkcyjnych z wyższym ruchem, poziom wzrostu zaczyna się od 49 USD miesięcznie z 25,000 zapytań dziennie. Plany dla przedsiębiorstw z niestandardowymi limitami są dostępne dla przypadków użycia o dużym ruchu.

Jakie formaty danych obsługuje API?

API używa wyłącznie JSON zarówno dla żądań, jak i odpowiedzi. Wszystkie punkty końcowe akceptują standardowe parametry zapytania dla żądań GET oraz ciała żądań JSON dla żądań POST. Kodowanie odpowiedzi to UTF-8, co prawidłowo obsługuje nazwy żywności we wszystkich obsługiwanych językach.

Jak dokładne są dane żywieniowe dostarczane przez API?

Każdy wpis w bazie danych Nutrola przechodzi przez wielowarstwowy proces weryfikacji, w tym walidację źródeł rządowych, krzyżowe sprawdzanie danych producentów, statystyczne sprawdzanie wspomagane przez AI oraz przegląd przez ekspertów. Nasza norma dokładności wynosi 97,4% w porównaniu do analizy laboratoryjnej, w porównaniu do średniej branżowej wynoszącej 70-85% dla baz danych opartych na crowdsourcingu. Każdy wpis żywności zawiera pole confidence_score, które wskazuje nasz poziom pewności.

Czy mogę użyć API do budowy produktu komercyjnego?

Tak. API jest zaprojektowane do użytku komercyjnego. Darmowy poziom może być używany do produktów komercyjnych w ramach jego limitów. Plany wzrostu i przedsiębiorstwa obejmują prawa do użytku komercyjnego bez ograniczeń co do rodzaju aplikacji. Zapoznaj się z warunkami korzystania z usług na developer.nutrola.com, aby uzyskać pełne szczegóły.

Czy API obsługuje żywność spoza Stanów Zjednoczonych?

Tak. Baza danych obejmuje produkty markowe z 47 krajów oraz ogólne produkty z ponad 120 kuchni. Użyj parametru country w punktach końcowych wyszukiwania, aby priorytetowo traktować wyniki z konkretnego rynku. Wyszukiwania kodów kreskowych automatycznie dopasowują produkt do odpowiedniej formuły regionalnej.

Jak obsługiwać żywność, która nie znajduje się w bazie danych?

Jeśli wyszukiwanie kodu kreskowego zwraca 404, możesz przejść do wyszukiwania tekstowego za pomocą nazwy produktu. Jeśli żadna z metod nie znajdzie żywności, możesz zgłosić ją do dodania przez portal dewelopera. Żywność zgłoszona przez partnerów API jest priorytetowo weryfikowana i zazwyczaj dodawana w ciągu 72 godzin. Klienci korporacyjni mogą żądać masowych dodatków dla dużych katalogów produktów.

Czy są dostępne SDK lub biblioteki klienckie?

Udostępniamy oficjalne biblioteki klienckie dla Pythona (przez pip: pip install nutrola), JavaScript/TypeScript (przez npm: npm install @nutrola/api) oraz Swifta (przez Swift Package Manager). Te biblioteki obsługują autoryzację, ograniczenia zapytań, ponowne próby i analizę odpowiedzi. Wspierane przez społeczność biblioteki są dostępne dla Go, Ruby i PHP.

Gotowy, aby przeksztalcic sledzenie zywienia?

Dolacz do tysiecy osob, ktore przeksztalcily swoja podroz zdrowotna z Nutrola!