Catch-hook do Zapier
Conecte eventos do Zenovay a qualquer um dos mais de 5.000 apps suportados pelo Zapier — Notion, Airtable, HubSpot, Linear, Trello, Gmail, e muito mais.
Esta receita usa o trigger Webhooks by Zapier → Catch Hook do Zapier.
Webhooks de saída são um recurso Pro+ do Zenovay. O trigger Catch Hook do Zapier requer um plano gratuito ou superior do Zapier; os webhooks Premium do Zapier (Catch Raw Hook) requerem um plano Starter do Zapier ou superior.
1. Criar um Zap com trigger Catch Hook
- No Zapier, clique em Create Zap.
- Para o trigger, escolha Webhooks by Zapier → selecione Catch Hook.
- Pule o prompt "Pick off a Child Key" (deixe em branco — queremos o payload completo do evento).
- O Zapier exibe uma Custom Webhook URL como
https://hooks.zapier.com/hooks/catch/12345678/abcdef/— copie-a.
2. Adicionar o webhook no Zenovay
- Em
app.zenovay.com, acesse Settings → Webhooks. - Escolha o site que deve disparar eventos para este zap.
- Clique em Add webhook.
- Preencha:
- Name:
Zapier — <o que o zap faz>(ex:Zapier — Adicionar ao Notion) - URL: cole a URL do Zapier Catch Hook do Passo 1
- Events: escolha os eventos que o zap deve processar
- Name:
- Clique em Create webhook.
- Clique em Send test event (ícone de avião de papel).
3. Testar o trigger no Zapier
- De volta no Zapier, clique em Test trigger. O Zapier deverá mostrar agora o payload do evento de teste do Zenovay.
- Clique em Continue with selected record.
- Construa o restante do zap (as etapas de ação) usando campos do payload do Zenovay — escolhas comuns:
event_type(ex:traffic_spike,goal_completed)website_iddata.*(payload específico do evento)timestamp
4. Receitas comuns de zap
| Quando este evento do Zenovay disparar… | …faça isso no Zapier |
|---|---|
goal_completed | Adicionar uma linha no Airtable / contato CRM no HubSpot |
traffic_spike | Enviar um DM no Slack para a pessoa de plantão |
website_down | Criar uma issue urgente no Linear / acionar alguém via Twilio |
error_spike | Abrir alerta no Sentry (ou escalar via PagerDuty) |
5. Verificar a assinatura do Zenovay (avançado)
O Catch Hook do Zapier não verifica assinaturas HMAC nativamente. Para zaps em produção onde a verificação de assinatura importa (ex: compliance), coloque um Cloudflare Worker na frente do zap que verifique e encaminhe:
import { createHmac } from 'crypto';
export default {
async fetch(req) {
const rawBody = await req.text();
const signature = req.headers.get('x-zenovay-signature') || '';
const provided = signature.replace(/^sha256=/, '');
const expected = createHmac('sha256', YOUR_WEBHOOK_SECRET)
.update(rawBody)
.digest('hex');
if (provided !== expected) return new Response('invalid signature', { status: 401 });
// Encaminhar para o Zapier
await fetch(ZAPIER_CATCH_HOOK_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: rawBody,
});
return new Response('ok');
},
};
Seu segredo do webhook é exibido em Settings → Webhooks → clique no ícone de olho no cartão do webhook.
Solução de problemas
- Zapier "We didn't find a request": clique em Send test event no Zenovay DEPOIS de clicar em Test trigger no Zapier — o Zapier aguarda por cerca de 10 minutos.
- Zap dispara repetidamente com os mesmos dados: o Catch Hook do Zapier NÃO deduplica. Se quiser idempotência, filtre pelo
idempotency_keyque o Zenovay envia no payload (ou, na etapa de ação, use uma etapaFilter by Zapierque verifique um registro existente). - Campos longos truncados: o Zapier trunca os exemplos de resposta no editor, mas o payload completo é entregue em tempo de execução.