Produkte suchen
Substring-Suche über Nicht-Multipack-Lebensmittel und Sportnahrungsprodukte mit nutzbaren Nährwertdaten. Sucht in Anzeigename, kanonischem Namen, Marke und EAN. Groß-/Kleinschreibung wird ignoriert. Paginiert, mit harter Obergrenze von 50 Ergebnissen pro Seite.
GET
/v1/products/searchQuery-Parameter
| Feld | Typ | Beschreibung |
|---|---|---|
| q | string | Suchbegriff. Leer oder fehlend → gibt alle öffentlichen Nicht-Multipack-Produkte mit Nährwertdaten paginiert zurück. |
| country | string | Optionaler ISO 3166-1 alpha-2 Filter für den primären Markt, zum Beispiel NL, BE, DE oder GB. |
| page | integer | Nullindizierte Seitennummer. Standard 0. |
| limit | integer | Seitengröße. Standard 20, maximal 50. |
Anfrage
curl "https://shelfbase.app/api/v1/products/search?q=whey+protein&country=NL&limit=5" \
-H "Authorization: Bearer sb_live_..."Antwort
{
"data": [
{
"ean": "8718907400435",
"name": "Optimum Nutrition Gold Standard 100% Whey, Vanilla Ice Cream, 2.27kg",
"brand": "Optimum Nutrition",
"countries": ["NL"],
"nutrition_per_100": { ... },
"ingredients": { ... },
"allergens": ["MILK", "SOY"],
"updated_at": "2026-05-10T03:12:44Z"
}
],
"total": 247,
"page": 0,
"limit": 5
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
| data | Product[] | Array von Produktdatensätzen. Gleiche Form wie die Lookup-by-EAN-Antwort. |
| total | integer | Gesamtzahl der Treffer über alle Seiten. |
| page | integer | Echo der angeforderten Seite. |
| limit | integer | Echo des angeforderten Limits (nach Kappung bei 50). |
Matching-Verhalten
- Substring-Match (keine Volltextsuche). Der angegebene Suchbegriff muss als Textfragment in mindestens einem der durchsuchten Felder vorkommen.
- Groß-/Kleinschreibung wird in allen Textfeldern ignoriert.
- EAN-Matching ist präfix-tolerant — teilweise Ziffernfolgen matchen.
- Alle Ergebnisse haben nutzbare Nährwertdaten; Produkte ohne Nährwertdaten werden nicht zurückgegeben.
- Multipack-Datensätze werden aus Suchergebnissen gefiltert.
- Wenn
countryangegeben ist, werden nur Produkte zurückgegeben, deren primärer Markt passt. Das ist Katalogabdeckung, kein Live-Bestandsstatus. - Kein Fuzzy-Matching. Tippfehler matchen nicht.
Fehler
401— fehlender oder ungültiger Schlüssel.400— ungültiges country-Format.429— Kontingent überschritten.