{"metadata":{"image":[],"title":"","description":""},"api":{"url":"/search","auth":"required","results":{"codes":[{"status":200,"language":"json","code":"{\n    \"requestId\": \"dd906867-214a-4fb8-98fb-85c753481217\",\n    \"searchId\": \"dd906867-214a-4fb8-98fb-85c753481217\",\n    \"filters\": [\n        {\n            \"id\": 1,\n            \"attribute\": \"Categoria\",\n            \"type\": \"discrete\",\n            \"fType\": 1,\n            \"values\": [\n                {\n                    \"label\": \"Decoração\",\n                    \"size\": 2,\n                    \"idO\": \"Decoração\",\n                    \"id\": 6,\n                    \"applyLink\": \"/engage/search/v3/search?apikey=minhaapikey&terms=pote&filter=d:1:6\"\n                }\n            ]\n        },\n        {\n            \"id\": 2,\n            \"attribute\": \"Preço\",\n            \"type\": \"continuous\",\n            \"fType\": 2,\n            \"values\": [\n                {\n                    \"size\": 1,\n                    \"unityId\": 3,\n                    \"unN\": \"rs\",\n                    \"min\": {\n                        \"value\": 170,\n                        \"unity\": \"rs\",\n                        \"minN\": 170\n                    },\n                    \"max\": {\n                        \"value\": 250,\n                        \"unity\": \"rs\",\n                        \"maxN\": 250\n                    },\n                    \"applyLink\": \"/engage/search/v3/search?apikey=minhaapikey&terms=pote&filter=c:2:3:170:250\"\n                },\n                {\n                    \"size\": 1,\n                    \"unityId\": 3,\n                    \"unN\": \"rs\",\n                    \"min\": {\n                        \"value\": 260,\n                        \"unity\": \"rs\",\n                        \"minN\": 260\n                    },\n                    \"max\": {\n                        \"value\": 320,\n                        \"unity\": \"rs\",\n                        \"maxN\": 320\n                    },\n                    \"applyLink\": \"/engage/search/v3/search?apikey=minhaapikey&terms=pote&filter=c:2:3:260:320\"\n                }\n            ]\n        },\n        {\n            \"id\": 10,\n            \"attribute\": \"Marca\",\n            \"type\": \"discrete\",\n            \"values\": [\n                {\n                    \"label\": \"MeuDogCat\",\n                    \"size\": 2,\n                    \"id\": 27,\n                    \"applyLink\": \"/engage/search/v3/search?apikey=minhaapikey&terms=pote&filter=d:10:27\"\n                }\n            ]\n        }\n    ],\n    \"size\": 2,\n    \"pagination\": {\n        \"first\": \"/engage/search/v3/search?apikey=minhaapikey&terms=pote&page=1\",\n        \"last\": \"/engage/search/v3/search?apikey=minhaapikey&terms=pote&page=1\"\n    },\n    \"products\": [\n        {\n            \"id\": \"8264\",\n            \"name\": \"Comedouro Dog/Cat P Triplo\",\n            \"price\": 269,\n            \"oldPrice\": 269,\n            \"url\": \"//minhaapikey.com.br/MeuDogCat/produto/comedouro-miau-p-triplo-8264\",\n            \"images\": {\n                \"default\": \"//www.minhaapikey.com.br/fotos/1554470780929.jpg\"\n            },\n            \"installment\": [],\n            \"status\": \"AVAILABLE\",\n            \"clickUrl\": \"/engage/search/v3/clicks?apikey=minhaapikey&trackingId=eyJzZWFyY2hJZCI6ImRkOTA2ODY3LTIxNGEtNGZiOC05OGZiLTg1Yzc1MTk4MTIxNyIsIm9yaWdpbiI6InNlYXJjaCIsInByb2R1Y3QiOnsicmFua2luZyI6MSwicGlkIjoiODI2NCIsInNrdXMiOltdfX0%3D\",\n            \"categories\": [\n                {\n                    \"id\": \"Decoração\",\n                    \"name\": \"Decoração\",\n                    \"parents\": [],\n                    \"used\": true\n                }\n            ],\n            \"tags\": [],\n            \"specs\": {},\n            \"created\": \"2019-05-09 14:51:04\",\n            \"brand\": \"MeuDogCat\",\n            \"collectInfo\": {\n                \"skuList\": [],\n                \"productId\": \"8264\"\n            },\n            \"cId\": \"Decoração\",\n            \"iId\": 219,\n            \"skus\": [\n                {\n                    \"sku\": \"8264\",\n                    \"specs\": {},\n                    \"properties\": {\n                        \"status\": \"available\",\n                        \"oldPrice\": 269,\n                        \"price\": 269,\n                        \"url\": \"//minhaapikey.com.br/MeuDogCat/produto/comedouro-miau-p-triplo-8264\",\n                        \"images\": {\n                            \"default\": \"//www.minhaapikey.com.br/fotos/1554470780929.jpg\"\n                        }\n                    },\n                    \"customBusiness\": {}\n                }\n            ],\n            \"details\": {\n                \"categoryName\": [\n                    \"Decoração\"\n                ]\n            },\n            \"description\": \"Pensado para gatos e cães de pequeno porte.\",\n            \"customBusiness\": {\n              \"search\": {\n                 \"ads\": {\n                    \"boost\": true\n                 }\n              },\n              \"ads\": {\n                 \"clickLink\": \"https://api-ads.percycle.com/click/impulse/123?placement=search&chaordicShowcaseName=search&chaordicShowcaseId=b3fcd192-586b-4284-a222-4103676fc7c4&nm_ads_type=boost\",\n                 \"pageViewLink\": \"https://api-ads.percycle.com/page-view/impulse/123?placement=search&chaordicShowcaseName=search&chaordicShowcaseId=b3fcd192-586b-4284-a222-4103676fc7c4\",\n                 \"view\": \"https://api-ads.percycle.com/view/impulse/123?placement=search&chaordicShowcaseName=search&chaordicShowcaseId=b3fcd192-586b-4284-a222-4103676fc7c4\"\n              }\n           }\n        },\n        {\n            \"id\": \"1196\",\n            \"name\": \"Comedouro Dog/Cat P\",\n            \"price\": 199,\n            \"oldPrice\": 199,\n            \"url\": \"//minhaapikey.com.br/MeuDogCat/produto/comedouro-miau-p-1196\",\n            \"images\": {\n                \"default\": \"//www.minhaapikey.com.br/fotos/1549385751986.jpg\"\n            },\n            \"installment\": [],\n            \"status\": \"AVAILABLE\",\n            \"clickUrl\": \"/engage/search/v3/clicks?apikey=minhaapikey&trackingId=eyJzZWFyY2hJZCI6ImRkOTA2ODY3LTIxNGEtNGZiOC05OGZiLTg1Yzc1MTk4MTIxNyIsIm9yaWdpbiI6InNlYXJjaCIsInByb2R1Y3QiOnsicmFua2luZyI6MiwicGlkIjoiMTE5NiIsInNrdXMiOltdfX0%3D\",\n            \"categories\": [\n                {\n                    \"id\": \"Decoração\",\n                    \"name\": \"Decoração\",\n                    \"parents\": [],\n                    \"used\": true\n                }\n            ],\n            \"tags\": [],\n            \"specs\": {},\n            \"created\": \"2019-05-09 14:51:04\",\n            \"brand\": \"MeuDogCat\",\n            \"collectInfo\": {\n                \"skuList\": [],\n                \"productId\": \"1196\"\n            },\n            \"cId\": \"Decoração\",\n            \"iId\": 212,\n            \"skus\": [\n                {\n                    \"sku\": \"1196\",\n                    \"specs\": {},\n                    \"properties\": {\n                        \"status\": \"available\",\n                        \"oldPrice\": 199,\n                        \"price\": 199,\n                        \"url\": \"//minhaapikey.com.br/MeuDogCat/produto/comedouro-miau-p-1196\",\n                        \"images\": {\n                            \"default\": \"//www.minhaapikey.com.br/fotos/1549385751986.jpg\"\n                        }\n                    },\n                    \"customBusiness\": {}\n                }\n            ],\n            \"details\": {\n                \"categoryName\": [\n                    \"Decoração\"\n                ]\n            },\n            \"description\": \"Pensado para gatos e cães de pequeno porte.\",\n            \"customBusiness\": {\n              \"search\": {\n                 \"ads\": {\n                    \"boost\": true\n                 }\n              },\n              \"ads\": {\n                 \"clickLink\": \"https://api-ads.percycle.com/click/impulse/123?placement=search&chaordicShowcaseName=search&chaordicShowcaseId=b3fcd192-586b-4284-a222-4103676fc7c4&nm_ads_type=boost\",\n                 \"pageViewLink\": \"https://api-ads.percycle.com/page-view/impulse/123?placement=search&chaordicShowcaseName=search&chaordicShowcaseId=b3fcd192-586b-4284-a222-4103676fc7c4\",\n                 \"view\": \"https://api-ads.percycle.com/view/impulse/123?placement=search&chaordicShowcaseName=search&chaordicShowcaseId=b3fcd192-586b-4284-a222-4103676fc7c4\"\n              }\n           }\n        }\n    ],\n    \"suggestions\": [\n        {\n            \"query\": \"pote para alimentos\",\n            \"link\": \"/engage/search/v3/search?origin=suggestion&apikey=minhaapikey&terms=pote%20para%20alimentos\"\n        }\n    ],\n    \"banners\": [\n        {\n            \"header\": \"<html></html>\",\n            \"left\": \"<html></html>\"\n        }\n    ],\n    \"quickFilters\": [\n        {\n            \"name\": \"Pote para Cachorros\",\n            \"applyLink\": \"https://www.minhaloja.com.br/store/pt/busca/?terms=pote&field=animal:cachorro&origem=co\",\n            \"image\": \"https://www.minhaapikey.com.br/fotos/1549142751981.jpg\",\n            \"type\": \"url\"\n        },\n        {\n            \"name\": \"Pote para Gatos\",\n            \"applyLink\": \"https://www.minhaloja.com.br/store/pt/busca/?terms=pote&field=animal:gato&origem=co\",\n            \"image\": \"https://www.minhaapikey.com.br/fotos/1549385712984.jpg\",\n            \"type\": \"url\"\n        },\n        {\n            \"name\": \"Outros acessórios\",\n            \"applyLink\": \"https://www.minhaloja.com.br/animais/acessorios&origem=co\",\n            \"image\": \"https://www.minhaapikey.com.br/fotos/15493857123213.jpg\",\n            \"type\": \"url\"\n        }\n    ],\n    \"queries\": {\n        \"original\": \"pote\",\n        \"normalized\": \"pote\",\n        \"processed\": \"pote\",\n        \"queryType\": \"found\"\n    }\n}\n","name":""},{"name":"Redirect","status":302,"language":"json","code":"HTTP/1.1 302 Found\nLocation: www.apikey.com.br/redirect/produtos\nX-Linx-Request-Id: 9957959ec1ef72512ee7c18fa4a377b8\nX-Linx-Request-Time: 1484242345843\n\n{\n    \"queryType\": \"redirect\",\n    \"link\": \"http://www.sualoja.com.br/ulr_redirect/nova\",\n    \"query\": {\n        \"original\": \"termo redirecionado\"\n    }\n}"},{"status":404,"language":"json","code":"HTTP/1.1 404 Not Found\nX-Linx-Request-Id: 9957959ec1ef72512ee7c18fa4a377b8\nX-Linx-Request-Time: 1484242345843\n\n{\n    \"code\": 3001,\n    \"message\": \"Query not found\"\n}"},{"status":401,"language":"json","code":"HTTP/1.1 401 Unauthorized\n{\n    \"code\": 1008,\n    \"message\": \"Invalid Secret Key\"\n}"},{"status":500,"language":"json","code":"HTTP/1.1 500 Internal Server Error\n{\n \"message\": \"Error: Internal Server Error\"\n}"},{"status":400,"code":"HTTP/1.1 400 Bad Request\n{\n \"message\": \"Invalid request: missing parameters\"\n}","language":"json"}]},"settings":"58bd78f5816ab10f00d45fd6","params":[{"name":"apikey","type":"string","default":"","desc":"Não sabe qual a apiKey da sua loja? Solicite ao responsável técnico de integração enviando um email para atendimento:::at:::chaordic.com.br","required":true,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45fb3"},{"name":"secretkey","type":"string","default":"","desc":"Não sabe qual a secretKey da sua loja? Solicite ao responsável técnico de integração enviando um email para [email protected]","required":true,"in":"query","ref":"","_id":"592edc9e1cd2c400257ef1a5"},{"name":"terms","type":"string","default":"","desc":"Termos da consulta que deseja-se realizar.","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45fb2"},{"name":"pids","type":"string","default":"","desc":"IDs de produtos a serem consultados, devem ser IDs válidos da loja. Para consultar mais de um ID, insira um campo adicional.","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45fb1"},{"name":"page","type":"int","default":"1","desc":"Número da página. Em casos onde o resultado possui muitos produtos, estes são segmentados por páginas. Caso esse parâmetro não seja enviado, os produtos retornados serão referentes à primeira página.","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45fb0"},{"name":"resultsPerPage","type":"int","default":"20","desc":"Número de produtos retornados por página.","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45faf"},{"name":"sortBy","type":"string","default":"relevance","desc":"Método de ordenação. Os métodos de ordenação suportados são: <ul> <li><b>relevance</b>: Relevância; </li> <li><b>pid</b>: Id de produto </li> <li><b>ascPrice</b>: Menor preço;</li> <li><b>descPrice</b>: Maior preço;</li> <li><b>descDate</b>: Lançamentos;</li> <li><b>ascSold</b>: Menor venda;</li> <li><b>descSold</b>: Maior venda;</li> <li><b>ascReview</b>: Menor avaliação;</li> <li><b>descReview</b>: Maior avaliação;</li> <li><b>descDiscount</b>: Maiores descontos.</li> </ul>","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45fae"},{"name":"salesChannel","type":"string","default":"","desc":"ID de canais de vendas. Para consultar mais de um canal, insira um campo adicional.","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45fab"},{"name":"hide","type":"string","default":"","desc":"Desativa retorno de campos na resposta. Por padrão todos os campos são ativos. Para incluir mais de uma opção, insira um campo adicional. <br> Valores permitidos: <li>products</li><li>quickFilters</li> <li>banners</li> <li>adSearches</li> <li>suggestions</li> <li>filters</li>","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45faa"},{"name":"productFormat","type":"string","default":"complete","desc":"Define o formato de resposta dos produtos. Por padrão todos os campos são ativos.  <ul> <li><b>onlyIds</b>: retorna apenas id de produto</li>    <ul>   <li><b>id</b>: id do produto</li>   </ul> <li><b>complete</b>: retorna todos os campos   <ul>   <li><b>id</b>: id do produto</li>   <li><b>status</b>: status do produto</li>   <li><b>name</b>: nome/título do produto</li>   <li><b>price</b>: preço de venda do produto</li>   <li><b>oldPrice</b>: preço original do produto</li>   <li><b>description</b>: descrição do produto</li>   <li><b>url</b>: url do produto</li>   <li><b>images</b>: imagens do produto</li>   <li><b>installment</b>: objeto de parcelamento do produto</li>   <li><b>details</b>: objeto com lista de atributos do produto</li>   <li><b>skus</b>: lista de skus do produto</li>   <li><b>customBusiness.search</b>: informações ligadas ao processamento de features específicas do serviço de busca.<b>Opcional</b></li>   <li><b>customBusiness.ads</b>: informações do cadastro de patrocínio.<b>Opcional</b></li>   </ul> </li>  <li><b>compact</b>: retorna apenas alguns campos   <ul>   <li><b>id</b>: id do produto</li>   <li><b>name</b>: nome/título do produto</li>   <li><b>price</b>: preço de venda do produto</li>   <li><b>oldPrice</b>: preço original do produto</li>   <li><b>url</b>: url do produto</li>   <li><b>images</b>: imagens do produto</li>   <li><b>installment</b>: objeto de parcelamento do produto</li>   <li><b>customBusiness.search</b>: informações ligadas ao processamento de features específicas do serviço de busca.<b>Opcional</b></li>   <li><b>customBusiness.ads</b>: informações do cadastro de patrocínio.<b>Opcional</b></li>   </ul> </li>  </ul> Valores permitidos: <li>onlyIds</li> <li>complete</li> <li>compact</li>","required":false,"in":"query","ref":"","_id":"58bd6ca5816ab10f00d45fa9"},{"name":"showOnlyAvailable","type":"boolean","default":"false","desc":"Define se o resultado de busca vai ser composto apenas por produtos com status disponível.","required":false,"in":"query","ref":"","_id":"5a0da69b884a8f00263c7051"},{"name":"allowRedirect","type":"boolean","default":"true","desc":"Permite ou bloqueia o redirecionamento de consultas. Caso seja passado \"false\", a API retornará resultados para o termo buscado mesmo se há cadastro de redirecionamentos no Dashboard para este termo.","required":false,"in":"query","ref":"","_id":"5aecfd9d40c8920003bb9d0a"},{"name":"filter","type":"string","default":"","desc":"Define qual filtro será aplicado. Pode ser aplicado filtro discreto ou contínuo. <ul><li><b>d:<id atributo>:<id valor></b>: filtro discreto que retorna os produtos que possuem atributo <id atributo> com valor <id valor></li> <li><b>c:<id atributo>:<id unidade>:<valor min>:<valor max></b>: filtro contínuo que retorna os produtos que possuem atributo do tipo <id atributo> com valor entre <valor min> e <valor max>  e que a unidade de medida do valor seja <id unidade></li> </ul>","required":false,"in":"query","ref":"","_id":"5d373fb5cd90590011d3951e"},{"name":"deviceId","type":"string","default":"","desc":"Identificador único do device.","required":false,"in":"query","ref":"","_id":"5da96a02be8b8500739e6005"},{"name":"userId","type":"string","default":"","desc":"Id do usuário. Deve ser o mesmo identificador utilizado no site.","required":false,"in":"query","ref":"","_id":"5da96a02be8b8500739e6004"}],"examples":{"codes":[]},"method":"get"},"next":{"description":"","pages":[]},"title":"/search","type":"endpoint","slug":"search","excerpt":"A busca é utilizada para encontrar produtos através de uma consulta por termo ou id de produto. A busca personalizada utiliza diversas informações de sua loja, como dados de navegação e consumo para encontrar os produtos mais adequados à consulta de cada usuário. Esta request realiza uma consulta por um termo, id de produto ou conjunto de ids de produtos, retornando os produtos e features complementares resultantes.","body":"<h3>Como fazer a consulta?</h3>\nPara realizar uma consulta, você pode passar um termo para a consulta\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://api.linximpulse.com/engage/search/v3/search?apiKey=<loja>&secretKey=<secretKey>&terms=celular+samsung\",\n      \"language\": \"curl\"\n    }\n  ]\n}\n[/block]\nVocê também pode passar um ou vários ID de produto para a consulta\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://api.linximpulse.com/engage/search/v3/search?apiKey=<loja>&secretKey=<secretKey>&pids=P123458&pids=P987753\",\n      \"language\": \"curl\"\n    }\n  ]\n}\n[/block]\nPara filtrar as consultas, realizar ações de paginação ou outras interações com a API, fornecemos links prontos, basta utilizá-los, incluindo sua secretKey.\n\n<h3>Como é a resposta?</h3>\nOs produtos retornados estarão no campo **products**. O formato/conteúdo de cada produto no **products** está listado acima na seção **Parameters** na explicação do campo **productFormat**. É importante notar que alguns valores retornados no **products** são opcionais, ou seja, nem sempre serão retornados, por exemplo o campo **customBusiness**.\n\nExistem outros campos que são retornados conforme a resposta para aquela consulta. Os principais campos estão descritos abaixo.\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"**suggestions**\",\n    \"3-0\": \"**banners**\",\n    \"2-0\": \"**quickFilters**\",\n    \"1-0\": \"**filters**\",\n    \"h-0\": \"Campo\",\n    \"h-1\": \"Descrição\",\n    \"2-1\": \"Permite que algumas consultas exibam de maneira destacada um conjunto pré-determinado de filtros para que o usuário possa direcionar o seu foco. Recomenda-se o uso em consultas muito genéricas. Por exemplo, a consulta \\\"samsung\\\" pode ser feita por um usuário buscando tvs, notebooks ou celulares. Neste caso, a utilização de um quickFilter ajudaria o usuário a direcionar o seu interesse. O retorno é uma lista de opções que o usuário pode selecionar para filtrar os produtos retornados pela consulta.\",\n    \"3-1\": \"Banner a ser exibido na página de resultados. Algumas consultas podem ter banners associados a ela, neste caso eles serão retornados neste campo.\",\n    \"0-1\": \"Algumas consultas podem possuir sugestões de consultas relacionadas.\",\n    \"1-1\": \"Lista de filtros retornados pela consulta. Cada filtro pode ser de um tipo, identificaod no campo **type**. Os valores possíveis são:\\n<ul>\\n<li>discrete: Não há a noção de ordem entre os valores. Ex.: marca, cor.</li>\\n<li> continuous: Os valores podem ser agrupados de maneira ordenada. Ex.: preço, peso.</li>\\n<li>range: Os valores podem ser agrupados de maneira ordenada mas cada produto atende a uma faixa de valores. Ex.: suporte de tv (tamanhos 32\\\" a 50\\\").</li>\\n<ul>\"\n  },\n  \"cols\": 2,\n  \"rows\": 4\n}\n[/block]\nAlguns campos existentes na resposta possuem valores padrões. Abaixo descrevemos alguns desses campos.\n\nO campo **queries** traz informações referentes à consulta realizada, como por exemplo a consulta original e normalizada. Um dos campos retornados é o **queryType**, onde você pode identificar qual o tipo de consulta foi realizada. Os possíveis valores retornados estão descritos abaixo. Observe, também, o código de resposta da pode variar conforme este tipo.\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"**found**\",\n    \"1-0\": \"**corrected**\",\n    \"2-0\": \"**aproximated**\",\n    \"3-0\": \"**notfound**\",\n    \"4-0\": \"**redirect**\",\n    \"0-1\": \"200\",\n    \"1-1\": \"200\",\n    \"2-1\": \"200\",\n    \"3-1\": \"404\",\n    \"4-1\": \"302\",\n    \"0-2\": \"Houve ao menos um produto com os termos pesquisados.\",\n    \"1-2\": \"Foi identificado um erro de digitação na consulta enviada e ela foi corrigida (ex.: \\\"notebok\\\" pode ser corrigido para \\\"notebook\\\").\",\n    \"2-2\": \"Nenhum produto possui todos os termos da consulta, busca-se então por produtos com parte dos termos consultados. (ex.: \\\"notebook sony vaio\\\" pode ser corrigido para \\\"notebook sony\\\").\",\n    \"3-2\": \"Não houve nenhum produto com os termos pesquisados.\",\n    \"4-2\": \"Redirecionamento. A consulta está cadastrada como redirect e deve enviar o usuário a outra página, nesse caso são retornados apenas os campos \\\"queries.queryType\\\" e \\\"queries.original\\\".\",\n    \"h-0\": \"Valor\",\n    \"h-1\": \"Code\",\n    \"h-2\": \"Descrição\"\n  },\n  \"cols\": 3,\n  \"rows\": 5\n}\n[/block]\nO campo **pagination** traz informações referentes à paginação. Em casos onde o resultado possui muitos produtos, estes são segmentados por páginas. Este campo é um objeto que pode possuir os campos abaixo:\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"**first** \",\n    \"0-1\": \"Url da primeira página de resultados. Por padrão seu número é 1.\",\n    \"1-0\": \"**last**\",\n    \"1-1\": \"Url da última página de resultados.\",\n    \"2-0\": \"**next**\",\n    \"2-1\": \"Url da próxima página de resultados. Por padrão seu valor é a página atual+1.\",\n    \"3-0\": \"**previous**\",\n    \"3-1\": \"Url da página anterior de resultados. Por padrão seu valor é a página atual-1\",\n    \"h-0\": \"Campo\",\n    \"h-1\": \"Descrição\"\n  },\n  \"cols\": 2,\n  \"rows\": 4\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"Tracking de eventos\"\n}\n[/block]\n# Eventos de click\n\nCada produto do resultado da busca contém um campo chamado **clickUrl**.\n\nEste campo fornece uma URL da API de Busca, na rota [/clicks](doc:clicks) que deverá ser usada para registrar todos os eventos de click dos usuários da aplicação com os produtos do resultado da busca. É por meio destes registros que geramos métricas de performance da busca, além de melhorar as estratégias para acertar em cheio cada resultado.. \n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    id: \\\"10005354\\\",\\n  \\tname: \\\"oculos\\\",\\n  \\tprice: 249.98,\\n  \\toldPrice: 249.98,\\n  \\turl: \\\"...\\\",\\n  \\timages: {\\n        template-418481: \\\"...\\\",\\n      \\t1000x1000: \\\"...\\\"\\n  \\t},\\n  \\tinstallment: {\\n        count: 6,\\n      \\tprice: 41.66\\n  \\t},\\n  \\tstatus: \\\"AVAILABLE\\\",\\n  \\tclickUrl: \\\"/searchapi/v3/clicks?apikey=loja&trackingId=eyJzZWFyY2hJZCI6IjQ1NTE5MDkwLTQxMDktNGM1MC1hNGZmLTYwMGM0YTZhOWVkZiIsIm9yaWdpbiI6InNlYXJjaCIsInByb2R1Y3QiOnsicmFua2luZyI6MSwicGlkIjoiMTAwMDUzNTciLCJza3VzIjpbXX19\\\",\\n  \\tcategories: [\\n      {\\n        id: \\\"ÓCULOS DE SOL\\\",\\n        name: \\\"ÓCULOS DE SOL\\\",\\n        parents: [ ],\\n        used: true\\n      }\\n\\t  ],\\n    tags: [\\n      {\\n        id: \\\"oculos_de_sol\\\",\\n        name: \\\"ÓCULOS DE SOL\\\",\\n        parents: [ ]\\n      }\\n    ],\\n    specs: { },\\n    created: \\\"2018-08-02 11:52:51\\\",\\n    brand: null,\\n    collectInfo: {\\n      skuList: [ ],\\n      productId: \\\"10005354\\\"\\n    },\\n    cId: \\\"84\\\",\\n    iId: 10641,\\n    skus: [\\n\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\tsku: \\\"2067712\\\",\\n            specs: { },\\n            properties: {\\n                stock: 1,\\n                name: \\\"oculos\\\",\\n                oldPrice: 249.98,\\n                url: \\\"...\\\",\\n                price: 249.98,\\n                eanCode: \\\"7909140245889\\\",\\n                status: \\\"available\\\",\\n                details: {\\n                    referenceId: \\\"7909140245889\\\",\\n                    measurement: {\\n                        unit: \\\"un\\\",\\n                        multiplier: 1\\n                    }\\n                },\\n                installment: {\\n                    price: 41.66,\\n                    count: 6\\n                },\\n                images: {\\n                    template-418481: \\\"...\\\",\\n                    1000x1000: \\\"...\\\"          \\n                }\\n            }\\n    \\t\\t}\\n    ],\\n    details: {\\n        productReference: [\\n        \\t\\t\\\"...\\\"\\n        ],\\n        clusterHighlights: [\\n            {\\n                178: \\\"Mais Vistos\\\",\\n                192: \\\"Todos produtos\\\",\\n                246: \\\"lightbox-oculos\\\",\\n                247: \\\"modal-oculos\\\"\\n            }\\n\\t\\t\\t\\t],\\n\\t\\t\\t\\tbrand: [\\n          \\\"...\\\"\\n        ],\\n        referenceId: [\\n          \\\"7909140245889\\\"\\n        ],\\n        measurement: [\\n        \\t\\t{\\n                unit: \\\"un\\\",\\n                multiplier: 1\\n\\t\\t\\t\\t\\t\\t}\\n        ],\\n        categoryName: [\\n        \\t\\t\\\"ÓCULOS DE SOL\\\"\\n        ]\\n    },\\n    description: \\\"...\\\"\\n}\",\n      \"language\": \"json\"\n    }\n  ]\n}\n[/block]\nAo clickUrl deverá ser adicionada a URL base da API no início e ao final os parâmetros exigidos pela rota de click. Detalhes dos parâmetros da rota de click podem ser encontados na documentação [/clicks](doc:clicks) \n\nPor exemplo:\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://api.linximpulse.com/engage/searchapi/v3/clicks?apikey=loja&trackingId=eyJzZWFyY2hJZCI6IjQ1NTE5MDkwLTQxMDktNGM1MC1hNGZmLTYwMGM0YTZhOWVkZiIsIm9yaWdpbiI6InNlYXJjaCIsInByb2R1Y3QiOnsicmFua2luZyI6MSwicGlkIjoiMTAwMDUzNTciLCJza3VzIjpbXX19&deviceid=teste&source=desktop\",\n      \"language\": \"http\"\n    }\n  ]\n}\n[/block]\nÉ recomendado que este evento seja disparado somente depois que o usuário acessar a página do produto, evitando assim que o browser cancele a requisição caso a página de produto seja carregada antes que o disparo tenha sido concluído.\n\nA [Coleta de Dados](doc:coleta-de-dados) é parte essencial da implementação, pois sem ela não haverá aumento de performance nos resultados de busca e nem métricas disponíveis para você acompanhar o desempenho em produção.","updates":[],"order":3,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"5d00029d39c2920014e3170e","githubsync":"","user":"5760739a30e27d0e00002a9f","createdAt":"2017-03-06T13:53:51.876Z","parentDoc":null,"project":"55c3572a57f7f32d0016ec3d","category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"API de busca","slug":"api-de-busca","order":8,"from_sync":false,"reference":false,"_id":"5d00029d39c2920014e316e3","project":"55c3572a57f7f32d0016ec3d","createdAt":"2017-03-06T13:18:21.954Z","__v":0,"version":"5d00029d39c2920014e31722"},"__v":41,"version":{"version":"3-search","version_clean":"3.0.0-search","codename":"API de Busca pelo time de Integração","is_stable":false,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["5d00029d39c2920014e316db","5d00029d39c2920014e316dc","5d00029d39c2920014e316dd","5d00029d39c2920014e316de","5d00029d39c2920014e316df","5d00029d39c2920014e316e0","5d00029d39c2920014e316e1","5d00029d39c2920014e316e2","5d00029d39c2920014e316e3","5d00029d39c2920014e316e4","5d00029d39c2920014e316e5","5d00029d39c2920014e316e6"],"_id":"5d00029d39c2920014e31722","project":"55c3572a57f7f32d0016ec3d","__v":0,"forked_from":"590a413d12d47a3700f83c8e","createdAt":"2017-05-03T20:44:45.480Z","releaseDate":"2017-05-03T20:44:45.480Z"}}

get/search

A busca é utilizada para encontrar produtos através de uma consulta por termo ou id de produto. A busca personalizada utiliza diversas informações de sua loja, como dados de navegação e consumo para encontrar os produtos mais adequados à consulta de cada usuário. Esta request realiza uma consulta por um termo, id de produto ou conjunto de ids de produtos, retornando os produtos e features complementares resultantes.

Definition

{{ api_url }}{{ page_api_url }}

Parameters

Query Params

apikey:
required
string
Não sabe qual a apiKey da sua loja? Solicite ao responsável técnico de integração enviando um email para [email protected]
secretkey:
required
string
Não sabe qual a secretKey da sua loja? Solicite ao responsável técnico de integração enviando um email para [email protected]
terms:
string
Termos da consulta que deseja-se realizar.
pids:
string
IDs de produtos a serem consultados, devem ser IDs válidos da loja. Para consultar mais de um ID, insira um campo adicional.
page:
integer1
Número da página. Em casos onde o resultado possui muitos produtos, estes são segmentados por páginas. Caso esse parâmetro não seja enviado, os produtos retornados serão referentes à primeira página.
resultsPerPage:
integer20
Número de produtos retornados por página.
sortBy:
stringrelevance
Método de ordenação. Os métodos de ordenação suportados são: <ul> <li><b>relevance</b>: Relevância; </li> <li><b>pid</b>: Id de produto </li> <li><b>ascPrice</b>: Menor preço;</li> <li><b>descPrice</b>: Maior preço;</li> <li><b>descDate</b>: Lançamentos;</li> <li><b>ascSold</b>: Menor venda;</li> <li><b>descSold</b>: Maior venda;</li> <li><b>ascReview</b>: Menor avaliação;</li> <li><b>descReview</b>: Maior avaliação;</li> <li><b>descDiscount</b>: Maiores descontos.</li> </ul>
salesChannel:
string
ID de canais de vendas. Para consultar mais de um canal, insira um campo adicional.
hide:
string
Desativa retorno de campos na resposta. Por padrão todos os campos são ativos. Para incluir mais de uma opção, insira um campo adicional. <br> Valores permitidos: <li>products</li><li>quickFilters</li> <li>banners</li> <li>adSearches</li> <li>suggestions</li> <li>filters</li>
productFormat:
stringcomplete
Define o formato de resposta dos produtos. Por padrão todos os campos são ativos. <ul> <li><b>onlyIds</b>: retorna apenas id de produto</li> <ul> <li><b>id</b>: id do produto</li> </ul> <li><b>complete</b>: retorna todos os campos <ul> <li><b>id</b>: id do produto</li> <li><b>status</b>: status do produto</li> <li><b>name</b>: nome/título do produto</li> <li><b>price</b>: preço de venda do produto</li> <li><b>oldPrice</b>: preço original do produto</li> <li><b>description</b>: descrição do produto</li> <li><b>url</b>: url do produto</li> <li><b>images</b>: imagens do produto</li> <li><b>installment</b>: objeto de parcelamento do produto</li> <li><b>details</b>: objeto com lista de atributos do produto</li> <li><b>skus</b>: lista de skus do produto</li> <li><b>customBusiness.search</b>: informações ligadas ao processamento de features específicas do serviço de busca.<b>Opcional</b></li> <li><b>customBusiness.ads</b>: informações do cadastro de patrocínio.<b>Opcional</b></li> </ul> </li> <li><b>compact</b>: retorna apenas alguns campos <ul> <li><b>id</b>: id do produto</li> <li><b>name</b>: nome/título do produto</li> <li><b>price</b>: preço de venda do produto</li> <li><b>oldPrice</b>: preço original do produto</li> <li><b>url</b>: url do produto</li> <li><b>images</b>: imagens do produto</li> <li><b>installment</b>: objeto de parcelamento do produto</li> <li><b>customBusiness.search</b>: informações ligadas ao processamento de features específicas do serviço de busca.<b>Opcional</b></li> <li><b>customBusiness.ads</b>: informações do cadastro de patrocínio.<b>Opcional</b></li> </ul> </li> </ul> Valores permitidos: <li>onlyIds</li> <li>complete</li> <li>compact</li>
showOnlyAvailable:
booleanfalse
Define se o resultado de busca vai ser composto apenas por produtos com status disponível.
allowRedirect:
booleantrue
Permite ou bloqueia o redirecionamento de consultas. Caso seja passado "false", a API retornará resultados para o termo buscado mesmo se há cadastro de redirecionamentos no Dashboard para este termo.
filter:
string
Define qual filtro será aplicado. Pode ser aplicado filtro discreto ou contínuo. <ul><li><b>d:<id atributo>:<id valor></b>: filtro discreto que retorna os produtos que possuem atributo <id atributo> com valor <id valor></li> <li><b>c:<id atributo>:<id unidade>:<valor min>:<valor max></b>: filtro contínuo que retorna os produtos que possuem atributo do tipo <id atributo> com valor entre <valor min> e <valor max> e que a unidade de medida do valor seja <id unidade></li> </ul>
deviceId:
string
Identificador único do device.
userId:
string
Id do usuário. Deve ser o mesmo identificador utilizado no site.

Result Format


Documentation

<h3>Como fazer a consulta?</h3> Para realizar uma consulta, você pode passar um termo para a consulta [block:code] { "codes": [ { "code": "https://api.linximpulse.com/engage/search/v3/search?apiKey=<loja>&secretKey=<secretKey>&terms=celular+samsung", "language": "curl" } ] } [/block] Você também pode passar um ou vários ID de produto para a consulta [block:code] { "codes": [ { "code": "https://api.linximpulse.com/engage/search/v3/search?apiKey=<loja>&secretKey=<secretKey>&pids=P123458&pids=P987753", "language": "curl" } ] } [/block] Para filtrar as consultas, realizar ações de paginação ou outras interações com a API, fornecemos links prontos, basta utilizá-los, incluindo sua secretKey. <h3>Como é a resposta?</h3> Os produtos retornados estarão no campo **products**. O formato/conteúdo de cada produto no **products** está listado acima na seção **Parameters** na explicação do campo **productFormat**. É importante notar que alguns valores retornados no **products** são opcionais, ou seja, nem sempre serão retornados, por exemplo o campo **customBusiness**. Existem outros campos que são retornados conforme a resposta para aquela consulta. Os principais campos estão descritos abaixo. [block:parameters] { "data": { "0-0": "**suggestions**", "3-0": "**banners**", "2-0": "**quickFilters**", "1-0": "**filters**", "h-0": "Campo", "h-1": "Descrição", "2-1": "Permite que algumas consultas exibam de maneira destacada um conjunto pré-determinado de filtros para que o usuário possa direcionar o seu foco. Recomenda-se o uso em consultas muito genéricas. Por exemplo, a consulta \"samsung\" pode ser feita por um usuário buscando tvs, notebooks ou celulares. Neste caso, a utilização de um quickFilter ajudaria o usuário a direcionar o seu interesse. O retorno é uma lista de opções que o usuário pode selecionar para filtrar os produtos retornados pela consulta.", "3-1": "Banner a ser exibido na página de resultados. Algumas consultas podem ter banners associados a ela, neste caso eles serão retornados neste campo.", "0-1": "Algumas consultas podem possuir sugestões de consultas relacionadas.", "1-1": "Lista de filtros retornados pela consulta. Cada filtro pode ser de um tipo, identificaod no campo **type**. Os valores possíveis são:\n<ul>\n<li>discrete: Não há a noção de ordem entre os valores. Ex.: marca, cor.</li>\n<li> continuous: Os valores podem ser agrupados de maneira ordenada. Ex.: preço, peso.</li>\n<li>range: Os valores podem ser agrupados de maneira ordenada mas cada produto atende a uma faixa de valores. Ex.: suporte de tv (tamanhos 32\" a 50\").</li>\n<ul>" }, "cols": 2, "rows": 4 } [/block] Alguns campos existentes na resposta possuem valores padrões. Abaixo descrevemos alguns desses campos. O campo **queries** traz informações referentes à consulta realizada, como por exemplo a consulta original e normalizada. Um dos campos retornados é o **queryType**, onde você pode identificar qual o tipo de consulta foi realizada. Os possíveis valores retornados estão descritos abaixo. Observe, também, o código de resposta da pode variar conforme este tipo. [block:parameters] { "data": { "0-0": "**found**", "1-0": "**corrected**", "2-0": "**aproximated**", "3-0": "**notfound**", "4-0": "**redirect**", "0-1": "200", "1-1": "200", "2-1": "200", "3-1": "404", "4-1": "302", "0-2": "Houve ao menos um produto com os termos pesquisados.", "1-2": "Foi identificado um erro de digitação na consulta enviada e ela foi corrigida (ex.: \"notebok\" pode ser corrigido para \"notebook\").", "2-2": "Nenhum produto possui todos os termos da consulta, busca-se então por produtos com parte dos termos consultados. (ex.: \"notebook sony vaio\" pode ser corrigido para \"notebook sony\").", "3-2": "Não houve nenhum produto com os termos pesquisados.", "4-2": "Redirecionamento. A consulta está cadastrada como redirect e deve enviar o usuário a outra página, nesse caso são retornados apenas os campos \"queries.queryType\" e \"queries.original\".", "h-0": "Valor", "h-1": "Code", "h-2": "Descrição" }, "cols": 3, "rows": 5 } [/block] O campo **pagination** traz informações referentes à paginação. Em casos onde o resultado possui muitos produtos, estes são segmentados por páginas. Este campo é um objeto que pode possuir os campos abaixo: [block:parameters] { "data": { "0-0": "**first** ", "0-1": "Url da primeira página de resultados. Por padrão seu número é 1.", "1-0": "**last**", "1-1": "Url da última página de resultados.", "2-0": "**next**", "2-1": "Url da próxima página de resultados. Por padrão seu valor é a página atual+1.", "3-0": "**previous**", "3-1": "Url da página anterior de resultados. Por padrão seu valor é a página atual-1", "h-0": "Campo", "h-1": "Descrição" }, "cols": 2, "rows": 4 } [/block] [block:api-header] { "title": "Tracking de eventos" } [/block] # Eventos de click Cada produto do resultado da busca contém um campo chamado **clickUrl**. Este campo fornece uma URL da API de Busca, na rota [/clicks](doc:clicks) que deverá ser usada para registrar todos os eventos de click dos usuários da aplicação com os produtos do resultado da busca. É por meio destes registros que geramos métricas de performance da busca, além de melhorar as estratégias para acertar em cheio cada resultado.. [block:code] { "codes": [ { "code": "{\n id: \"10005354\",\n \tname: \"oculos\",\n \tprice: 249.98,\n \toldPrice: 249.98,\n \turl: \"...\",\n \timages: {\n template-418481: \"...\",\n \t1000x1000: \"...\"\n \t},\n \tinstallment: {\n count: 6,\n \tprice: 41.66\n \t},\n \tstatus: \"AVAILABLE\",\n \tclickUrl: \"/searchapi/v3/clicks?apikey=loja&trackingId=eyJzZWFyY2hJZCI6IjQ1NTE5MDkwLTQxMDktNGM1MC1hNGZmLTYwMGM0YTZhOWVkZiIsIm9yaWdpbiI6InNlYXJjaCIsInByb2R1Y3QiOnsicmFua2luZyI6MSwicGlkIjoiMTAwMDUzNTciLCJza3VzIjpbXX19\",\n \tcategories: [\n {\n id: \"ÓCULOS DE SOL\",\n name: \"ÓCULOS DE SOL\",\n parents: [ ],\n used: true\n }\n\t ],\n tags: [\n {\n id: \"oculos_de_sol\",\n name: \"ÓCULOS DE SOL\",\n parents: [ ]\n }\n ],\n specs: { },\n created: \"2018-08-02 11:52:51\",\n brand: null,\n collectInfo: {\n skuList: [ ],\n productId: \"10005354\"\n },\n cId: \"84\",\n iId: 10641,\n skus: [\n\t\t\t\t{\n\t\t\t\t\t\tsku: \"2067712\",\n specs: { },\n properties: {\n stock: 1,\n name: \"oculos\",\n oldPrice: 249.98,\n url: \"...\",\n price: 249.98,\n eanCode: \"7909140245889\",\n status: \"available\",\n details: {\n referenceId: \"7909140245889\",\n measurement: {\n unit: \"un\",\n multiplier: 1\n }\n },\n installment: {\n price: 41.66,\n count: 6\n },\n images: {\n template-418481: \"...\",\n 1000x1000: \"...\" \n }\n }\n \t\t}\n ],\n details: {\n productReference: [\n \t\t\"...\"\n ],\n clusterHighlights: [\n {\n 178: \"Mais Vistos\",\n 192: \"Todos produtos\",\n 246: \"lightbox-oculos\",\n 247: \"modal-oculos\"\n }\n\t\t\t\t],\n\t\t\t\tbrand: [\n \"...\"\n ],\n referenceId: [\n \"7909140245889\"\n ],\n measurement: [\n \t\t{\n unit: \"un\",\n multiplier: 1\n\t\t\t\t\t\t}\n ],\n categoryName: [\n \t\t\"ÓCULOS DE SOL\"\n ]\n },\n description: \"...\"\n}", "language": "json" } ] } [/block] Ao clickUrl deverá ser adicionada a URL base da API no início e ao final os parâmetros exigidos pela rota de click. Detalhes dos parâmetros da rota de click podem ser encontados na documentação [/clicks](doc:clicks) Por exemplo: [block:code] { "codes": [ { "code": "https://api.linximpulse.com/engage/searchapi/v3/clicks?apikey=loja&trackingId=eyJzZWFyY2hJZCI6IjQ1NTE5MDkwLTQxMDktNGM1MC1hNGZmLTYwMGM0YTZhOWVkZiIsIm9yaWdpbiI6InNlYXJjaCIsInByb2R1Y3QiOnsicmFua2luZyI6MSwicGlkIjoiMTAwMDUzNTciLCJza3VzIjpbXX19&deviceid=teste&source=desktop", "language": "http" } ] } [/block] É recomendado que este evento seja disparado somente depois que o usuário acessar a página do produto, evitando assim que o browser cancele a requisição caso a página de produto seja carregada antes que o disparo tenha sido concluído. A [Coleta de Dados](doc:coleta-de-dados) é parte essencial da implementação, pois sem ela não haverá aumento de performance nos resultados de busca e nem métricas disponíveis para você acompanhar o desempenho em produção.

User Information

Try It Out

get
{{ tryResults.results }}
Method{{ tryResults.method }}
Request Headers
{{ tryResults.requestHeaders }}
URL{{ tryResults.url }}
Request Data
{{ tryResults.data }}
Status
Response Headers
{{ tryResults.responseHeaders }}