Evento de busca

search

Vamos ver como enviar o evento de busca com resultado(s).

Sempre que a pesquisa da busca retornar com produtos ou items do seu negócio este evento deve ser disparado. Aqui você declara apenas os parâmetros comuns a todos os eventos e os parâmetros de: query: {...}, searchId: {...} e items: {...}

| items | array[{object}] | [{pid: "45567", price: 9.99, sku: "45567"}, {...}] | X | | query | string | "bola" | X | | searchId | uuid | "b520cf3a-5d8f-40ff-bba5-84e1e1e1a318" | X |

Utilizando Builder

Podemos usar o padrão Builder para popular o evento com os parâmetros do evento de busca.

import { EventClient } from '@linximpulse/impulse-sdk-js'

//Declare os parâmetros obrigatórios para o construtor
const event = new EventClient({...})

event.search()
    .query("bola")
    .searchId('b520cf3a-5d8f-40ff-bba5-84e1e1e1a318')
    .items([
        {
            pid: "45567",
            price: 9.99,
            sku: "45567"
        },
        { ... } // declarar todos os items que retornaram da busca
    ])
    .deviceId('fb4e49b6-35e3-42a1-a397-960f0b37ab6a')
    .user({...}) // se o usuário estiver logado
    .url('https://www.minhaloja.com.br/pesquisa?t=bola')
    .send()

Não utilizando Builder

Caso não queira utilizar o Builder, podemos popular o evento diretamente no método send(), ele também aceita diretamente os parâmetros do evento de busca.

import { EventClient } from '@linximpulse/impulse-sdk-js'

//Declare os parâmetros obrigatórios para o construtor
const event = new EventClient({
    type: 'backend',
    apiKey: 'your-apiKey',
    secretKey: 'your-secretKey',
    deviceId: 'fb4e49b6-35e3-42a1-a397-960f0b37ab6a'
})

event.search()
    .send({
        source: 'desktop',
        query: "bola",
        items: [
            {
                pid: "45567",
                price: 9.99,
                sku: "45567"
            },
            { ... } // declarar todos os items que retornaram da busca
        ],
        searchId: "b520cf3a-5d8f-40ff-bba5-84e1e1e1a318",
        user: {...}, // se o usuário estiver logado
        url: "https://www.minhaloja.com.br/pesquisa?t=bola"
    })