> ## Documentation Index
> Fetch the complete documentation index at: https://userin.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Verificar Integração

> Confirme que o tracker está instalado corretamente e que os dados estão chegando à plataforma.

Use este checklist para validar cada etapa da integração. Você precisa do **DevTools do navegador** aberto (`F12`) no seu site.

***

## Checklist de verificação

<Steps>
  <Step title="Verificar se o tracker carregou">
    No **Console** do DevTools, digite:

    ```javascript theme={null}
    __SmartTrack
    ```

    Se o tracker está carregado, você verá o objeto com todos os métodos disponíveis.

    Se retornar `undefined`, o script não carregou. Verifique se:

    * O `<script>` está presente no HTML da página
    * A URL `https://smarttrack.userin.ai/tracker.js` está acessível
    * A `api-key` foi preenchida
    * Não há bloqueadores de anúncios interferindo
  </Step>

  <Step title="Verificar o ID do visitante">
    No console, execute:

    ```javascript theme={null}
    __SmartTrack.getLocalStorageId()
    ```

    Deve retornar uma string como `"a1b2c3d4-e5f6-..."`. Esse é o identificador persistente do visitante, salvo no `localStorage`.
  </Step>

  <Step title="Verificar a sessão">
    Execute:

    ```javascript theme={null}
    __SmartTrack.getSessionId()
    ```

    Deve retornar o ID da sessão atual. Se retornar `null`, o tracker não conseguiu iniciar a sessão.
  </Step>

  <Step title="Verificar requisições de rede">
    Na aba **Network** do DevTools:

    1. Filtre por `smarttrack` ou `tracker`.
    2. Navegue pelo site normalmente.
    3. Você deve ver requisições `POST` sendo enviadas à API da UserIn.

    Se as requisições retornam **status 200**, os dados estão sendo recebidos. Se retornam 401 ou 403, a API Key está incorreta.
  </Step>

  <Step title="Verificar na plataforma">
    Acesse [app.userin.ai](https://app.userin.ai) e vá para **Visitantes**.

    Você deve ver:

    * Seu visitante de teste
    * Page views registrados
    * Sessão ativa
  </Step>
</Steps>

***

## Testar identificação de usuário

No console do seu site, execute:

```javascript theme={null}
__SmartTrack.setExternalUserContext('teste-123', {
  email: 'teste@minhaempresa.com',
  name: 'Visitante Teste'
});
```

Volte à plataforma e verifique se o visitante aparece com o nome **"Visitante Teste"** e o email associado.

<Tip>
  Abra uma janela anônima/privada para simular um novo visitante sem dados em cache.
</Tip>

***

## Testar eventos customizados

Envie um evento de teste:

```javascript theme={null}
__SmartTrack.customEvent('teste_integracao', {
  source: 'documentacao',
  timestamp: new Date().toISOString()
});
```

Esse evento deve aparecer no histórico do visitante na plataforma.

***

## Problemas comuns

<AccordionGroup>
  <Accordion title="O objeto __SmartTrack não existe" icon="circle-xmark">
    **Causa:** o script não foi carregado.

    **Verifique:**

    * O `<script>` está presente no HTML da página
    * A URL `https://smarttrack.userin.ai/tracker.js` está acessível
    * Não há erros de rede na aba **Network** do DevTools
    * Extensões de ad-block estão desativadas temporariamente
  </Accordion>

  <Accordion title="Requisições retornam erro 401/403" icon="lock">
    **Causa:** API Key inválida ou expirada.

    **Verifique:**

    * A `api-key` no script está correta
    * Copie a API Key novamente em **Configurações > API Keys**
    * Não há espaços extras no atributo
  </Accordion>

  <Accordion title="Dados não aparecem na plataforma" icon="eye-slash">
    **Causa:** delay de processamento ou filtro ativo.

    **Verifique:**

    * Aguarde 1-2 minutos, alguns dados são processados em batch
    * O período selecionado no filtro de data inclui o horário atual
    * Você está no projeto correto
    * A requisição `POST` no Network retorna status 200
  </Accordion>

  <Accordion title="Tracker não captura em SPA (React, Vue, etc.)" icon="rotate">
    O tracker detecta mudanças de rota automaticamente via `History API` (`pushState` / `popstate`). Se mesmo assim não funcionar, dispare manualmente:

    ```javascript theme={null}
    __SmartTrack.customEvent('pageview', {
      url: window.location.href,
      title: document.title
    });
    ```
  </Accordion>

  <Accordion title="Ad-blockers bloqueando o tracker" icon="shield">
    Extensões como uBlock Origin podem bloquear scripts de rastreamento.

    **Alternativas:**

    * Configure um proxy reverso no seu domínio para servir o tracker
    * Use um subdomínio próprio (ex: `t.meusite.com/tracker.js`)
    * Entre em contato com o suporte para configurar um domínio customizado
  </Accordion>
</AccordionGroup>

***

## Integração completa

Se todos os checks passaram, o tracker está capturando dados e enviando para a plataforma. Agora você pode explorar os recursos da UserIn:

<CardGroup cols={2}>
  <Card title="Ontologia de Dados" icon="diagram-project" href="/plataforma/ontologia">
    Entenda como os dados dos visitantes são organizados em campos, sinais e outputs.
  </Card>

  <Card title="Personalização com Variáveis" icon="wand-magic-sparkles" href="/plataforma/personalizacao-liquid">
    Use dados do perfil para personalizar modais, emails e SMS.
  </Card>
</CardGroup>
