Navegação por Categorias

Este endpoint necessita da correta implementação do tracking de cliques de usuário. Caso ainda não tenha implementado o tracking corretamente, acesse /clicks

Navigate é a criação automática de URLs para navegação por categorias e atributos de produtos. Esta requisição é utilizada para obter uma lista de produtos filtrados (que atendem um conjunto de requisitos). Pode ser utilizado na montagem de menus, peças de email marketing e banners. Também serve para construir páginas de navegação de categoria ou de marcas específicas, por exemplo.

Como fazer a consulta?

Para realizar uma consulta, você pode passar um caminho de categoria ou utilizar outro tipo de filtro válido, por exemplo:

By Category
curl -v -G "https://api.linximpulse.com/engage/search/v3/navigates" \
  -d apiKey="<my-apikey>" \
  -d secretKey="<my-secret-key>" \
  -d category="games" \
  -d category="nintendo"
By Filter
curl -v -G "https://api.linximpulse.com/engage/search/v3/navigates" \
  -d apiKey="<my-apikey>" \
  -d secretKey="<my-secret-key>" \
  -d fields="brand:nintendo"

Padrão de Resposta

A resposta segue o mesmo formato das consultas de /search. Consultas com resultado vazio ou não encontrado, possuem código de resposta 404 Not Found. Os produtos retornados estarão no campo products. O formato/conteúdo de cada produto no products está listado abaixo na seção Query Params 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

apiKey
stringrequired

ID interno de identificação da sua loja.

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
stringrequired

Chave de acesso para autenticar a requisição. Pode ser substituída pelo parâmetro origin quando a requisição é feita via frontend para não expor a chave.

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
stringrequired

Identificador único do dispositivo. Todas as requisições feitas a partir do mesmo dispositivo devem possuir o mesmo deviceId.


source
stringrequired

Origem do dispositivo utilizado. Os tipos padrões são:
  • desktop
  • mobile
  • app
Novos canais podem ser criados no Dashboard da Busca, caso os canais padrões não atendam a necessidade.
Caso um valor inválido seja informado, irá impactar o registro de métricas de desempenho e KPIs da solução de busca.


origin
string

Define a URL de origem da requisição. Pode ser usada no lugar da secretKey para autenticar a requisição.


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.Valores permitidos:
  • products
  • quickFilters
  • banners
  • adSearches
  • suggestions
  • filters


productFormat
string default: relevance

Define o formato de resposta dos produtos. Por padrão todos os campos são ativos.Valores permitidos:
  • onlyIds
  • complete
  • compact


userId
string

Id do usuário. Deve ser o mesmo identificador utilizado no site. (Quando o usuário estiver logado)


fields
string[]

Filtros a serem aplicados para restringir a consulta. Exemplo.: Retornar produtos de marca "Sony" &fields=marca:sony
Obs.: Os campos fields e category são mutuamente exclusivos, ou seja, somente um dos dois deve ser passado.


category
string[]

Categorias a serem aplicadas para restringir a consulta. Todo o caminho da categoria deve ser passado na ordem correta. Exemplo.: Buscar pela categoria Nintendo, com o path "Games>Nintendo" &category=games&category=nintendo.
Obs.: Os campos category e fields são mutuamente exclusivos, ou seja, somente um dos dois deve ser passado.


multicategory
string[]

Multiplas categorias. Caminho das categorias que devem ser concatenadas. Todo o caminho da categoria deve ser passado na ordem correta. Exemplo: multicategory=games|colecionaveis|anime&multicategory=games|colecionaveis|comics
Obs.: Os campos multicategory e category são mutuamente exclusivos, ou seja, somente um dos dois deve ser passado.


page
number default: 1

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
number default: 20

Número de produtos retornados por página.


sortBy
string default: relevance

Método de ordenação. Os métodos de ordenação suportados são:
  • relevance: Relevância;
  • pid: Id de produto
  • ascPrice: 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

Define se o resultado de busca vai ser composto apenas por produtos com status disponível.


allowRedirect
boolean default: true

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.
  • d:::: filtro discreto que retorna os produtos que possuem atributo com valor
  • c:::::: 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


Typescript
const fetch = require('node-fetch');

const url = 'https://api.linximpulse.com/engage/search/v3/navigates?page=1&resultsPerPage=20&sortBy=relevance&productFormat=complete&showOnlyAvailable=false';
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));
curl
curl -v -G "https://api.linximpulse.com/engage/search/v3/navigates" \
  -d apiKey="<my-apikey>" \
  -d secretKey="<my-secret-key>" \
  -d category="games" \
  -d category="nintendo"

Full Response
{
  "requestId": "23b75e17-1e9c-4414-899c-984528904155",
  "searchId": "23b75e17-1e9c-4414-899c-984528904155",
  "size": 404,
  "pagination": {
    "first": "/engage/search/v3/navigates?apikey=<my-api-key>&terms=&page=1&resultsperpage=60&fields=flags:sale&showonlyavailable=true&productformat=complete&deviceid=<device-id>&source=desktop",
    "last": "/engage/search/v3/navigates?apikey=<my-api-key>&terms=&page=7&resultsperpage=60&fields=flags:sale&showonlyavailable=true&productformat=complete&deviceid=<device-id>&source=desktop",
    "next": "/engage/search/v3/navigates?apikey=<my-api-key>&terms=&page=2&resultsperpage=60&fields=flags:sale&showonlyavailable=true&productformat=complete&deviceid=<device-id>&source=desktop"
  },
  "filters": [
    {
      "id": 1,
      "attribute": "Categoria",
      "type": "discrete",
      "fType": 1,
      "values": [
        {
          "label": "Feminino",
          "size": 305,
          "idO": "4824",
          "id": 4,
          "filters": [
            {
              "label": "Blusas e T-shirts",
              "size": 112,
              "idO": "4831",
              "id": 102,
              "filters": [
                {
                  "label": "Manga Curta",
                  "size": 39,
                  "idO": "13421",
                  "id": 8088,
                  "applyLink": "/engage/search/v3/navigates?apikey=<my-api-key>&terms=&resultsperpage=60&fields=flags:sale&showonlyavailable=true&productformat=complete&deviceid=<device-id>&source=desktop&filter=d:1:8088"
                }
              ],
              "applyLink": "/engage/search/v3/navigates?apikey=<my-api-key>&terms=&resultsperpage=60&fields=flags:sale&showonlyavailable=true&productformat=complete&deviceid=<device-id>&source=desktop&filter=d:1:102"
            }
          ],
          "applyLink": "/engage/search/v3/navigates?apikey=<my-api-key>&terms=&resultsperpage=60&fields=flags:sale&showonlyavailable=true&productformat=complete&deviceid=<device-id>&source=desktop&filter=d:1:11168"
        }
      ]
    },
    {
      "id": 2,
      "attribute": "Preço",
      "type": "continuous",
      "fType": 2,
      "values": [
        {
          "size": 18,
          "unityId": 3,
          "unN": "rs",
          "min": {
            "value": 0,
            "unity": "rs",
            "minN": 0
          },
          "max": {
            "value": 20,
            "unity": "rs",
            "maxN": 20
          },
          "applyLink": "/engage/search/v3/navigates?apikey=<my-api-key>&terms=&resultsperpage=60&fields=flags:sale&showonlyavailable=true&productformat=complete&deviceid=<device-id>&source=desktop&filter=c:2:3:0:20"
        }
      ]
    }
  ],
  "products": [
    {
      "id": "1117857-preto",
      "collectInfo": {
        "productId": "1117857",
        "skuList": [
          "1117859"
        ]
      },
      "clickUrl": "/engage/search/v3/clicks?apikey=<my-api-key>&trackingId=<tracking-id>",
      "name": "Vestido Longo Preto Com Costas Abertas",
      "price": 139.9,
      "oldPrice": 239.9,
      "url": "//www.mystore.com.br/vestido-longo-preto-com-costas-abertas-p1117857?tsid=19&pp=/44.709/",
      "images": {
        "default": "//www.mystore.com.br/Custom/Content/Products/1117857_vestido-coluna-malha-power.jpg"
      },
      "installment": {
        "price": 46.63,
        "count": 3
      },
      "status": "AVAILABLE",
      "categories": [
        {
          "id": "4824",
          "name": "Feminino",
          "parents": []
        },
        {
          "id": "4837",
          "name": "Vestidos",
          "parents": [
            "4824"
          ]
        }
      ],
      "tags": [
        {
          "id": "vestidos_que_amamos",
          "name": "vestidos que amamos",
          "parents": []
        }
      ],
      "specs": {
        "Cor": [
          {
            "id": "Preto",
            "label": "Preto",
            "properties": {}
          }
        ],
        "Tamanho": [
          {
            "id": "PP",
            "label": "PP",
            "properties": {}
          },
          {
            "id": "P",
            "label": "P",
            "properties": {}
          },
          {
            "id": "M",
            "label": "M",
            "properties": {}
          },
          {
            "id": "G",
            "label": "G",
            "properties": {}
          }
        ]
      },
      "created": "2023-05-10 10:59:33",
      "brand": "<my-brand>",
      "selectedSku": "1117859",
      "cId": "flag",
      "iId": 1600,
      "skus": [
        {
          "sku": "1117859",
          "specs": {
            "Cor": [
              "Preto"
            ],
            "Tamanho": [
              "PP"
            ]
          },
          "properties": {
            "status": "AVAILABLE",
            "price": 139.9,
            "oldPrice": 239.9,
            "installment": {
              "price": 46.63,
              "count": 3
            },
            "images": {
              "default": "//www.mystore.com.br/Custom/Content/Products/1117857_vestido-coluna-malha-power.jpg"
            },
            "url": "//www.mystore.com.br/vestido-longo-preto-com-costas-abertas-p1117857"
          }
        }
      ],
      "details": {
        "name": [
          "Vestido Longo Preto Com Costas Abertas"
        ],
        "genero": [
          "FEMININO"
        ],
        "HexaColor": [
          "#000000"
        ],
        "brand": [
          "<my-brand>"
        ]
      }
    }
  ],
  "sort": [
    {
      "label": "Relevância",
      "name": "relevance",
      "type": "default",
      "applyLink": "/engage/search/v3/navigates?apikey=<my-api-key>&resultsperpage=60&productformat=complete&fields=flags:sale&sortby=relevance"
    },
    {
      "label": "Melhores avaliações",
      "name": "descreview",
      "type": "default",
      "applyLink": "/engage/search/v3/navigates?apikey=<my-api-key>&resultsperpage=60&productformat=complete&fields=flags:sale&sortby=descreview"
    }
  ]
}