Obtendo credenciais

Seja executado em um navegador da Web ou em um servidor Node.js, seu código JavaScript deve obter credenciais válidas antes de poder acessar os serviços por meio do SDK de eventos.

Autenticação utilizando CORS no Frontend

Essa autenticação é uma forma segura que evita a necessidade de especificar dados sigilosos nas requisições. Utilize para requisições feitas através do seu navegador.

Se você definir que o .minhaloja.com está liberado para acessar nossa API, toda requisição a partir desse domínio será autenticada internamente. Removendo a necessidade de informar campos de autenticação.

Para garantir essa segurança, precisamos que todos os hosts habilitados a consultar a API sejam fornecidos para nossa equipe de atendimento no atendimento@linximpulse.com.br.

Para este tipo de autenticação, o parâmetro apiKey é obrigatório. Enviar a apiKey, ajuda a validar a autenticidade da requisição.

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

const event = new EventClient({
    type: 'frontend',
    apiKey: 'your-apiKey',
    http: {
        retryPolicy: 'exponential',
        sendAsBeacon: true
    }
})

Autenticação com credenciais no Backend

Quando as chamadas não forem feitas a partir do seu navegador, use a autenticação utilizando suas credenciais de acesso apiKey e senha secretKey. Esses dois códigos são responsáveis por identificar sua loja na nossa plataforma (apiKey) e autenticá-la por um código de segurança (secretKey).

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

const event = new EventClient({
    type: 'backend',
    apiKey: 'your-apiKey',
    secretKey: 'your-secretKey',
    source: 'app',
    salesChannel: '12',
    deviceId: 'fb4e49b6-35e3-42a1-a397-960f0b37ab6a',
    http: {
        retryPolicy: 'exponential',
        sendAsBeacon: true
    }
})

Recomendamos que o campo deviceId seja preenchido durante a crianção do client de SDK apenas se você estiver utilizando o SDK em um APP mobile onde este valor representará um identificador único para o dispositivo que irá enviar os eventos a seguir

Caso esteja utilizando o SDK em um servidor este campo não deve ser preenchido aqui mas deve ser informado em cada evento enviado com o valor do respectivo dispositivo onde o evento foi originado, como será visto mais adiante.