Documentação

API JavaScript

Métodos globais disponíveis após carregar o script do widget.

Respondo.init(config)#

Inicializa e monta o widget. Deve ser chamado uma vez. Devolve a instância do widget.

const widget = Respondo.init({
  agentId: 'YOUR_AGENT_ID'
});

Respondo.identify(identity)#

Associa a identidade do usuário à sessão atual. Chame após o início de sessão.

Respondo.identify({
  email: 'user@example.com',
  name: 'John Doe',
  userId: 'usr_123',
  userHash: 'hmac_sha256_signature', // opcional, para verificação de identidade
  metadata: { plan: 'pro' },
  properties: {                      // propriedades de contato personalizadas
    account_type: 'enterprise',      // chaves definidas em Agent Settings
    region: 'eu-west'
  }
});

Respondo.track(name, properties?)#

Registra um evento do lado do cliente para o visitante atual (p. ex. compra, upgrade de plano). Os eventos podem iniciar Tours acionados por eventos e contam para as metas dos tours. Entrega de melhor esforço com keepalive, para que eventos disparados imediatamente antes de uma navegação (redirecionamento de checkout) ainda cheguem. Chame após init().

Os eventos também abrem as pesquisas pop-up que esperam por eles (When and where): na hora, numa página correspondente, ou ao chegar a uma em até 30 minutos, por exemplo após um redirecionamento.

Respondo.track('purchase_completed', {
  plan: 'pro',
  amount: 49
});

Respondo.startSurvey(surveyId)#

Abre agora uma pesquisa pop-up ativa, em qualquer página, ignorando Show on, as regras de página, o tempo na página, o evento gatilho e o público. Copie o id no editor da pesquisa (Additional ways to share). Uma pesquisa que o visitante já respondeu não é exibida de novo. Pode ser chamado antes de o widget terminar de carregar.

Respondo.startSurvey('<survey-id>');

Respondo.destroy()#

Remove o widget da página. Útil em SPAs ao navegar para páginas onde o widget não deve aparecer. Não limpa a identidade do visitante nem a conversa armazenada — para o logout, use Respondo.reset().

// Remover o widget da página
Respondo.destroy();

// Reinicializar mais tarde, se necessário (retoma a mesma conversa)
Respondo.init({ agentId: 'YOUR_AGENT_ID' });

Respondo.reset()#

Logout / troca de usuário em dispositivo compartilhado. Limpa do navegador o visitor id anônimo, a conversa armazenada e o token de sessão, revoga o token de sessão no lado do servidor para que cópias dele deixem de funcionar, e monta de novo um widget anônimo limpo. Chame a partir do hook de logout do seu app.

// No logout — limpe identidade, conversa e sessão, comece do zero
Respondo.reset();

Recolha automática de dados

O widget captura e armazena automaticamente o seguinte com cada conversa:

DadosOrigem
IP do clienteCabeçalhos HTTP
Navegador / SOCabeçalho User-Agent
IdiomaCabeçalho Accept-Language
Fuso horárioAPI Intl (JavaScript)
URL da páginawindow.location
ReferenciadorCabeçalho Referer