Configurations
If you haven't gone through the prerequisites and the v2 structure, please have a look at Overview
There are numerous settings, preferences, and configurations available with APIv2 to fine-tune your search and category merchandising queries. This section explores them in more detail.
Sorting
The default sorting of results is RELEVANCE, which uses Klevu A.I. to determine the order. There are various other options available which you can provide to your customers as required.
- RELEVANCEStringDescription
- PRICE_ASCstringDescription
- PRICE_DESCstringDescription
- NAME_ASCstringDescription
- NAME_DESCstringDescription
- RATING_ASCstringDescription
- RATING_DESCstringDescription
- NEW_ARRIVAL_ASCstringDescription
- NEW_ARRIVAL_DESCstringDescription
{
"recordQueries": [
{
"settings": {
"sort": "NAME_ASC",
"query": {
"term": "short"
},
"fields": [
"id",
"name",
"rating",
"salePrice",
"score"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://eucs15v2.ksearchnet.com/cs/v2/search',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"recordQueries": [
{
"settings": {
"sort": "NAME_ASC",
"query": {
"term": "short"
},
"fields": [
"id",
"name",
"rating",
"salePrice",
"score"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var data = JSON.stringify({"recordQueries":[{"settings":{"sort":"NAME_ASC","query":{"term":"short"},"fields":["id","name","rating","salePrice","score"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}});
var xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://eucs15v2.ksearchnet.com/cs/v2/search");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"recordQueries\": [\n {\n \"settings\": {\n \"sort\": \"NAME_ASC\",\n \"query\": {\n \"term\": \"short\"\n },\n \"fields\": [\n \"id\",\n \"name\",\n \"rating\",\n \"salePrice\",\n \"score\"\n ]\n },\n \"id\": \"productSearch\"\n }\n ],\n \"context\": {\n \"apiKeys\": [\n \"klevu-156925593843210765\"\n ]\n }\n}");
Request request = new Request.Builder()
.url("https://eucs15v2.ksearchnet.com/cs/v2/search")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();var request = require('request');
var options = {
'method': 'POST',
'url': 'https://eucs15v2.ksearchnet.com/cs/v2/search',
'headers': {
'Content-Type': 'application/json'
},
body: JSON.stringify({"recordQueries":[{"settings":{"sort":"NAME_ASC","query":{"term":"short"},"fields":["id","name","rating","salePrice","score"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
{
"meta": {
"qTime": 18,
"responseCode": 200
},
"queryResults": [
{
"id": "productSearch",
"meta": {
"qTime": 17,
"noOfResults": 12,
"totalResultsFound": 105,
"typeOfSearch": "WILDCARD_AND",
"offset": 0,
"debuggingInformation": {},
"notificationCode": 1,
"searchedTerm": "short",
"apiKey": "klevu-156925593843210765",
"isPersonalised": false
},
"records": [
{
"score": "0.19684093",
"salePrice": "24.00",
"name": "Aero Daily Fitness Tee",
"id": "31366478200894"
},
{
"score": "0.19684093",
"salePrice": "24.00",
"name": "Aero Daily Fitness Tee",
"id": "31366478364734"
},
{
"score": "0.19684093",
"salePrice": "24.00",
"name": "Aero Daily Fitness Tee",
"id": "31366478495806"
},
{
"score": "1.0985985",
"salePrice": "40.00",
"name": "Ana Running Short",
"id": "31366431768638"
},
{
"score": "1.0985985",
"salePrice": "40.00",
"name": "Ana Running Short",
"id": "31366431899710"
},
{
"score": "1.0985984",
"salePrice": "40.00",
"name": "Ana Running Short",
"id": "31366431834174"
},
{
"score": "1.0985985",
"salePrice": "42.00",
"name": "Angel Light Running Short",
"id": "31366434062398"
},
{
"score": "1.0985985",
"salePrice": "42.00",
"name": "Angel Light Running Short",
"id": "31366433177662"
},
{
"score": "1.0985985",
"salePrice": "42.00",
"name": "Angel Light Running Short",
"id": "31366433996862"
},
{
"score": "1.0985929",
"salePrice": "32.50",
"name": "Apollo Running Short",
"id": "31366465880126"
},
{
"score": "1.0985985",
"salePrice": "20.00",
"name": "Arcadio Gym Short",
"id": "31366462668862"
},
{
"score": "1.0985985",
"salePrice": "20.00",
"name": "Arcadio Gym Short",
"id": "31366462767166"
}
],
"filters": []
}
]
}Try it here!
Pagination
You may wish to split larger result sets over multiple pages. You can do this using pagination. Simply specify a page size for how many results each page should include, and an offset of which record to start each result set from.
- limitIntegerDescription
- offsetIntegerDescription
- typeOfSearchstringDescription
{
"recordQueries": [
{
"settings": {
"limit": 5,
"offset": 4,
"typeOfSearch": "WILDCARD_AND",
"query": {
"term": "short"
},
"fields": [
"id",
"name"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://eucs15v2.ksearchnet.com/cs/v2/search',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"recordQueries": [
{
"settings": {
"limit": 5,
"offset": 4,
"typeOfSearch": "WILDCARD_AND",
"query": {
"term": "short"
},
"fields": [
"id",
"name"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var data = JSON.stringify({"recordQueries":[{"settings":{"limit":5,"offset":4,"typeOfSearch":"WILDCARD_AND","query":{"term":"short"},"fields":["id","name"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}});
var xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://eucs15v2.ksearchnet.com/cs/v2/search");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"recordQueries\": [\n {\n \"settings\": {\n \"limit\": 5,\n \"offset\": 4,\n \"typeOfSearch\": \"WILDCARD_AND\",\n \"query\": {\n \"term\": \"short\"\n },\n \"fields\": [\n \"id\",\n \"name\"\n ]\n },\n \"id\": \"productSearch\"\n }\n ],\n \"context\": {\n \"apiKeys\": [\n \"klevu-156925593843210765\"\n ]\n }\n}");
Request request = new Request.Builder()
.url("https://eucs15v2.ksearchnet.com/cs/v2/search")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();var request = require('request');
var options = {
'method': 'POST',
'url': 'https://eucs15v2.ksearchnet.com/cs/v2/search',
'headers': {
'Content-Type': 'application/json'
},
body: JSON.stringify({"recordQueries":[{"settings":{"limit":5,"offset":4,"typeOfSearch":"WILDCARD_AND","query":{"term":"short"},"fields":["id","name"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
{
"meta": {
"qTime": 12,
"responseCode": 200
},
"queryResults": [
{
"id": "productSearch",
"meta": {
"qTime": 11,
"noOfResults": 5,
"totalResultsFound": 105,
"typeOfSearch": "WILDCARD_AND",
"offset": 4,
"debuggingInformation": {},
"notificationCode": 1,
"searchedTerm": "short",
"apiKey": "klevu-156925593843210765",
"isPersonalised": false
},
"records": [
{
"name": "Hawkeye Yoga Short",
"id": "31366465060926"
},
{
"name": "Pierce Gym Short",
"id": "31366462472254"
},
{
"name": "Hawkeye Yoga Short",
"id": "31366465191998"
},
{
"name": "Hawkeye Yoga Short",
"id": "31366465126462"
},
{
"name": "Pierce Gym Short",
"id": "31366462439486"
}
],
"filters": []
}
]
}Understanding response format
Params | Description | |
|---|---|---|
noOfResults | The number of results requested to be returned for this query. | |
totalResultsFound | The total number of results found for this query. | |
offset | The index of the first result returned in this response. | |
typeOfSearch | The query type that was executed by Klevu to retrieve the results. | |
Try it here!
Fields
By default, Klevu will return most of the data available in a record. If you only need certain elements and want to keep the response size small for performance reasons, you can specify only the fields you are interested in.
- fieldsArrayDescription
{
"recordQueries": [
{
"settings": {
"fields": [
"id",
"name",
"salePrice"
],
"query": {
"term": "short"
}
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://eucs15v2.ksearchnet.com/cs/v2/search',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"recordQueries": [
{
"settings": {
"fields": [
"id",
"name",
"salePrice"
],
"query": {
"term": "short"
}
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var data = JSON.stringify({"recordQueries":[{"settings":{"fields":["id","name","salePrice"],"query":{"term":"short"}},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}});
var xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://eucs15v2.ksearchnet.com/cs/v2/search");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"recordQueries\": [\n {\n \"settings\": {\n \"fields\": [\n \"id\",\n \"name\",\n \"salePrice\"\n ],\n \"query\": {\n \"term\": \"short\"\n }\n },\n \"id\": \"productSearch\"\n }\n ],\n \"context\": {\n \"apiKeys\": [\n \"klevu-156925593843210765\"\n ]\n }\n}");
Request request = new Request.Builder()
.url("https://eucs15v2.ksearchnet.com/cs/v2/search")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();var request = require('request');
var options = {
'method': 'POST',
'url': 'https://eucs15v2.ksearchnet.com/cs/v2/search',
'headers': {
'Content-Type': 'application/json'
},
body: JSON.stringify({"recordQueries":[{"settings":{"fields":["id","name","salePrice"],"query":{"term":"short"}},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
{
"meta": {
"qTime": 14,
"responseCode": 200
},
"queryResults": [
{
"id": "productSearch",
"meta": {
"qTime": 12,
"noOfResults": 12,
"totalResultsFound": 105,
"typeOfSearch": "WILDCARD_AND",
"offset": 0,
"debuggingInformation": {},
"notificationCode": 1,
"searchedTerm": "short",
"apiKey": "klevu-156925593843210765",
"isPersonalised": false
},
"records": [
{
"salePrice": "45.00",
"name": "Erika Running Short",
"id": "31366431146046"
},
{
"salePrice": "45.00",
"name": "Erika Running Short",
"id": "31366431080510"
},
{
"salePrice": "45.00",
"name": "Erika Running Short",
"id": "31366431014974"
},
{
"salePrice": "32.50",
"name": "Meteor Workout Short",
"id": "31366465781822"
},
{
"salePrice": "29.00",
"name": "Hawkeye Yoga Short",
"id": "31366465060926"
},
{
"salePrice": "27.00",
"name": "Pierce Gym Short",
"id": "31366462472254"
},
{
"salePrice": "29.00",
"name": "Hawkeye Yoga Short",
"id": "31366465191998"
},
{
"salePrice": "29.00",
"name": "Hawkeye Yoga Short",
"id": "31366465126462"
},
{
"salePrice": "27.00",
"name": "Pierce Gym Short",
"id": "31366462439486"
},
{
"salePrice": "27.00",
"name": "Pierce Gym Short",
"id": "31366462373950"
},
{
"salePrice": "32.00",
"name": "Sol Active Short",
"id": "31366463094846"
},
{
"salePrice": "32.00",
"name": "Sol Active Short",
"id": "31366463029310"
}
],
"filters": []
}
]
}Try it here!
Grouping
The groupBy parameter takes the name of a field indexed in the Klevu Search backend and ensures that there is only one record for each unique value of this field in the search results.
By default, the groupBy operation is performed on the itemGroupId field. When querying for KLEVU_CATEGORY or KLEVU_CMS records, it is recommended to use name as the groupBy parameter value.
- groupByStringDescription
{
"recordQueries": [
{
"settings": {
"groupBy": "name",
"query": {
"term": "Adrienne Trek Jacket"
},
"sort": "NAME_ASC",
"fields": [
"id",
"name"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://eucs15v2.ksearchnet.com/cs/v2/search',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"recordQueries": [
{
"settings": {
"groupBy": "name",
"query": {
"term": "Adrienne Trek Jacket"
},
"sort": "NAME_ASC",
"fields": [
"id",
"name"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var data = JSON.stringify({"recordQueries":[{"settings":{"groupBy":"name","query":{"term":"Adrienne Trek Jacket"},"sort":"NAME_ASC","fields":["id","name"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}});
var xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://eucs15v2.ksearchnet.com/cs/v2/search");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"recordQueries\": [\n {\n \"settings\": {\n \"groupBy\": \"name\",\n \"query\": {\n \"term\": \"Adrienne Trek Jacket\"\n },\n \"sort\": \"NAME_ASC\",\n \"fields\": [\n \"id\",\n \"name\"\n ]\n },\n \"id\": \"productSearch\"\n }\n ],\n \"context\": {\n \"apiKeys\": [\n \"klevu-156925593843210765\"\n ]\n }\n}");
Request request = new Request.Builder()
.url("https://eucs15v2.ksearchnet.com/cs/v2/search")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();var request = require('request');
var options = {
'method': 'POST',
'url': 'https://eucs15v2.ksearchnet.com/cs/v2/search',
'headers': {
'Content-Type': 'application/json'
},
body: JSON.stringify({"recordQueries":[{"settings":{"groupBy":"name","query":{"term":"Adrienne Trek Jacket"},"sort":"NAME_ASC","fields":["id","name"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
{
"meta": {
"qTime": 19,
"responseCode": 200
},
"queryResults": [
{
"id": "productSearch",
"meta": {
"qTime": 17,
"noOfResults": 12,
"totalResultsFound": 1,
"typeOfSearch": "WILDCARD_AND",
"offset": 0,
"debuggingInformation": {},
"notificationCode": 1,
"searchedTerm": "Adrienne Trek Jacket",
"apiKey": "klevu-156925593843210765",
"isPersonalised": false
},
"records": [
{
"name": "Adrienne Trek Jacket",
"id": "31366454378558"
}
],
"filters": []
}
]
}Try it here!
Type of search
The typeOfSearch parameter defines the behaviour when identifying matches for a searched term. For example, whether all or just one of the entered words must be matched, whether to allow spelling mistakes, etc.
- DEFAULTStringDescription
- ANDstringDescription
- FUZZY_ANDstringDescription
- WILDCARD_ANDstringDescription
- FUZZY_WILDCARD_ANDstringDescription
- WILDCARD_ORstringDescription
- FUZZY_ORstringDescription
- ORstringDescription
{
"recordQueries": [
{
"settings": {
"typeOfSearch": "FUZZY_OR",
"query": {
"term": "short"
},
"fields": [
"id",
"name"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://eucs15v2.ksearchnet.com/cs/v2/search',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"recordQueries": [
{
"settings": {
"typeOfSearch": "FUZZY_OR",
"query": {
"term": "short"
},
"fields": [
"id",
"name"
]
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var data = JSON.stringify({"recordQueries":[{"settings":{"typeOfSearch":"FUZZY_OR","query":{"term":"short"},"fields":["id","name"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}});
var xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://eucs15v2.ksearchnet.com/cs/v2/search");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"recordQueries\": [\n {\n \"settings\": {\n \"typeOfSearch\": \"FUZZY_OR\",\n \"query\": {\n \"term\": \"short\"\n },\n \"fields\": [\n \"id\",\n \"name\"\n ]\n },\n \"id\": \"productSearch\"\n }\n ],\n \"context\": {\n \"apiKeys\": [\n \"klevu-156925593843210765\"\n ]\n }\n}");
Request request = new Request.Builder()
.url("https://eucs15v2.ksearchnet.com/cs/v2/search")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();var request = require('request');
var options = {
'method': 'POST',
'url': 'https://eucs15v2.ksearchnet.com/cs/v2/search',
'headers': {
'Content-Type': 'application/json'
},
body: JSON.stringify({"recordQueries":[{"settings":{"typeOfSearch":"FUZZY_OR","query":{"term":"short"},"fields":["id","name"]},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
{
"meta": {
"qTime": 17,
"responseCode": 200
},
"queryResults": [
{
"id": "productSearch",
"meta": {
"qTime": 16,
"noOfResults": 12,
"totalResultsFound": 190,
"typeOfSearch": "FUZZY_OR",
"offset": 0,
"debuggingInformation": {},
"notificationCode": 1,
"searchedTerm": "short",
"apiKey": "klevu-156925593843210765",
"isPersonalised": false
},
"records": [
{
"name": "Rapha Sports Short",
"id": "31366464503870"
},
{
"name": "Rapha Sports Short",
"id": "31366464110654"
},
{
"name": "Rapha Sports Short",
"id": "31366464667710"
},
{
"name": "Shorts",
"id": "category_156703227966"
},
{
"name": "Erika Running Short",
"id": "31366431146046"
},
{
"name": "Erika Running Short",
"id": "31366431014974"
},
{
"name": "Erika Running Short",
"id": "31366431080510"
},
{
"name": "Meteor Workout Short",
"id": "31366465781822"
},
{
"name": "Hawkeye Yoga Short",
"id": "31366465126462"
},
{
"name": "Hawkeye Yoga Short",
"id": "31366465191998"
},
{
"name": "Hawkeye Yoga Short",
"id": "31366465060926"
},
{
"name": "Bess Yoga Short",
"id": "31366434226238"
}
],
"filters": []
}
]
}Try it here!
Preferences
There are a number of preferences available for fine-tuning your queries. For example, you can control whether or not to allow fuzzy search for spelling mistakes on a query by query basis. The available searchPrefs are detailed below.
- showOutOfStockProductsStringDescription
- hideOutOfStockProductsstringDescription
- disableStockSortingstringDescription
- includeStopwordsstringDescription
- excludeIdsstringDescription
- includeDescriptionstringDescription
- excludeDescriptionstringDescription
- disableFuzzyMatchstringDescription
- disableWildcardstringDescription
- disableORSearchstringDescription
- partialMatchstringDescription
- partialMatchForAllWordsstringDescription
- disableWordShinglesstringDescription
- searchCompoundsAsAndQuerystringDescription
- enableBoostingOriginalTermsInSynonymsstringDescription
- showDisabledFacetsstringDescription
- showFiltersWithSmallCountstringDescription
- includeCategoryFilterInCatNavstringDescription
- enableScoresstringDescription
- disableGroupingstringDescription
{
"recordQueries": [
{
"settings": {
"searchPrefs": [
"showOutOfStockProducts",
"disableStockSorting",
"includeStopwords",
"excludeIds",
"includeDescription",
"disableFuzzyMatch",
"disableWildcard",
"disableORSearch",
"partialMatch",
"partialMatchForAllWords",
"disableWordShingles",
"searchCompoundsAsAndQuery",
"enableBoostingOriginalTermsInSynonyms",
"showDisabledFacets",
"showFiltersWithSmallCount",
"includeCategoryFilterInCatNav",
"enableScores",
"disableGrouping"
],
"query": {
"term": "short"
}
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://eucs15v2.ksearchnet.com/cs/v2/search',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"recordQueries": [
{
"settings": {
"searchPrefs": [
"showOutOfStockProducts",
"disableStockSorting",
"includeStopwords",
"excludeIds",
"includeDescription",
"disableFuzzyMatch",
"disableWildcard",
"disableORSearch",
"partialMatch",
"partialMatchForAllWords",
"disableWordShingles",
"searchCompoundsAsAndQuery",
"enableBoostingOriginalTermsInSynonyms",
"showDisabledFacets",
"showFiltersWithSmallCount",
"includeCategoryFilterInCatNav",
"enableScores",
"debugQuery",
"disableGrouping"
],
"query": {
"term": "short"
}
},
"id": "productSearch"
}
],
"context": {
"apiKeys": [
"klevu-156925593843210765"
]
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var data = JSON.stringify({"recordQueries":[{"settings":{"searchPrefs":["showOutOfStockProducts","disableStockSorting","includeStopwords","excludeIds","includeDescription","disableFuzzyMatch","disableWildcard","disableORSearch","partialMatch","partialMatchForAllWords","disableWordShingles","searchCompoundsAsAndQuery","enableBoostingOriginalTermsInSynonyms","showDisabledFacets","showFiltersWithSmallCount","includeCategoryFilterInCatNav","enableScores","debugQuery","disableGrouping"],"query":{"term":"short"}},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}});
var xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://eucs15v2.ksearchnet.com/cs/v2/search");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"recordQueries\": [\n {\n \"settings\": {\n \"searchPrefs\": [\n \"showOutOfStockProducts\",\n \"disableStockSorting\",\n \"includeStopwords\",\n \"excludeIds\",\n \"includeDescription\",\n \"disableFuzzyMatch\",\n \"disableWildcard\",\n \"disableORSearch\",\n \"partialMatch\",\n \"partialMatchForAllWords\",\n \"disableWordShingles\",\n \"searchCompoundsAsAndQuery\",\n \"enableBoostingOriginalTermsInSynonyms\",\n \"showDisabledFacets\",\n \"showFiltersWithSmallCount\",\n \"includeCategoryFilterInCatNav\",\n \"enableScores\",\n \"debugQuery\",\n \"disableGrouping\"\n ],\n \"query\": {\n \"term\": \"short\"\n }\n },\n \"id\": \"productSearch\"\n }\n ],\n \"context\": {\n \"apiKeys\": [\n \"klevu-156925593843210765\"\n ]\n }\n}");
Request request = new Request.Builder()
.url("https://eucs15v2.ksearchnet.com/cs/v2/search")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();var request = require('request');
var options = {
'method': 'POST',
'url': 'https://eucs15v2.ksearchnet.com/cs/v2/search',
'headers': {
'Content-Type': 'application/json'
},
body: JSON.stringify({"recordQueries":[{"settings":{"searchPrefs":["showOutOfStockProducts","disableStockSorting","includeStopwords","excludeIds","includeDescription","disableFuzzyMatch","disableWildcard","disableORSearch","partialMatch","partialMatchForAllWords","disableWordShingles","searchCompoundsAsAndQuery","enableBoostingOriginalTermsInSynonyms","showDisabledFacets","showFiltersWithSmallCount","includeCategoryFilterInCatNav","enableScores","debugQuery","disableGrouping"],"query":{"term":"short"}},"id":"productSearch"}],"context":{"apiKeys":["klevu-156925593843210765"]}})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
{
meta: {
qTime: 29,
responseCode: 200
},
queryResults: [
{
id: "productSearch",
meta: {
qTime: 26,
noOfResults: 12,
totalResultsFound: 108,
typeOfSearch: "WILDCARD_AND",
offset: 0,
debuggingInformation: {},
notificationCode: 1,
searchedTerm: "short",
apiKey: "klevu-156925593843210765",
isPersonalised: false
},
records: [
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384016203838",
score: "1.7803618",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "45.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/wsh12-red_main_9999e03f-694d-4f0c-83ab-8c0200029275_medium.jpg?v=1575477719",
currency: "GBP",
inStock: "yes",
id: "31366431014974",
imageHover: "",
sku: "WSH12-28-Red",
brand: "KSD",
basePrice: "45.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/wsh12-red_main_9999e03f-694d-4f0c-83ab-8c0200029275_medium.jpg?v=1575477719",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "45.0",
klevu_product_boosting: "1.2",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/erika-running-short-red",
tags: "body-hugging, nylon, Red, Running, Short",
size: "Medium",
name: "Erika Running Short",
shortDesc: "A great short with a body-hugging design, the Erika Running Short is perfect for runners who prefer a fitted short rather than the traditional baggy variety. • Seafoam pattern running shorts. • Elastic waistband. • Snug fit. • 4''",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384016269374",
score: "1.7803618",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "45.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/wsh12-purple_main_c57ce41e-7b0e-4cd2-a0de-18ddb6d2017a_medium.jpg?v=1575477720",
currency: "GBP",
inStock: "yes",
id: "31366431080510",
imageHover: "",
sku: "WSH12-28-Purple",
brand: "KSD",
basePrice: "45.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/wsh12-purple_main_c57ce41e-7b0e-4cd2-a0de-18ddb6d2017a_medium.jpg?v=1575477720",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "45.0",
klevu_product_boosting: "1.2",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/erika-running-short-purple",
tags: "body-hugging, nylon, Red, Running, Short",
size: "Large",
name: "Erika Running Short",
shortDesc: "A great short with a body-hugging design, the Erika Running Short is perfect for runners who prefer a fitted short rather than the traditional baggy variety. • Seafoam pattern running shorts. • Elastic waistband. • Snug fit. • 4''",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384016334910",
score: "1.7803618",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "45.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/wsh12-green_main_3ac6ebe5-2c3e-45cf-91cf-ec54de5e5e3a_medium.jpg?v=1575477721",
currency: "GBP",
inStock: "yes",
id: "31366431146046",
imageHover: "",
sku: "WSH12-28-Green",
brand: "KSD",
basePrice: "45.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/wsh12-green_main_3ac6ebe5-2c3e-45cf-91cf-ec54de5e5e3a_medium.jpg?v=1575477721",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "45.0",
klevu_product_boosting: "1.2",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/erika-running-short-green",
tags: "body-hugging, Green, nylon, Running, Short",
size: "Small",
name: "Erika Running Short",
shortDesc: "A great short with a body-hugging design, the Erika Running Short is perfect for runners who prefer a fitted short rather than the traditional baggy variety. • Seafoam pattern running shorts. • Elastic waistband. • Snug fit. • 4''",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384040386622",
score: "1.513042",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "32.50",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh03-black_main_a8796b84-9c70-4146-9c73-2295b0d260a7_medium.jpg?v=1575478122",
currency: "GBP",
inStock: "yes",
id: "31366465781822",
imageHover: "",
sku: "MSH03-32-Black",
brand: "KKE",
basePrice: "32.5",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh03-black_main_a8796b84-9c70-4146-9c73-2295b0d260a7_medium.jpg?v=1575478122",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "32.5",
klevu_product_boosting: "1.02",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/meteor-workout-short-black",
tags: "black, Machine, Nylon, Relaxed fit, Short, Summer",
size: "Small",
name: "Meteor Workout Short",
shortDesc: "Step into the Meteor Workout Short for an incredibly lightweight fitness experience. Its breathable construction and an inner brief provide additional comfort and support, while the adjustable waistband offers the perfect fit to take you to the fi",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384039796798",
score: "1.4835187",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "29.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh05-black_main_f61ee526-b9d3-4eaa-b7b2-80dc400f31b0_medium.jpg?v=1575478115",
currency: "GBP",
inStock: "yes",
id: "31366465191998",
imageHover: "",
sku: "MSH05-32-Black",
brand: "KKE",
basePrice: "29.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh05-black_main_f61ee526-b9d3-4eaa-b7b2-80dc400f31b0_medium.jpg?v=1575478115",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "29.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/hawkeye-yoga-short-black",
tags: "Black, Machine, motion-friendly, Nylon, Relaxed fit, Smooth, Summer, yoga-short",
size: "Small",
name: "Hawkeye Yoga Short",
shortDesc: "What more do you need than a sporty yoga short made with organic cotton and a little spandex for mobility? The Hawkeye Yoga Short brings a stylish, standard fit you can sport with confidence outside the studio. • Dark gray shorts with red a",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384039665726",
score: "1.4835187",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "29.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh05-gray_main_0f869cff-09fb-403a-a209-cf092f4d3c1a_medium.jpg?v=1575478112",
currency: "GBP",
inStock: "yes",
id: "31366465060926",
imageHover: "",
sku: "MSH05-32-Gray",
brand: "KSD",
basePrice: "29.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh05-gray_main_0f869cff-09fb-403a-a209-cf092f4d3c1a_medium.jpg?v=1575478112",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "29.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/hawkeye-yoga-short-gray",
tags: "Gray, Machine, Nylon, Relaxed fit, Short, Summer",
size: "Medium",
name: "Hawkeye Yoga Short",
shortDesc: "What more do you need than a sporty yoga short made with organic cotton and a little spandex for mobility? The Hawkeye Yoga Short brings a stylish, standard fit you can sport with confidence outside the studio. • Dark gray shorts with red a",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384039731262",
score: "1.4835187",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "29.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh05-blue_main_2130114d-06b0-4793-8fc2-bf77411297e4_medium.jpg?v=1575478114",
currency: "GBP",
inStock: "yes",
id: "31366465126462",
imageHover: "",
sku: "MSH05-32-Blue",
brand: "MNH",
basePrice: "29.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh05-blue_main_2130114d-06b0-4793-8fc2-bf77411297e4_medium.jpg?v=1575478114",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "29.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/hawkeye-yoga-short-blue",
tags: "Blue, Machine, Nylon, Relaxed fit, Short, Summer",
size: "Large",
name: "Hawkeye Yoga Short",
shortDesc: "What more do you need than a sporty yoga short made with organic cotton and a little spandex for mobility? The Hawkeye Yoga Short brings a stylish, standard fit you can sport with confidence outside the studio. • Dark gray shorts with red a",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384037765182",
score: "1.4835187",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "27.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh12-gray_main_4bb28c53-a928-47a0-92ea-ecd303f97dba_medium.jpg?v=1575478089",
currency: "GBP",
inStock: "yes",
id: "31366462439486",
imageHover: "",
sku: "MSH12-32-Gray",
brand: "MNH",
basePrice: "27.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh12-gray_main_4bb28c53-a928-47a0-92ea-ecd303f97dba_medium.jpg?v=1575478089",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "27.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/pierce-gym-short-gray",
tags: "Gray, Machine, Nylon, Relaxed fit, Short, Summer",
size: "Large",
name: "Pierce Gym Short",
shortDesc: "The Pierce Gym Short is similar to our Arcadio Gym Short, but designed with a fitted, tapered look. A flat waistband with an adjustable drawstring adds comfort, with zippered pockets for safe, easy storage. • Dark red cotton shorts. • 8",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384037830718",
score: "1.4835187",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "27.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh12-black_main_2ef78733-04a5-4345-9f5f-992d0cfffe8d_medium.jpg?v=1575478090",
currency: "GBP",
inStock: "yes",
id: "31366462472254",
imageHover: "",
sku: "MSH12-32-Black",
brand: "KKE",
basePrice: "27.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh12-black_main_2ef78733-04a5-4345-9f5f-992d0cfffe8d_medium.jpg?v=1575478090",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "27.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/pierce-gym-short-black",
tags: "Black, Machine, Nylon, Relaxed fit, Short, Summer",
size: "Small",
name: "Pierce Gym Short",
shortDesc: "The Pierce Gym Short is similar to our Arcadio Gym Short, but designed with a fitted, tapered look. A flat waistband with an adjustable drawstring adds comfort, with zippered pockets for safe, easy storage. • Dark red cotton shorts. • 8",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384037699646",
score: "1.4835186",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "27.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh12-red_main_6c29f610-d5f7-4e1a-bde4-1fb148964be5_medium.jpg?v=1575478088",
currency: "GBP",
inStock: "yes",
id: "31366462373950",
imageHover: "",
sku: "MSH12-32-Red",
brand: "KSD",
basePrice: "27.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh12-red_main_6c29f610-d5f7-4e1a-bde4-1fb148964be5_medium.jpg?v=1575478088",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "27.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/pierce-gym-short-red",
tags: "Cotton, Machine, Relaxed fit, Res, Short, Summer",
size: "Medium",
name: "Pierce Gym Short",
shortDesc: "The Pierce Gym Short is similar to our Arcadio Gym Short, but designed with a fitted, tapered look. A flat waistband with an adjustable drawstring adds comfort, with zippered pockets for safe, easy storage. • Dark red cotton shorts. • 8",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384038256702",
score: "1.4835119",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "32.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh10-green_main_18d664f2-5ba2-421d-b89a-87cb73d86416_medium.jpg?v=1575478095",
currency: "GBP",
inStock: "yes",
id: "31366463029310",
imageHover: "",
sku: "MSH10-32-Green",
brand: "MNH",
basePrice: "32.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh10-green_main_18d664f2-5ba2-421d-b89a-87cb73d86416_medium.jpg?v=1575478095",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "32.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/sol-active-short-green",
tags: "Green, Machine, Nylon, Relaxed fit, Short, Summer",
size: "Large",
name: "Sol Active Short",
shortDesc: "You'll let your fear go and push your limits in your new Sol Active Short. Featuring ultra-breathable performance fabric and a flat comfort-fit waistband, the Sol Active Short is perfect for high-intensity circuits or high-heat bikram. • Li",
klevu_manual_boosting: "1.0",
category: "Shorts"
},
{
discount: "",
hideGroupPrices: "",
type: "Shorts",
itemGroupId: "4384038158398",
score: "1.4835119",
freeShipping: "",
storeBaseCurrency: "GBP",
price: "32.00",
toPrice: "",
imageUrl: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh10-purple_main_1e2fd886-6ce1-4258-8fe5-6ca863ab5f9e_medium.jpg?v=1575478094",
currency: "GBP",
inStock: "yes",
id: "31366462931006",
imageHover: "",
sku: "MSH10-32-Purple",
brand: "KSD",
basePrice: "32.0",
startPrice: "",
image: "https://cdn.shopify.com/s/files/1/0116/9457/1582/products/msh10-purple_main_1e2fd886-6ce1-4258-8fe5-6ca863ab5f9e_medium.jpg?v=1575478094",
deliveryInfo: "",
hideAddToCart: "",
salePrice: "32.0",
klevu_product_boosting: "1.0",
swatchesInfo: "",
weight: "",
klevu_category: "KLEVU_PRODUCT;Products;;Shorts @ku@kuCategory@ku@",
totalVariants: 0,
groupPrices: "",
url: "https://jsv2-shopify-demo.ksearchmisc.com/products/sol-active-short-purple",
tags: "Black, Machine, Nylon, Relaxed fit, Short, Summer",
size: "Medium",
name: "Sol Active Short",
shortDesc: "You'll let your fear go and push your limits in your new Sol Active Short. Featuring ultra-breathable performance fabric and a flat comfort-fit waistband, the Sol Active Short is perfect for high-intensity circuits or high-heat bikram. • Li",
klevu_manual_boosting: "1.0",
category: "Shorts"
}
],
filters: []
}
]
}Try it here!