Guide
Smart Recommendations
Hand Picked
2 min
if you haven't gone through the prerequisites and the v2 structure, please have a look at overview docid\ czeodl0skcuv 18ipuplr klevu can power a recommendation banner showcasing any products which you, the merchant, has manually curated the most common placements for this banner type are homepage our recommended products show a recommendation banner with products you would like all customers to see { "tab" "examples", "url" "https //eucs19v2 ksearchnet com/cs/v2/search", "name" "hand picked product recommendations", "method" "post", "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[], "bodydataparameters" \[ { "kind" "required", "name" "typeofrequest", "type" "string", "description" "for this recommendation type, please specify search " }, { "kind" "required", "name" "customandquery", "type" "string", "description" "here we make a custom query to klevu, since we know exactly which records we expect in the response specify the ids of all of the products you would like your customers to see, separated by or" }, { "kind" "required", "name" "topids", "type" "array", "description" "use this field to specify the order the results should be returned, with the ones you would like to be more prominent coming first " } ], "formdataparameters" \[] }, "results" { "languages" \[ { "id" "3xlvmt855lgkjoht0npxg", "code" "{\n \\"meta\\" {\n \\"qtime\\" 7,\n \\"responsecode\\" 200\n },\n \\"queryresults\\" \[\n {\n \\"id\\" \\"recshandpicked\\",\n \\"meta\\" {\n \\"qtime\\" 4,\n \\"noofresults\\" 12,\n \\"totalresultsfound\\" 2,\n \\"typeofsearch\\" \\"wildcard and\\",\n \\"offset\\" 0,\n \\"debugginginformation\\" {},\n \\"notificationcode\\" 1,\n \\"searchedterm\\" \\" \\",\n \\"apikey\\" \\"klevu 158755634955912036\\",\n \\"ispersonalised\\" false\n },\n \\"records\\" \[\n {\n \\"color\\" \\"white hoodie thick\\",\n \\"discount\\" \\"\\",\n \\"hidegroupprices\\" \\"\\",\n \\"itemgroupid\\" \\"5192753152131\\",\n \\"freeshipping\\" \\"\\",\n \\"storebasecurrency\\" \\"eur\\",\n \\"price\\" \\"56 68\\",\n \\"toprice\\" \\"\\",\n \\"imageurl\\" \\"https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797420 medium jpg?v=1611184206\&vid=34322452512899,34322452971651,34322453430403,34322471256195,34322471551107,34322471846019,34322472173699\\",\n \\"currency\\" \\"eur\\",\n \\"instock\\" \\"yes\\",\n \\"id\\" \\"34322453430403\\",\n \\"imagehover\\" \\"https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797422 medium jpg?v=1611184206\&vid=34322466177155,34322466603139,34322466930819,34322467192963,34322467586179,34322467946627,34322468339843\\",\n \\"sku\\" \\"30504298 white hoodie thick asian m\\",\n \\"brand\\" \\"klevu personalisation demo\\",\n \\"startprice\\" \\"48 48\\",\n \\"image\\" \\"https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797420 medium jpg?v=1611184206\&vid=34322452512899,34322452971651,34322453430403,34322471256195,34322471551107,34322471846019,34322472173699\\",\n \\"deliveryinfo\\" \\"\\",\n \\"hideaddtocart\\" \\"\\",\n \\"saleprice\\" \\"56 68\\",\n \\"swatchesinfo\\" \\"variantcolor1\ black hoodie thin ;;;; variantcolor3\ blue hoodie thick ;;;; variantcolor2\ white hoodie thick ;;;; variantcolor5\ white hoodie thin ;;;; variantcolor4\ black hoodie thick ;;;; variantcolor6\ yellow hoodie thin ;;;; variantimage6\ https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797423 medium jpg?v=1611184258\&vid=16847225487491 ;;;; variantimage3\ https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797419 medium jpg?v=1611184206\&vid=16847185313923 ;;;; variantid6 34322463555715 ;;;; variantimage2\ https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797420 medium jpg?v=1611184206\&vid=16847185510531 ;;;; variantimage5\ https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797424 medium jpg?v=1611184206\&vid=16847190851715 ;;;; variantid4 34322456838275 ;;;; variantimage4\ https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797418 medium jpg?v=1611184250\&vid=16847223521411 ;;;; variantid5 34322460016771 ;;;; variantid2 34322452512899 ;;;; variantid3 34322453889155 ;;;; variantimage1\ https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1664797425 medium jpg?v=1611184240\&vid=16847221883011 ;;;; variantid1 34322448646275 ;;;;\\",\n \\"weight\\" \\"\\",\n \\"klevu category\\" \\"klevu product;products;;all;;women sweatshirts @ku\@kucategory\@ku@\\",\n \\"totalvariants\\" 0,\n \\"groupprices\\" \\"\\",\n \\"url\\" \\"https //klevu personalisation demo myshopify com/products/singleroad mens hoodies men women 2021 spring sweatshirt male japanese streetwear oversized yellow anime hoodie men sweatshirts\\",\n \\"size\\" \\"asian m\\",\n \\"name\\" \\"singleroad men's hoodies men women 2021 sweatshirt male japanese streetwear oversized anime hoodie men sweatshirts\\",\n \\"shortdesc\\" \\"gender\ gender\ men; closure\ closure\ none; ;;;; brand name single road origin cn(origin) sleeve length(cm) full gender \\",\n \\"category\\" \\"all;;women sweatshirts\\",\n \\"typeofrecord\\" \\"klevu product\\"\n },\n {\n \\"discount\\" \\"\\",\n \\"hidegroupprices\\" \\"\\",\n \\"itemgroupid\\" \\"5192749842563\\",\n \\"freeshipping\\" \\"\\",\n \\"storebasecurrency\\" \\"eur\\",\n \\"price\\" \\"50 00\\",\n \\"toprice\\" \\"\\",\n \\"imageurl\\" \\"https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1665231658 medium jpg?v=1611183787\\",\n \\"currency\\" \\"eur\\",\n \\"instock\\" \\"yes\\",\n \\"id\\" \\"34322423840899\\",\n \\"imagehover\\" \\"\\",\n \\"sku\\" \\"42882422 xl\\",\n \\"brand\\" \\"klevu personalisation demo\\",\n \\"startprice\\" \\"\\",\n \\"image\\" \\"https //cdn shopify com/s/files/1/0386/6653/5043/products/product image 1665231658 medium jpg?v=1611183787\\",\n \\"deliveryinfo\\" \\"\\",\n \\"hideaddtocart\\" \\"\\",\n \\"saleprice\\" \\"50 0\\",\n \\"swatchesinfo\\" \\"\\",\n \\"weight\\" \\"\\",\n \\"klevu category\\" \\"klevu product;products;;all;;women sweatshirts @ku\@kucategory\@ku@\\",\n \\"totalvariants\\" 0,\n \\"groupprices\\" \\"\\",\n \\"url\\" \\"https //klevu personalisation demo myshopify com/products/womens white printed hooded oversize knitted sweatshirt\\",\n \\"name\\" \\"women's printed hooded oversize knitted sweatshirt\\",\n \\"shortdesc\\" \\";;;; brand name fashi̇on room material cotton origin cn(origin)\\",\n \\"category\\" \\"all;;women sweatshirts\\",\n \\"typeofrecord\\" \\"klevu product\\"\n }\n ],\n \\"filters\\" \[]\n }\n ]\n}", "language" "200", "customlabel" "" } ], "selectedlanguageid" "3xlvmt855lgkjoht0npxg" }, "examples" { "languages" \[ { "id" "jsu7dlyyj euh63ysp682", "code" "{\n \\"recordqueries\\" \[\n {\n \\"id\\" \\"recshandpicked\\",\n \\"typeofrequest\\" \\"search\\",\n \\"settings\\" {\n \\"customandquery\\" \\"(id \\\\\\"34322453430403\\\\\\" or id \\\\\\"34322423840899\\\\\\")\\",\n \\"topids\\" \[\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322453430403\\"\n },\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322423840899\\"\n }\n ],\n \\"typeofrecords\\" \[\n \\"klevu product\\"\n ]\n }\n }\n ],\n \\"context\\" {\n \\"apikeys\\" \[\n \\"klevu 158755634955912036\\"\n ]\n }\n}", "language" "json", "customlabel" "request body (json)" }, { "id" "8yg33te4jzfowp5yebmjh", "code" "\<?php\n\n$curl = curl init();\n\ncurl setopt array($curl, array(\n curlopt url => 'https //eucs19v2 ksearchnet com/cs/v2/search',\n curlopt returntransfer => true,\n curlopt encoding => '',\n curlopt maxredirs => 10,\n curlopt timeout => 0,\n curlopt followlocation => true,\n curlopt http version => curl http version 1 1,\n curlopt customrequest => 'post',\n curlopt postfields =>'{\n \\"recordqueries\\" \[\n {\n \\"id\\" \\"recshandpicked\\",\n \\"typeofrequest\\" \\"search\\",\n \\"settings\\" {\n \\"customandquery\\" \\"(id \\\\\\\\\\"34322453430403\\\\\\\\\\" or id \\\\\\\\\\"34322423840899\\\\\\\\\\")\\",\n \\"topids\\" \[\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322453430403\\"\n },\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322423840899\\"\n }\n ],\n \\"typeofrecords\\" \[\n \\"klevu product\\"\n ]\n }\n }\n ],\n \\"context\\" {\n \\"apikeys\\" \[\n \\"klevu 158755634955912036\\"\n ]\n }\n}',\n curlopt httpheader => array(\n 'content type application/json'\n ),\n));\n\n$response = curl exec($curl);\n\ncurl close($curl);\necho $response;", "language" "php", "customlabel" "" }, { "id" "wcdgtssqaxfiwklk2v174", "code" "// warning for post requests, body is set to null by browsers \nvar data = json stringify({\n \\"recordqueries\\" \[\n {\n \\"id\\" \\"recshandpicked\\",\n \\"typeofrequest\\" \\"search\\",\n \\"settings\\" {\n \\"customandquery\\" \\"(id \\\\\\"34322453430403\\\\\\" or id \\\\\\"34322423840899\\\\\\")\\",\n \\"topids\\" \[\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322453430403\\"\n },\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322423840899\\"\n }\n ],\n \\"typeofrecords\\" \[\n \\"klevu product\\"\n ]\n }\n }\n ],\n \\"context\\" {\n \\"apikeys\\" \[\n \\"klevu 158755634955912036\\"\n ]\n }\n});\n\nvar xhr = new xmlhttprequest();\nxhr withcredentials = true;\n\nxhr addeventlistener(\\"readystatechange\\", function() {\n if(this readystate === 4) {\n console log(this responsetext);\n }\n});\n\nxhr open(\\"post\\", \\"https //eucs19v2 ksearchnet com/cs/v2/search\\");\nxhr setrequestheader(\\"content type\\", \\"application/json\\");\n\nxhr send(data);", "language" "javascript", "customlabel" "" }, { "id" "npw0nije j5r9i5w4bgn0", "code" "okhttpclient client = new okhttpclient() newbuilder()\n build();\nmediatype mediatype = mediatype parse(\\"application/json\\");\nrequestbody body = requestbody create(mediatype, \\"{\\\r\\\n \\\\\\"recordqueries\\\\\\" \[\\\r\\\n {\\\r\\\n \\\\\\"id\\\\\\" \\\\\\"recshandpicked\\\\\\",\\\r\\\n \\\\\\"typeofrequest\\\\\\" \\\\\\"search\\\\\\",\\\r\\\n \\\\\\"settings\\\\\\" {\\\r\\\n \\\\\\"customandquery\\\\\\" \\\\\\"(id \\\\\\\\\\\\\\"34322453430403\\\\\\\\\\\\\\" or id \\\\\\\\\\\\\\"34322423840899\\\\\\\\\\\\\\")\\\\\\",\\\r\\\n \\\\\\"topids\\\\\\" \[\\\r\\\n {\\\r\\\n \\\\\\"key\\\\\\" \\\\\\"id\\\\\\",\\\r\\\n \\\\\\"value\\\\\\" \\\\\\"34322453430403\\\\\\"\\\r\\\n },\\\r\\\n {\\\r\\\n \\\\\\"key\\\\\\" \\\\\\"id\\\\\\",\\\r\\\n \\\\\\"value\\\\\\" \\\\\\"34322423840899\\\\\\"\\\r\\\n }\\\r\\\n ],\\\r\\\n \\\\\\"typeofrecords\\\\\\" \[\\\r\\\n \\\\\\"klevu product\\\\\\"\\\r\\\n ]\\\r\\\n }\\\r\\\n }\\\r\\\n ],\\\r\\\n \\\\\\"context\\\\\\" {\\\r\\\n \\\\\\"apikeys\\\\\\" \[\\\r\\\n \\\\\\"klevu 158755634955912036\\\\\\"\\\r\\\n ]\\\r\\\n }\\\r\\\n}\\");\nrequest request = new request builder()\n url(\\"https //eucs19v2 ksearchnet com/cs/v2/search\\")\n method(\\"post\\", body)\n addheader(\\"content type\\", \\"application/json\\")\n build();\nresponse response = client newcall(request) execute();", "language" "java", "customlabel" "" }, { "id" "0ih7niekhhfml7cry51j ", "code" "var request = require('request');\nvar options = {\n 'method' 'post',\n 'url' 'https //eucs19v2 ksearchnet com/cs/v2/search',\n 'headers' {\n 'content type' 'application/json'\n },\n body json stringify({\n \\"recordqueries\\" \[\n {\n \\"id\\" \\"recshandpicked\\",\n \\"typeofrequest\\" \\"search\\",\n \\"settings\\" {\n \\"customandquery\\" \\"(id \\\\\\"34322453430403\\\\\\" or id \\\\\\"34322423840899\\\\\\")\\",\n \\"topids\\" \[\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322453430403\\"\n },\n {\n \\"key\\" \\"id\\",\n \\"value\\" \\"34322423840899\\"\n }\n ],\n \\"typeofrecords\\" \[\n \\"klevu product\\"\n ]\n }\n }\n ],\n \\"context\\" {\n \\"apikeys\\" \[\n \\"klevu 158755634955912036\\"\n ]\n }\n })\n\n};\nrequest(options, function (error, response) {\n if (error) throw new error(error);\n console log(response body);\n});", "language" "nodejs", "customlabel" "" } ], "selectedlanguageid" "jsu7dlyyj euh63ysp682" }, "description" "the end point is used for retrieving hand picked product recommendations ", "currentnewparameter" { "label" "body parameter", "value" "bodydataparameters" } } try it here!