Zoeksuggesties

Om de gebruikers van je app of site nog beter te helpen kun je de bol.com zoeksuggesties gebruiken. Hiermee kun je automatisch woorden aanvullen terwijl de gebruiker een zoekopdracht invult. Dit scheelt de gebruiker tijd en moeite en zorgt vaak voor relevantere zoektermen en goede zoekresultaten. Het is een continu lerend systeem, dat ook rekening houdt met actualiteit en populariteit van bol.com artikelen.

In de aanroep-url voor de zoeksuggesties moeten 2 elementen worden ingevuld:

  • xcat (waarbinnen wordt er gezocht naar suggesties)
  • zoekterm (waarop moeten de suggesties gebaseerd worden)

Een voorbeeld aanroep voor de zoekterm “potter” binnen alle artikelen van bol.com ziet er als volgt uit:

http://zoeksuggesties.s-bol.com/extern/qs/OpenSearch/media_all/potter

Uit de aanroep volgt een json-respons vergelijkbaar met onderstaand voorbeeld:

["potter",["potter harry","potter","potter hallows 2","potter collection","potter hallows 1","potter dvd box","potter 7","potter hallows","potter blue ray","potter feniks"],[{"xcats":[{"name":"dvd_all"},{"name":"books_nl"}]},{},{},{},{},{},{},{},{},{}],[]]

In de respons kunnen optioneel ook xcats terug komen, die je weer kunt gebruiken om direct een zoekopdracht te laten doen binnen een bol.com categorie. Hiervoor dien je wel de xcats uit de respons te interpreteren en te koppelen aan een categoryid. Zo kun je bijvoorbeeld de xcat “dvd_all” direct koppelen aan een zoekopdracht binnen de categorie dvd met het categoryid 3133. Zie de categorieboom vanaf de root-categorie voor deze nummers.

Uiteraard kun je zelf bepalen na hoeveel tekens je de zoeksuggesties aanroept. Zoeksuggesties kun je het beste aanroepen met een ajax-call, zodat je tijdens het typen al suggesties kunt doen aan de gebruiker.

Het is ook mogelijk om een functie uit te laten voeren via een callback waarmee je een JSONP aanroep kunt doen. Gebruik hiervoor onderstaande structuur:

http://zoeksuggesties.s-bol.com/extern/qs/OpenSearchJSCB/My_callback.function/media_all/potter

Uit de aanroep volgt een json-respons vergelijkbaar met onderstaand voorbeeld met de gedefiniëerde functie eromheen:

My_callback.function(["potter",["potter harry","potter","potter hallows","potter dvd box","potter relieken","potter collection","potter hallows 2","potter style","potter 7","potter harry collectie"],[{"xcats":[{"name":"books_nl"},{"name":"dvd_all"}]},{},{},{},{},{},{},{},{},{}],[]])

Een voorbeeld van een ajax-call kan je op onze voorbeeldcode pagina vinden

Lijst met mogelijk xcats om suggesties specifieker te maken

Xcat Omschrijving
media_all Zoeksuggesties binnen alle  artikelen van bol.com
books_nl Zoeksuggesties binnen alle Nederlandse boeken
books_en Zoeksuggesties binnen alle buitenlandse boeken
music_all Zoeksuggesties binnen alle muziek artikelen
dvd_all Zoeksuggesties binnen alle dvd en blu-ray artikelen
toys_all Zoeksuggesties binnen alle speelgoed artikelen
games_all Zoeksuggesties binnen alle game artikelen
s_elec_all Zoeksuggesties binnen alle elektronica artikelen
computer_all Zoeksuggesties binnen alle computer artikelen
baby_all Zoeksuggesties binnen alle baby artikelen
kth_all Zoeksuggesties binnen alle koken, tafelen en huishoudelijke artikelen
bph_all Zoeksuggesties binnen alle mooi & gezond artikelen
garden_all Zoeksuggesties binnen alle tuin artikelen
tools_all Zoeksuggesties binnen alle klus artikelen
pet_all Zoeksuggesties binnen alle dier artikelen
las_all Zoeksuggesties binnen alle woonartikelen
sto_all Zoeksuggesties binnen alle sport- en vrije tijd artikelen
volg developers.bol.com via TwitterMeld je aan voor de Partnerprogramma groep op Linkedin