Ir para conteúdo principal

Crescimento – Cada lead vai diretamente para o seu CRM: envie pedidos de demonstração do Survio para uma folha ou para o HubSpot

Transforme um formulário Survio num funil de captura de leads: cada novo pedido de demonstração vira uma linha num Google Sheets com notificação de resposta por e-mail, ou um novo contacto no HubSpot.

Escrito por Success Team Survio

Qual é o cenário ideal para si?

Caso A – solução simples, para qualquer negócio: cada pedido de demonstração é registado num Google Sheets usado como CRM e recebe notificação de resposta por e-mail.

Caso B – para equipas já com CRM: cada pedido de demonstração entra como lead no HubSpot, pronto a ser trabalhado pela equipa de vendas.

Quando um visitante preenche o formulário de pedido de demonstração, poucos segundos depois a lead já está no CRM. Uma pequena empresa recebe uma nova linha na folha de leads e uma notificação de resposta por e-mail a que pode responder; já para equipas comerciais, nasce um contacto no HubSpot. Assim, está a falar com a lead enquanto ela ainda navega no seu site.
​

Este é o e-mail recebido por cada novo pedido de demonstração no Caso A:
​

New demo request e-mail in Gmail


​

E este é o novo contacto no HubSpot no Caso B:
​

HubSpot contact created from a demo request: lifecycle stage Lead and the request in Message

Como funciona. O Survio envia cada resposta concluída para um URL de webhook. Uma ferramenta de automação (neste guia, usamos o n8n) recebe a resposta e insere o lead no local onde trabalha. O Survio faz o envio, o n8n faz o resto.

É novo em webhooks no Survio? Comece por Webhooks: envie respostas para outras ferramentas em tempo real e depois regresse aqui.
​

O que irá montar

Ambos os cenários começam igual: um formulário rápido de pedido de demonstração no seu site, enviado para o n8n por um webhook.

Visão geral

Caso A: folha como seu CRM

Caso B: HubSpot

Resultado

Cada pedido gera uma linha no Google Sheets com coluna Status e notificação de resposta por e-mail

Cada pedido cria um novo contacto no HubSpot CRM, pronto para a equipa de vendas

Ferramentas

Survio, n8n, Google Sheets, Gmail

Survio, n8n, HubSpot

Ideal para

Pequenas empresas que gerem leads de forma autónoma

Equipa de vendas já a operar no HubSpot

Antes de começar

  • Um inquérito Survio num plano pago. Webhooks não estão disponíveis no plano Free, e cada plano permite um limite de webhooks por inquérito (consulte o artigo sobre webhooks).

  • Uma conta n8n, n8n Cloud ou instalação própria.

  • Caso A: conta Google para Google Sheets e Gmail. Caso B: conta HubSpot.

Neste guia usamos um formulário simples: nome, e-mail profissional (pergunta de e-mail), empresa, dimensão da equipa (pergunta de escolha múltipla) e, opcionalmente, "O que gostaria de ver na demonstração?". O seu formulário pode ser diferente; deve mapear as suas perguntas para cada caso.
​

Passo 1 — Colocar o formulário no seu site

  1. Abra o seu inquérito, vá a Recolher respostas e escolha Na web.

  2. Selecione Janela pop-up e defina quando aparece. Para formulários curtos, ative Ocultar a página de boas-vindas e os visitantes começam pela primeira pergunta.

  3. Clique em Incorporar no site e cole o código na sua página.

Pop-up window settings for the survey in Survio
Embed code for the pop-up window

Mais opções, como um botão ou widget de barra lateral, estão em Incorporar um inquérito no seu site.
​

Passo 2 — Apenas para o Caso A: preparar a folha de leads

  1. Crie uma nova folha Google Sheets e renomeie o primeiro separador para leads.

  2. Na linha 1, escreva os títulos das colunas: ID da resposta, Recebido, Nome, E-mail, Empresa, Dimensão da equipa, O que pretendem ver, Status e Idioma.

  3. Selecione as células da coluna Status abaixo do cabeçalho, escolha Inserir → Lista pendente, adicione as opções Novo, Contactado e Concluído (use Adicionar outra opção) e clique em Concluído.

A sua folha agora é um CRM simples. Novos leads chegam como Novo. Quando já contactou ou respondeu a alguém, altere para Contactado, e para Concluído quando fechar ou perder o negócio. Filtre a coluna Status para ver quem ainda precisa de resposta.

Passo 3 — Criar o webhook no n8n

  1. No n8n, crie um novo fluxo de trabalho e adicione um nó Webhook como gatilho.

  2. Defina o Método HTTP para POST.

  3. Altere para o separador URL de produção e copie o endereço.

  4. Clique em Publicar. O URL de produção só aceita entregas após publicação do fluxo.

n8n Webhook node with HTTP Method POST and the Production URL tab
Published button in the n8n editor

Use o URL de produção, não o de teste. O URL de teste só ouve enquanto o editor aguarda um evento-teste, então as entregas do Survio falham assim que fechar. O Survio tenta reenviar entregas falhadas por cerca de um dia; após 5 dias de falhas desativa o webhook.

Passo 4 — Ligar o inquérito no Survio

  1. Abra o seu inquérito e vá a Recolher respostas.

  2. Na barra lateral esquerda em Automatizações & Integrações, selecione Webhooks e clique em + Adicionar um webhook.

  3. Cole o URL de produção do n8n em URL do webhook e clique em Salvar webhook. O webhook é ativado imediatamente.

Add a webhook dialog in Survio with the n8n Production URL filled in
Saved webhook in Survio, switched on


​

Passo 5 — Envie um pedido de teste e encontre os ids das perguntas

  1. Preencha o formulário pelo link normal e submeta até ao fim. O Survio envia apenas respostas completas.

  2. No n8n, abra o separador Execuções. O envio chega em poucos segundos.

  3. Abra a execução e clique no nó Webhook. Expanda body, depois data, depois answers. Cada resposta mostra o seu question.id, o label da pergunta e a answer.

  4. Anote o id de cada pergunta. Também pode clicar em Fixar para continuar a configuração sem submeter o formulário de novo.

Webhook node output in n8n with a demo request

Sempre use os ids das perguntas para identificar respostas. Respostas chegam numa lista. Se adicionar perguntas ao formulário, as posições mudam, mas os ids mantêm-se.

O e-mail da lead está na resposta. Não use data.email: fica vazio quando a pergunta de e-mail for usada. Leia a partir da resposta à sua pergunta de e-mail.

Caso A — Uma folha como seu CRM, e um e-mail

O fluxo tem três etapas após o webhook: Preparar lead extrai as respostas, Salvar lead na folha adiciona a linha, e Notificação de resposta por e-mail informa sobre o novo lead.
​

Preparar lead

  1. Adicione um nó Editar campos (Set) após o Webhook e renomeie para Preparar lead.

  2. Em Campos a definir, adicione um campo por cada coluna da folha e mantenha o tipo Cadeia de texto. O nome do campo deve coincidir com o cabeçalho; use as expressões abaixo.

  3. Troque os ids das perguntas (90403243 etc.) pelos que anotou no Passo 5, e Europe/Prague pela sua zona horária.

Nome do campo

Valor

ID da resposta

{{ $json.body.data.responseId }}

Recebido

{{ DateTime.fromISO($json.body.data.submitted).setZone('Europe/Prague').toFormat('yyyy-MM-dd HH:mm') }}

Nome

{{ $json.body.data.answers.find(a => a.question.id === 90403243)?.answer ?? "" }}

E-mail

{{ $json.body.data.answers.find(a => a.question.id === 90403263)?.answer ?? "" }}

Empresa

{{ $json.body.data.answers.find(a => a.question.id === 90403245)?.answer ?? "" }}

Dimensão da equipa

{{ $json.body.data.answers.find(a => a.question.id === 90403247)?.answer?.labels?.[0] ?? "" }}

O que pretendem ver

{{ $json.body.data.answers.find(a => a.question.id === 90403244)?.answer ?? "" }}

Status

Novo (texto simples, não expressão)

Idioma

{{ $json.body.data.langCode }}

Prepare lead node in n8n with Fields to Set

Salvar lead na folha

  1. Adicione um nó Google Sheets depois de Preparar lead, renomeie para Salvar lead na folha e escolha a operação Adicionar ou atualizar linha.

  2. Ligue a sua conta Google, escolha o ficheiro em Documento e o separador leads em Folha.

  3. Defina Modo de mapeamento de coluna como Mapear automaticamente e Coluna para corresponder como ID da resposta.

  4. Em Opções, acrescente Formato da célula e escolha Permitir ao n8n formatar. Caso contrário, o Google Sheets converte respostas como 2-10 em datas.

Save lead to sheet node: Append or Update Row, Map Automatically, Column to match on Response ID

Por que separar o Preparar lead? Se mudar de folha ou separador no nó Google Sheets, o n8n apaga o seu mapeamento. Com expressões em Preparar lead, nada se perde.

Notificação de resposta por e-mail

  1. Adicione um nó Gmail depois de Salvar lead na folha, renomeie para Notificação de resposta por e-mail, e selecione Mensagem e Enviar.

  2. Ligue a sua conta Gmail e preencha o campo Para com o endereço desejado.

  3. Em Assunto use: Novo pedido de demonstração: {{ $('Preparar lead').item.json.Nome }} ({{ $('Preparar lead').item.json.Empresa }}).

  4. Defina o Tipo de e-mail como HTML e escreva a Mensagem com os detalhes do lead, por exemplo {{ $('Preparar lead').item.json['E-mail'] }} para o e-mail do lead.

  5. Em Opções, adicione Enviar resposta para com {{ $('Preparar lead').item.json['E-mail'] }} para que a resposta vá direto ao lead e desative Adicionar atribuição n8n.

Gmail node E-mail the new lead with To, Subject, Message and Send Replies To

Após fazer alterações, clique novamente em Publicar para garantir que entram em vigor.

n8n workflow: Survio Webhook, Prepare lead, Save lead to sheet, E-mail the new lead

Faça novo pedido de teste. Uma nova linha com status Novo aparece na sua folha e a notificação de resposta por e-mail chega logo a seguir.

The leads tab in Google Sheets with a Status dropdown


​

Caso B — Enviar cada pedido para o HubSpot

Aqui o lead entra direto no HubSpot CRM como contacto com estágio Lead, pronto para a equipa de vendas. O fluxo tem duas etapas depois do webhook: Preparar lead e Criar ou atualizar contacto.

Preparar lead

Adicione um nó Editar campos (Set) logo após o Webhook, renomeie para Preparar lead e adicione estes campos de tipo String. Troque os ids pelas suas referências do Passo 5.

Nome do campo

Valor

E-mail

{{ $json.body.data.answers.find(a => a.question.id === 90403263)?.answer ?? "" }}

Primeiro nome

{{ ($json.body.data.answers.find(a => a.question.id === 90403243)?.answer ?? "").trim().split(" ")[0] }}

Apelido

{{ ($json.body.data.answers.find(a => a.question.id === 90403243)?.answer ?? "").trim().split(" ").slice(1).join(" ") }}

Empresa

{{ $json.body.data.answers.find(a => a.question.id === 90403245)?.answer ?? "" }}

Mensagem

Pedido de demonstração Survio. Dimensão da equipa: {{ $json.body.data.answers.find(a => a.question.id === 90403247)?.answer?.labels?.[0] }}. Pretende ver: {{ $json.body.data.answers.find(a => a.question.id === 90403244)?.answer }}

Os campos Primeiro nome e Apelido separam o nome de apenas uma pergunta "O seu nome". Se o seu formulário pergunta em separado, associe ao id certo.
​

Criar ou atualizar contacto

  1. Adicione um nó HubSpot depois de Preparar lead, renomeie para Criar ou atualizar contacto e defina Contacto como recurso e Criar ou atualizar como ação.

  2. Ligue a sua conta HubSpot.

  3. No campo E-mail utilize {{ $json['E-mail'] }}. O HubSpot usa o e-mail para evitar duplicados a partir dos contactos existentes.

  4. Em Propriedades do contacto, clique em Adicionar propriedade e acrescente: Primeiro nome, Apelido, Nome da empresa e Mensagem com os valores do passo Preparar lead. Defina o Estágio do ciclo de vida como Lead.

HubSpot node Create or update contact with Email, contact properties and Lifecycle Stage Lead

Clique em Publicar de novo após qualquer alteração.

n8n workflow: Survio Webhook, Prepare lead, Create or update contact

O contacto pode ser associado automaticamente a uma empresa. Se o HubSpot encontrar uma empresa com o mesmo domínio de e-mail, associa o novo contacto a ela e poderá herdar o responsável dessa empresa. Normalmente é o pretendido — teste para confirmar no seu caso.

Obtenha o fluxo de trabalho pronto

Em vez de construir o Passo 3 e o seu caso à mão, pode fazer download do nosso fluxo de trabalho. Baixe o ficheiro correspondente no fim deste artigo: survio-demo-requests-to-sheet-and-gmail.json para o Caso A ou survio-demo-requests-to-hubspot.json para o Caso B. Depois:

  1. No n8n, crie um fluxo vazio. No menu (três pontos) ao lado do nome do fluxo, selecione Importar e depois Do ficheiro. Escolha o ficheiro baixado.

  2. Abra Preparar lead e troque os ids das perguntas pelos seus. No Caso A, ajuste também Europe/Prague para o seu fuso horário.

  3. Caso A: abra Salvar lead na folha. Pode surgir um alerta até estar tudo configurado. Ligue sua conta Google, escolha a folha e o separador leads. O n8n pode alterar para mapear manualmente — volte a Mapear automaticamente e selecione ID da resposta em Coluna para corresponder. Abra Notificação de resposta por e-mail, ligue o Gmail e indique o endereço em Para.

  4. Caso B: abra Criar ou atualizar contacto e ligue à sua conta HubSpot.

  5. Abra o Webhook Survio, copie o URL de produção no Survio (Passo 4) e clique em Publicar.

n8n workflow menu with Import and From file

Teste ponta a ponta

  1. Abra o seu site, preencha o formulário pop-up e envie.

  2. Caso A: verifique que uma linha com status Novo aparece no separador leads e que a notificação de resposta por e-mail chegou. Responda e comprove que vai para o lead.

  3. Caso B: abra o HubSpot e confirme se o contacto já aparece com estágio Lead e com o pedido registado na Mensagem.

  4. No n8n, consulte o separador Execuções. Todas as entregas e dados aparecem ali.

Resolução de problemas

Sintoma

Causa

Como resolver

Nada chega ao n8n

O URL de teste está no Survio, ou o fluxo não foi publicado

Cole o URL de produção no Survio e publicite o fluxo

O Survio não aceita o URL de webhook do n8n autoalojado

O n8n mostra endereço interno em vez do público

Defina WEBHOOK_URL do n8n para o endereço público https e copie novamente o URL

"Ouvir evento de teste" não mostra nada após envio

O Survio envia para o URL de produção; ouvir vê só o de teste

Verifique o separador Execuções

A última alteração não surte efeito

O fluxo está publicado, mas a alteração não (botão Publicar mostra um ponto)

Clique Publicar novamente

Uma coluna fica vazia e outra aparece no fim

Nome do campo em Preparar lead não coincide com o cabeçalho

Renomeie o campo e elimine a coluna extra

A mesma lead aparece duas vezes

Operação definida apenas para Adicionar linha, ou sem coluna para corresponder

Use Adicionar ou atualizar linha e relacione com ID da resposta

Resposta vai para si em vez da lead

Campo "Enviar resposta para" não definido no Gmail

Em Opções, indique o e-mail da lead

Dimensão da equipa aparece como data

Google Sheets lê 2-10 como data

Em Salvar lead na folha, defina Formato da célula para Permitir ao n8n formatar

Endereço de e-mail ausente

Lê data.email

Leia da resposta à pergunta de e-mail

Criar ou atualizar contacto falha

O e-mail está vazio, inválido ou ligação HubSpot expirou

Defina o e-mail como obrigatório e volte a ligar o HubSpot

Survio desativou o webhook

O URL do webhook falhou durante 5 dias seguidos

Corrija o problema e ative o webhook no Survio

Informação útil

  • O Survio só envia respostas completas, uma mensagem por resposta e em segundos. O formulário fechado a meio não envia nada.

  • Nada é enviado retroativamente: nem respostas anteriores, nem enquanto o webhook estiver pausado.

  • Reenvio de entregas falhadas até 8 vezes em cerca de 27 horas, cada tentativa aguarda até 30 segundos. Usar ID da resposta evita duplicados em reenvio.

  • Após 5 dias de falha, o Survio desativa o webhook: só ativa novamente depois de corrigir o erro.

  • Pausar mantém o webhook, apagar elimina de vez.

  • O Survio não guarda histórico de entregas na app. Use o separador Execuções do n8n para registo.

  • Respostas enviadas a webhooks não consomem respostas do plano.

Prefere configuração feita por especialistas? Na página de Webhooks do Survio, clique em Obter configuração de especialista, explique o que deseja e a nossa equipa fará a configuração, testes e entrega do webhook pronto a usar.

Isto respondeu à sua pergunta?