Webhooks de saída

Webhooks em tempo real para atividade em PDFs

No momento em que alguém abrir a sua proposta, baixar o relatório ou preencher o formulário de contato, o EveryPage envia um POST HTTPS assinado para o endpoint que você escolher - o seu CRM, um serviço próprio ou um canal do Slack.

Solte seu PDF aqui

ou clique em qualquer lugar da bandeja para procurar

Somente PDF · máx. 20MB

Grátis para começar · webhooks em todos os planos, até 25 endpoints · adicione-os em Configurações da conta

Cada evento, enviado

Visualizações, downloads, formulários de captura concluídos, comentários de leitores, confirmações de recebimento e links autodestrutivos que se queimam - cada um chega ao seu endpoint poucos segundos depois de acontecer. Sem consultas repetidas, sem ficar atualizando a página.

Assinado com cuidado

Cada entrega traz uma assinatura HMAC-SHA256 calculada com o segredo do seu endpoint, no estilo do Stripe. O seu receptor consegue comprovar que cada POST realmente veio do EveryPage e não é uma reprodução.

Novas tentativas até chegar

Uma entrega que falhe é repetida automaticamente, com intervalos de espera crescentes. Um endpoint que continue falhando é desativado - e você é avisado - em vez de engolir eventos em silêncio para sempre.

Avisos no Slack, sem instalar app

Aponte um webhook para a URL de Incoming Webhook do Slack e escolha o formato Slack: os eventos chegam como mensagens formatadas (Block Kit) no seu canal. Nada do diretório do Slack para instalar ou aprovar.

Quais eventos um webhook pode enviar?

Um PDF compartilhado gera momentos que você quer acompanhar enquanto ainda estão acontecendo - um cliente em potencial abrindo a proposta, um lead preenchendo o formulário de captura, um link de uso único se queimando sozinho. Cada endpoint assina exatamente os eventos que lhe interessam:

  • Visualizado. Um leitor abriu o documento. Disparado a cada visita, com o arquivo, a origem da visita e a identidade do leitor que o seu plano informa - o suficiente para o CRM registrar quem voltou.
  • Baixado. Uma cópia saiu de casa. O evento informa qual documento e qual leitor a levou.
  • Formulário concluído. Um leitor passou pelo gate de e-mail ou pelo formulário de captura de leads. O payload traz os campos capturados, prontos para ir direto ao seu CRM enquanto o lead ainda está lendo. É a única entrega exclusiva do Pro: ela carrega dados de leads, então só é enviada enquanto a conta estiver no Pro.
  • Comentário adicionado. Um leitor deixou feedback no documento - privado ou público - para que a pessoa certa possa responder enquanto o leitor ainda está na página.
  • Recebimento confirmado. Um leitor marcou o documento como recebido. Prova de entrega, enviada para onde quer que fique a sua trilha de auditoria.
  • Link queimado. Um link autodestrutivo esgotou o limite de visualizações e se apagou - o último evento que um link envia. O seu registro de leitura sobrevive; o webhook avisa o momento exato em que o documento saiu de circulação.

Verificando a assinatura

Cada entrega inclui um cabeçalho de assinatura no mesmo estilo t/v1 que o Stripe usa: um timestamp Unix e um digest hexadecimal, separados por vírgula. O digest é um HMAC-SHA256 do timestamp, de um ponto e do corpo bruto da requisição, usando o segredo de assinatura do endpoint que a recebeu.

Para verificar: leia o timestamp e a assinatura do cabeçalho, recalcule o HMAC-SHA256 sobre timestamp-ponto-corpo com o seu segredo e compare o seu digest com o v1 usando comparação em tempo constante. Rejeite qualquer coisa cujo timestamp seja mais antigo que a sua tolerância - cinco minutos é o comum - e entregas forjadas ou reenviadas nem passam da porta.

O segredo de assinatura é gerado por endpoint e mostrado uma única vez, na criação. Guarde-o como uma senha; se ele vazar ou sumir, gire o endpoint e um novo segredo será gerado.

Entrega, novas tentativas e manutenção

Uma entrega é um POST para o seu endpoint HTTPS com corpo JSON; qualquer resposta 2xx conta como recebida. Todo o resto - um timeout, um 500, uma conexão caída - é repetido automaticamente com intervalos crescentes, então uma implantação ou um soluço do seu lado não custa nada. O evento chega quando você voltar.

Um endpoint que falhe em todas as tentativas durante um período contínuo é desativado automaticamente, para não ficar engolindo eventos no vazio - o status aparece em Configurações da conta e você pode reativá-lo quando o seu lado estiver corrigido. Cada conta pode cadastrar até 25 endpoints, cada um com o seu próprio segredo, a sua própria seleção de eventos e o seu próprio formato de payload.

Notificações no Slack em três passos

O suporte ao Slack é um formato de webhook, não um app do Slack - não há nada do diretório de apps para instalar nem nada para um administrador do workspace aprovar.

  1. Crie um Incoming Webhook no Slack. No Slack, adicione um Incoming Webhook ao canal onde você quer receber as notificações. O Slack entrega uma URL exclusiva para esse canal.
  2. Cole a URL no EveryPage. Adicione-a como endpoint de webhook em Configurações da conta, exatamente como faria com qualquer outra URL de endpoint.
  3. Escolha o formato Slack. Selecione Slack como formato de payload e escolha os seus eventos. A partir daí, cada visualização da sua proposta vira uma mensagem Block Kit formatada no canal, poucos segundos depois.

Prefere sem código? Use o Zapier

Se você não quiser manter nenhum endpoint de recebimento, o Integração com o Zapier conecta o EveryPage a mais de 7.000 apps sem código. Ele consulta em intervalos programados em vez de enviar em tempo real, o que basta para a maioria dos fluxos de notificação e registro.

Os webhooks são a ponta em tempo real, para desenvolvedores, do mesmo espectro: entrega por push, payloads assinados e o seu próprio código decidindo o que acontece depois. Veja todas as integrações do EveryPage para tudo o que fica entre um e outro.

Perguntas sobre webhooks.

O que são webhooks de PDF?

Um webhook é um POST HTTPS que o EveryPage envia para uma URL que você controla, no momento em que algo acontece com um documento que você compartilhou - uma visualização, um download, um formulário de captura concluído, um comentário, um recebimento confirmado ou uma queima autodestrutiva. Em vez de consultar o seu painel de leitura, os seus sistemas são avisados em tempo real.

Como recebo notificações no Slack quando alguém lê o meu PDF?

Crie um Incoming Webhook no Slack para o canal desejado, cole a URL dele no EveryPage como endpoint de webhook e escolha o formato de payload Slack. Os eventos então chegam como mensagens Block Kit formatadas nesse canal. Não é preciso instalar um app do Slack nem ter a aprovação de um administrador do workspace.

Como verifico se um webhook realmente veio do EveryPage?

Cada entrega é assinada com HMAC-SHA256 usando o segredo do seu endpoint, no mesmo estilo de cabeçalho com timestamp mais assinatura que o Stripe usa. Recalcule o digest sobre o timestamp e o corpo bruto da requisição, compare-o com o valor v1 em tempo constante e rejeite timestamps antigos - requisições forjadas ou reenviadas não passam na verificação.

O que acontece se o meu endpoint estiver fora do ar?

Entregas que falham são repetidas automaticamente com intervalos crescentes, então uma queda do seu lado só atrasa o evento. Um endpoint que continue falhando durante toda a programação de novas tentativas, por um período contínuo, é desativado automaticamente; o status aparece em Configurações da conta e você pode reativá-lo depois de corrigido.

Qual plano inclui webhooks e quantos endpoints posso adicionar?

Todos os planos incluem webhooks de saída - Grátis, Basic e Pro - junto com o formato Slack. Cada conta pode cadastrar até 25 endpoints, cada um com o seu próprio segredo de assinatura, seleção de eventos e formato de payload. Uma exceção: entregas de formulário concluído (gate.completed) carregam dados de leads capturados, então só são enviadas enquanto a conta estiver no Pro. Se você quer automação sem código, a integração com o Zapier está disponível como alternativa.

Conecte os seus documentos a todo o resto.

Adicione um endpoint ou um canal do Slack - funciona em todos os planos - e, da próxima vez que alguém abrir a sua proposta, as suas ferramentas vão saber antes de você.

Comparar planos

Relacionados: a API para desenvolvedores · rastreamento de leitura de PDF · formulários de captura de leads · todas as integrações