Elastic search is een zoek database waarin geavanceerde zoek queries uitgevoerd kunnen worden. Hybrid SaaS kan de producten die zijn gekoppeld aan de website module naar de Elastic search database versturen. Op basis van deze data biedt Hybrid SaaS enekele endpoints aan om zoek resultaten op te vragen. In dit document wordt deze koppeling beschreven.
Door enkele endpoints kunnen de zoek resultaten opgevraagd worden. Deze resultaten kan u gebruiken tijdens het opbouwen van uw website.
Naam | Standaard waarden |
---|---|
Elastic-search-host | http://localhost:9200 |
Naam | Code |
---|---|
Websites: inzien | CMS - Website |
De Elastic search database kan geüpdatet worden door een achtergrond taak. Deze taak wordt om de ingestelde tijd uitgevoerd en verstuurd alle producten opnieuw naar de Elastic search database. De standaard periode is elke 2 uur maar in overleg kan deze tijd aangepast worden.
Een achtergrond taak duurt enkele minuten. Dit heeft echter te maken met de aantal producten, categorieën en blog pots in uw systeem.
Hybrid SaaS biedt API endpoints aan voor het ophalen van de zoek resultaten. Hierbij kan u de naam samen met de braces ({}) vervangen voor uw gewenste waarden.
Endpoint | Methode | Opmerking | Waardes |
---|---|---|---|
/api/search/{code}/{websiteUrlId}?query={query} | GET | Geeft zoekresultaten terug |
|
/api/search/?api={api}&key={key} | POST | Update de Elastic search database. |
|
De resultaat van de search endpoint zijn in JSON formaat.
{
"categories": [
{
"id": "00000000000000000000000000000000",
"title": "cms-title",
"url": "cms-url"
},
...
],
"products": [
{
"id": "00000000000000000000000000000000",
"sku": "sku",
"title": "cms-title",
"image": "/image/product/guid/00000000000000000000000000000000/title.png",
"url": "cms-url",
"price": 0.00
},
...
],
"blogs": [
{
"id": "00000000000000000000000000000000",
"title": "cms-title",
"url": "cms-url"
},
...
]
}
Per website URL (Websites > URL per taal) wordt er een nieuw zoek document aangemaakt. Tijdens het opvragen van de endpoint geeft u deze website URL mee. Hiermee kunnen vertalingen opgehaald worden. Vervolgens wordt er per onderdeel deze taal overgenomen.
Per onderdeel moet de CMS/Vertaling ingesteld zijn. In deze CMS/Vertaling moet de Website URL gevuld zijn met de desbetrevende website. Indien deze niet gevuld is wordt de CMS/Vertaling overgeslagen.
Veld | Locatie |
---|---|
Productcode | (Informatie) |
Advies verkoopprijs | (Prijzen) [Verkoopprijs informatie] Verkooprijs |
Beschrijving | (Informatie) |
CMS title | (CMS) [Content per taal] > [Website instellingen] Title |
CMS URL | (CMS) [Content per taal] > [Website instellingen] URL |
Veld | Locatie |
---|---|
Naam | (Algemeen) |
CMS title | (Vertaling) [Vertaal informatie] Naam |
CMS URL | (Vertaling) [Vertaal informatie] URL |
Veld | Locatie |
---|---|
Naam | (Algemeen) |
Pad | (Algemeen) |
Bepaalde producten kunnen verborgen worden voor een een gebruiker. Binnen de organisatie kunnen er klant groepen opgegeven worden. Dit vindt u onder onder het tabje '(groepen)'.
Bij een product kunnen onder het zelfde tabje ook klant groepen opgegeven worden. Wanneer een klant is ingelogd dan worden deze groepen met elkaar gematched. Als de groep gevonden is dan kunnen de producten weergegeven worden.
Wanneer een gebruiker niet is ingelogd en dus geen gebruiker gevonden is, dan wordt de organisatie die is ingesteld in de website overgenomen. De klant is in te stellen onder 'Websites > URL per taal > [Instellingen] Organisatie'.
Wanneer er geen groep gevonden is op het product dan zal deze altijd weergegeven worden.
De product klantgroepen kunnen eenvoudig ingesteld worden met een Excel import. In het scherm 'Alle producten' vindt u onder [Acties] 'Importeer groepen'. Hierbij kan deze Excel sheet gebruikt worden. In deze Excel sheet kan u de product code en groep naam opgeven. De groepen in de sheet 'add' worden toegevoegd en in de sheet 'remove' worden verwijderd.