Vzhľad
Vyhľadávanie
Verejný GET /search, autentifikovaný api_key v query. Vhodné, keď si staviaš vlastnú výsledkovú stránku namiesto widgetu.
GET /search?api_key=…&q=vŕtačka&size=20&f[]=brand:Bosch&facets=brand:10&sort=price:ascParametre
| parameter | význam |
|---|---|
q | dotaz; prázdny q s filtrami je výpis katalógu |
size | veľkosť stránky, default 10, max 200 |
page / from | stránka od 1, prípadne offset; from má prednosť |
sort | price, name, brand, availability s :asc alebo :desc |
f[] | facetový filter |
f_must[] | filter, ktorý musí platiť aj v rámci jedného poľa |
neg_f[] | negatívny filter |
facets | ktoré facety spočítať, napr. brand:10,category |
hit_fields / remove_fields | orezanie atribútov na výstupe |
Facetové filtre
f[]=brand:Bosch&f[]=brand:Makita → Bosch ALEBO Makita
f[]=brand:Bosch&f[]=category:Náradie → Bosch A ZÁROVEŇ Náradie
f_must[]=color:modrá → musí platiť aj pri viachodnotovom poli
neg_f[]=availability:0 → vylúč nedostupné
f[]=price:100|200 → cenový rozsah (`100|` a `|200` sú otvorené)
f[]=brand:value_missing → objekty bez značkyPodporované facety: brand, category, category_id, price, availability, type. Iný názov vráti 400 — index vie filtrovať iba podľa nich.
Multi-select: keď vyfiltruješ značku, facet brand naďalej vracia aj ostatné značky s ich počtami, aby si zákazník vedel prepnúť. Ostatné facety sa prepočítajú podľa aktívnych filtrov.
Stránkovanie
from + size môže byť najviac 200. Za touto hranicou už výsledky nerankujeme, takže hlbšia stránka by vrátila poradie, ktoré nikto nezoradil; request vráti 400.
Explicitný sort prebíja relevanciu — keď si vypýtaš price:asc, poradie ti neprehodíme.
Odpoveď
json
{
"results": {
"hits": [
{
"url": "sku-1",
"type": "item",
"attributes": { "title": "Vŕtačka", "web_url": "https://eshop.sk/vrtacka", "price": 129.9 }
}
],
"total_hits": 24,
"facets": { "brand": [{ "value": "Bosch", "count": 8 }] }
},
"offset": 0,
"size": 10,
"next_page": 2
}url nie je odkaz
url v hite je identita objektu (to, čo si poslal ako identity). Klikateľný odkaz je v attributes.web_url.
next_page je null na poslednej stránke.
Našepkávanie
GET /autocomplete/v2?api_key=…&q=vŕtaVráti {"hits": [...]} s návrhmi dotazov (type: "query", atribúty phrase a result_count) a produktmi (type: "item"). Stojí na tých istých návrhoch, aké používa widget.
Hodnoty facetu
Našepkávanie medzi hodnotami jedného facetu — napr. zoznam značiek pri písaní do filtra:
GET /v1/facet_value?api_key=…&facet=brand&q=bo&size=10json
{ "values": [{ "value": "Bosch", "count": 8 }] }