Hotsite

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

Hotsite é uma página configurada com produtos selecionados e associada a consultas específicas que permite a adição de banners. Esta requisição é utilizada para obter um conjunto de produtos cadastrado em um hotsite, a partir de seu nome. O gerênciamento do cadastro de hotsites é feito no dashboard, caso não tenha acesso ao dashboard, solicite ao responsável técnico de integração enviando um email para atendimento@linximpulse.com.br.

Como fazer a consulta?

Para realizar uma consulta, você deve passar o nome do hotsite cadastrado:

curl
curl -v -G "https://api.linximpulse.com/engage/search/v3/hotsites" \
  -d apiKey="<my-apikey>" \
  -d secretKey="<my-secret-key>" \
  -d name="<my-hotsite-name>"

Padrão de Resposta

A resposta segue o mesmo formato das consultas em /search. 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

name
stringrequired

Nome do hotsite


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)


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.


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/hotsites?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/hotsites" \
  -d apiKey="<my-apikey>" \
  -d secretKey="<my-secret-key>" \
  -d name="<my-hotsite-name>"

Full Response
{
  "requestId": "7ee3c021-80b0-4d66-80f3-0af3d5f6f422",
  "searchId": "7ee3c021-80b0-4d66-80f3-0af3d5f6f422",
  "size": 9,
  "hotsite": {
    "title": "<hotsite-title>",
    "description": "<hotsite-description>",
    "sortRule": "automatic"
  },
  "queries": {
    "original": "<hotsite-name>",
    "normalized": "<hotsite-name>",
    "processed": "<hotsite-name>",
    "queryType": "found"
  },
  "pagination": {
    "first": "/engage/search/v3/hotsites?apikey=<my-api-key>&name=<hotsite-name>&page=1&resultsperpage=20&sortby=relevance&productformat=complete&showonlyavailable=false",
    "last": "/engage/search/v3/hotsites?apikey=<my-api-key>&name=<hotsite-name>&page=1&resultsperpage=20&sortby=relevance&productformat=complete&showonlyavailable=false"
  },
  "banners": [
    {
      "position": "hotsite-header",
      "content": "<img src=\"https://www.mystore.com.br/Custom/Content/Banners/15.png\" />"
    }
  ],
  "filters": [
    {
      "id": 1,
      "attribute": "Categoria",
      "type": "discrete",
      "fType": 1,
      "values": [
        {
          "label": "Acessórios",
          "size": 2,
          "idO": "379",
          "id": 16,
          "filters": [
            {
              "label": "Colares, Brincos e Braceletes",
              "size": 1,
              "idO": "396",
              "id": 20,
              "applyLink": "/engage/search/v3/hotsites?apikey=<my-api-key>&name=<hotsite-name>&resultsperpage=20&sortby=relevance&productformat=complete&showonlyavailable=false&filter=d:1:20"
            }
          ],
          "applyLink": "/engage/search/v3/hotsites?apikey=<my-api-key>&name=<hotsite-name>&resultsperpage=20&sortby=relevance&productformat=complete&showonlyavailable=false&filter=d:1:16"
        }
      ]
    },
    {
      "id": 2,
      "attribute": "Preço",
      "type": "continuous",
      "fType": 2,
      "values": [
        {
          "size": 5,
          "unityId": 3,
          "unN": "rs",
          "min": {
            "value": 90,
            "unity": "rs",
            "minN": 90
          },
          "max": {
            "value": 350,
            "unity": "rs",
            "maxN": 350
          },
          "applyLink": "/engage/search/v3/hotsites?apikey=<my-api-key>&name=<hotsite-name>&resultsperpage=20&sortby=relevance&productformat=complete&showonlyavailable=false&filter=c:2:3:90:350"
        }
      ]
    }
  ],
  "products": [
    {
      "id": "1027968",
      "collectInfo": {
        "productId": "1027968",
        "skuList": ["991686"]
      },
      "clickUrl": "/engage/search/v3/clicks?apikey=<my-api-key>&trackingId=<tracking-id>",
      "name": "Sandália - Preto",
      "price": 465,
      "oldPrice": 465,
      "url": "//www.<my-api-key>.com.br/calcados/1838-sandalia",
      "images": {
        "default": "//www.mystore.com.br/Custom/Content/Products/1027968_1838-sandalia.jpg"
      },
      "installment": {
        "price": 116.25,
        "count": 4
      },
      "status": "AVAILABLE",
      "categories": [
        {
          "id": "380",
          "name": "Calçados",
          "parents": []
        }
      ],
      "tags": [],
      "specs": {
        "Color": [
          {
            "id": "Preto",
            "label": "Preto",
            "properties": {}
          }
        ],
        "Size": [
          {
            "id": "34",
            "label": "34",
            "properties": {}
          },
          {
            "id": "35",
            "label": "35",
            "properties": {}
          }
        ]
      },
      "created": "2023-10-04 15:51:39",
      "brand": "<my-api-key>",
      "selectedSku": "991686",
      "cId": "388",
      "iId": 83,
      "skus": [
        {
          "sku": "991686",
          "specs": {
            "Color": "Preto",
            "Size": "34"
          },
          "properties": {
            "name": "Sandália Strap - Preto",
            "url": "//www.<my-api-key>.com.br/calcados/1838-sandalia",
            "images": {
              "default": "//www.<my-api-key>.com.br/Custom/Content/Products/1027968_1838-sandalia.jpg"
            },
            "status": "available",
            "price": 465,
            "installment": {
              "count": 4,
              "price": 116.25
            },
            "oldPrice": 465,
            "details": {
              "Color": "Preto",
              "Size": "34",
              "flags": ["New"]
            }
          }
        }
      ],
      "details": {
        "size": [
          "34",
          "36",
          "38",
          "40"
        ]
      }
    }
  ]
}