Die API ermöglicht den Zugriff auf Nährwertdaten von Lebensmitteln sowie deren Filterung nach verschiedenen Kriterien.
Dieser Endpunkt gibt eine Liste von Lebensmitteln zurück. Du kannst optional nach einem Suchbegriff und einer Gruppe filtern.
GET https://teitge.de/wp-json/food-api/v1/foods?search=Apfel&group=Obst
{
"id": "3",
"name": "Apfel",
"subname": "Roter Apfel",
"keywords": "Apfel, Rot",
"group": "4",
"Energie (kcal)": 52,
"Fett (g)": 0.17,
"Eiweiß (g)": 0.26,
"Kalium (mg)": 115,
"Phosphat (mg)": 20
}
Dieser Endpunkt gibt alle verfügbaren Lebensmittel-Gruppen zurück, z.B. "Obst", "Gemüse", etc.
GET https://teitge.de/wp-json/food-api/v1/groups
[
{ "id": "1", "name": "Getreideprodukte und Hülsenfrüchte", "icon": "fas fa-bread-slice" },
{ "id": "2", "name": "Getränke", "icon": "fas fa-tint" },
{ "id": "3", "name": "Gemüse", "icon": "fas fa-carrot" },
{ "id": "4", "name": "Obst", "icon": "fas fa-apple-alt" }
]
Dieser Endpunkt ermöglicht die Filterung von Lebensmitteln anhand von Eigenschaften wie "Fett", "Zucker" und weiteren Nährstoffen.
GET https://teitge.de/wp-json/food-api/v1/filter-foods?property=Fett&operator=%3E&value=10
>, <, =, >=, <=, != (z.B. "Fett > 10").
[
{ "id": "a588375e2e29bdbe796e65b4c6fad2bb", "name": "Rumkugeln", "Fett (g)": 10 },
{ "id": "94b16602e175b71b210cfcc058b32edf", "name": "Karotte", "Fett (g)": 13.7 }
]
Die API implementiert ein Rate Limiting, um eine Überlastung zu verhindern. Eine IP-Adresse darf nur maximal 100 Anfragen in 10 Minuten senden.
{
"code": "too_many_requests",
"message": "Zu viele Anfragen in kurzer Zeit. Du hast bereits 100 von 100 Anfragen gemacht. Bitte versuche es wieder in 00:02:00 Minuten."
}
Alle Endpunkte sind öffentlich zugänglich, ohne dass eine Authentifizierung erforderlich ist. Falls eine Anfrage aufgrund von Rate Limiting oder fehlenden Parametern fehlschlägt, erhalten Sie eine Fehlerantwort mit dem entsprechenden Statuscode und einer Nachricht.