Busca por termo
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.
Como fazer a consulta?
Para realizar uma consulta, você pode prover um termo para a consulta ou mesmo prover um ou vários IDs de produto:
curl -v -G "https://api.linximpulse.com/engage/search/v3/search" \
-d apiKey="<my-apikey>" \
-d secretKey="<my-secret-key>" \
-d terms="celular+samsung"
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.
Padrão de Resposta
Os produtos retornados estarão no campo products
. O formato/conteúdo de cada produto no products
está listado abaixo 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
.
Query Params
terms
string
required
terms
string
required
apiKey
string
required
apiKey
string
required
Não sabe qual a apiKey da sua loja? Solicite ao responsável técnico de integração enviando um email para suporteimpulse@linx.com.br
secretKey
string
required
secretKey
string
required
Não sabe qual a secretKey da sua loja? Solicite ao responsável técnico de integração enviando um email para suporteimpulse@linx.com.br
deviceId
string
required
deviceId
string
required
source
string
required
source
string
required
desktop
mobile
app
origin
string
origin
string
salesChannel
string
salesChannel
string
hide
string
hide
string
products
quickFilters
banners
adSearches
suggestions
filters
productFormat
string
default: relevance
productFormat
string
default: relevance
onlyIds
complete
compact
userId
string
userId
string
pids
string[]
pids
string[]
page
number
default: 1
page
number
default: 1
resultsPerPage
number
default: 20
resultsPerPage
number
default: 20
sortBy
string
default: relevance
sortBy
string
default: relevance
relevance
: Relevância;pid
: Id de produtoascPrice
: Menor preço;descPrice
: Maior preço;descDate
: Novidades;ascSold
: Menor venda;descSold
: Maior venda;ascReview
: Menor avaliação;descReview
: Maior avaliação;descDiscount
: Maiores descontos.
showOnlyAvailable
boolean
default: false
showOnlyAvailable
boolean
default: false
p
string
default: false
p
string
default: false
allowRedirect
boolean
default: true
allowRedirect
boolean
default: true
filter
string[]
filter
string[]
d:::
: filtro discreto que retorna os produtos que possuem atributo com valorc:::::
: filtro contínuo que retorna os produtos que possuem atributo do tipo com valor entre e e que a unidade de medida do valor seja
const fetch = require('node-fetch');
const url = 'https://api.linximpulse.com/engage/search/v3/search?page=1&resultsPerPage=20&sortBy=relevance&productFormat=complete&showOnlyAvailable=false&allowRedirect=true';
const options = {method: 'GET', headers: {accept: 'application/json'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error('error:' + err));
{
"requestId": "35f5794c-be0e-48fd-bb56-3469895491b1",
"searchId": "35f5794c-be0e-48fd-bb56-3469895491b1",
"size": 10,
"queries": {
"original": "calca jeans",
"normalized": "calca jeans",
"processed": "calca",
"queryType": "aproximated"
},
"pagination": {
"first": "/engage/search/v3/search?apikey=<my-store>&terms=calca+jeans&page=1",
"last": "/engage/search/v3/search?apikey=<my-store>&terms=calca+jeans&page=1"
},
"filters": [
{
"id": 2,
"attribute": "Preço",
"type": "continuous",
"fType": 2,
"values": [
{
"size": 1,
"unityId": 3,
"unN": "rs",
"min": {
"value": 119.92,
"unity": "rs",
"minN": 119.92
},
"max": {
"value": 119.92,
"unity": "rs",
"maxN": 119.92
},
"applyLink": "/engage/search/v3/search?apikey=<my-store>&terms=calca+jeans&filter=c:2:3:119.92:119.92"
}
]
},
{
"id": 27871,
"attribute": "Marca",
"type": "discrete",
"values": [
{
"label": "MyBrand",
"size": 4,
"id": 28012,
"applyLink": "/engage/search/v3/search?apikey=<my-store>&terms=calca+jeans&filter=d:27871:28012"
}
]
}
],
"products": [
{
"id": "2674",
"collectInfo": {
"productId": "2674",
"skuList": []
},
"clickUrl": "/engage/search/v3/clicks?apikey=<my-store>&trackingId=<tracking-id>",
"name": "Meia Kendall 18-21 - Calça Gg Mel Sem Ponteira",
"price": 119.93,
"oldPrice": 139,
"url": "https://www.<my-store>.com.br/meia-kendall-18-21---calca-gg-mel-sem-ponteira/p",
"images": {
"default": "//<my-store>.com.br/files/ids/705624.jpg"
},
"installment": {
"count": 3,
"price": 39.97
},
"status": "AVAILABLE",
"categories": [
{
"id": "Saúde e Bem Estar",
"name": "Saúde e Bem Estar",
"parents": [],
"used": true
}
],
"tags": [
{
"id": "saude_e_bem_estar",
"name": "Saúde e Bem Estar",
"parents": []
}
],
"specs": {},
"created": "2022-08-09 16:39:03",
"brand": null,
"skus": [
{
"sku": "2810",
"specs": {},
"properties": {
"name": "Meia 18-21",
"url": "https://www.<my-store>.com.br/meia-18-21?idsku=2810",
"images": {
"default": "//<my-store>.com.br/files/ids/705624.jpg"
},
"status": "available",
"price": 119.93,
"installment": {
"count": 3,
"price": 39.97
},
"oldPrice": 139,
"stock": 3,
"eanCode": "7896191227646",
"details": {
"ratingCount": 0,
"ratingValue": 0
}
}
}
],
"details": {
"ratingCount": [0],
"ratingValue": [0]
},
"description": "Product Description"
}
],
"sort": [
{
"label": "Relevância",
"name": "relevance",
"type": "default",
"applyLink": "/engage/search/v3/search?apikey=<my-store>&terms=calca+jeans&sortby=relevance"
},
{
"label": "Melhores avaliações",
"name": "descreview",
"type": "default",
"applyLink": "/engage/search/v3/search?apikey=<my-store>&terms=calca+jeans&sortby=descreview"
},
{
"label": "Menor preço",
"name": "ascprice",
"type": "default",
"applyLink": "/engage/search/v3/search?apikey=<my-store>&terms=calca+jeans&sortby=ascprice"
}
]
}