Referência do formulário de pré-redirecionamento
Planos por capacidade, rótulos do app e campos da API, cookies do visitante, tipos e limites de campo, validações e o que não é suportado.

Use esta página para consultar um plano, um campo, um cookie ou um limite do Formulário de pré-redirecionamento. Os passos estão nos guias; o raciocínio por trás do caminho de um lead está em Para onde vão os leads.
Disponibilidade por plano
| Capacidade | Plano |
|---|---|
Formulário de pré-redirecionamento (botão, campos da API) | Business ou superior. Abaixo disso o botão fica desabilitado e ligar pela API é recusado (403). Um formulário salvo no Business continua funcionando depois de um downgrade; pode ser desligado, mas não religado |
Onde pode ser ativado | qualquer link curto; QR Codes dinâmicos de todos os tipos; não em QR Codes estáticos |
Respostas em Respostas, exportação CSV, notificação por e-mail | qualquer plano que tenha o formulário |
Registros em Clientes | Business ou superior |
Eventos de lead em Eventos e Análise, webhooks lead.created | Monitoramento de conversão ligado na página (Pro ou superior); webhooks Pro ou superior |
Conectores de CRM (RD Station, Kommo, HubSpot, Google Sheets) | Starter ou superior |
Páginas por workspace | Free 1 · Starter 5 · Pro 20 · Business 100 · Scale 500 · Enterprise ilimitado |
"Powered by CodeQR" no formulário | somente workspaces Free |
Rótulo do app → campo da API
| No app | Campo da API | Valores |
|---|---|---|
botão Formulário de pré-redirecionamento | preRedirection | true / false (padrão) |
Usar formulário da plataforma → Selecionar página | pageId + pageUrl | id da página + https://<domínio da página>/<chave da página> |
campo de Usar formulário externo | pageUrl (com pageId: null) | qualquer URL http(s) |
Preenchimento obrigatório? | isFormMandatory | true / false (padrão); exige pageId |
Os quatro campos existem em links e QR Codes e aparecem em toda resposta da API e payload de webhook deles. Detalhes e erros: Configure formulários de pré-redirecionamento pela API.
O que o visitante recebe
| Situação | Resposta |
|---|---|
Pessoa, sem cookie skipForm | 200, a página do formulário (x-pathname: /<domínio>/pre-redirection/<chave>/link ou /qrcode); o clique ou scan é registrado agora |
Pessoa com cookie skipForm, ou ?skipForm= na URL | 302 para o destino (Regras inteligentes e segmentação aplicadas) |
Robô, crawler, prévia de link (WhatsApp, Slack, Facebook, Google) | 302 para o destino, sem formulário |
QR Code de WhatsApp depois do formulário | 302 para https://wa.me/<número>?text=<mensagem> |
O modal mostra título, descrição e imagem do destino (das tags Open Graph) no cabeçalho, e a página de destino desfocada atrás, ou seja, o destino é carregado no navegador do visitante antes de o formulário ser enviado.
Cookies do visitante
| Cookie | Gravado quando | Valor | Path | Validade |
|---|---|---|---|---|
cq_id | primeira visita ao link ou QR Code | id do clique | /<chave> | 1 hora; 30 dias quando o link tem Monitoramento de conversão ligado |
skipForm | depois de enviar ou pular | FORM_FILLED ou CONTINUED_WITHOUT_FORM | /<chave> | 1 hora |
Os dois cookies são gravados pelo servidor (Set-Cookie), então o teto de 7 dias do Safari para cookies escritos por script não os encurta. Uma janela anônima não tem cookies, então o formulário aparece de novo. Os valores de UTM gravados com a resposta são lidos da barra de endereço da página do formulário no momento do envio, não de um cookie.
Formulário (Página da CodeQR)
Tipos de página com formulário | Formulário de Contato, Feedback, Newsletter, Pesquisa/Questionário, Cartão de Visita Digital (e os tipos marcados como Em breve, quando lançados) |
Tipos de campo | Texto, E-mail, Número, Telefone, Data, Hora, Lista suspensa, Múltipla escolha, Caixas de seleção, Texto longo, Avaliação, Escala, Oculto |
Opções por campo | rótulo, placeholder, descrição, obrigatório, valor padrão, parâmetro de pré-preenchimento, etapa (1 a 4), validação (tamanho mín./máx., mín./máx., padrão pronto e-mail · telefone · URL · dígitos · CPF, padrão próprio, mensagem de erro) |
Limites por envio | 100 campos · 5.000 caracteres por valor · 100 KB no total · valores de UTM cortados em 500 caracteres · 4 etapas |
Consentimento | texto de consentimento (padrão ou o seu) + URL da política de privacidade opcional. Exigir caixa de consentimento vem ligado; páginas Pesquisa/Questionário começam com ele desligado. Ligado: o botão fica desabilitado até marcar, e consentAt e o texto do consentimento ficam gravados com a resposta. Desligado: o texto e o link da política aparecem como aviso junto ao botão, o texto fica gravado e consentAt fica vazio |
Antispam | campo honeypot oculto; 10 envios por minuto por IP e página (Muitos envios. Tente novamente em instantes.); revalidação de todo campo no servidor |
Notificação | Receber novos leads por e-mail → proprietários do workspace; assunto New lead on <título da página> |
Idioma | os seus textos aparecem como você escreveu; os textos da CodeQR (consentimento padrão, Li e concordo, avisos, mensagens de erro padrão, a última linha do modal) seguem o idioma do visitante, com um menu de idioma no formulário |
Onde a resposta é guardada
FormResponse: página, id do clique, nome, e-mail, mensagem, avaliação, consentAt (vazio quando a página mostra um aviso em vez da caixa), consentText, uma linha por campo personalizado (pelo id do campo), duração, utm_* do link curto. Nenhum endereço IP é guardado. Exportação: Respostas → Exportar CSV (createdAt, name, email, message, rating, completed, duration, consentAt, <rótulos personalizados>, utm_*).
Mensagens de validação
App: Nota: Para formulários externos, não é possível garantir o preenchimento obrigatório, pois o usuário pode fechar o modal a qualquer momento. (embaixo do campo de URL externa) · Você só pode ativar o formulário de pré-redirecionamento nos planos Business e superiores. (dica do botão desabilitado abaixo do Business, ao lado do selo Business) · O formulário de pré-redirecionamento só está disponível em QR Codes dinâmicos (dica do botão desabilitado num QR Code estático).
Visitante: Esta página não está publicada, então não pode receber envios no momento. (envio numa página despublicada depois que o formulário abriu).
API (400 unprocessable_entity): Pre-redirection page URL missing · Invalid pre-redirection page URL · CodeQR page required for form submission · Pre-redirection forms only work on dynamic QR codes. Send "preRedirection": false or "static": false. 404 not_found: Page not found. 403 forbidden: You can only use pre-redirection on a Business plan and above. Upgrade to Business to use this feature.
Ordem de operações numa visita
- Link banido, senha, expiração e tratamento de prévias.
- Formulário de pré-redirecionamento: aparece quando
preRedirectionestá ligado,pageUrlestá definido, a página (num formulário de Página da CodeQR) está publicada, o visitante não é robô e não tem cookieskipForm. O clique ou scan é registrado aqui. - Depois do formulário (ou na segunda passagem): Camuflagem de links, Regras inteligentes, Segmentação iOS/Android/Geográfica e então a URL de destino. A query string da primeira visita é acrescentada à URL de destino; um QR Code de WhatsApp abre o
wa.mesem ela.
Não suportado hoje
- As tools do servidor MCP e os módulos do Zapier, do Make e da Pluga não têm campos de formulário. Use a API.
- Formulários externos obrigatórios; receber respostas de formulários externos na CodeQR.
- QR Codes estáticos (a API recusa a combinação).
- Limite de leads por plano. O limite de páginas por plano continua valendo.