Aller au contenu principal
4 min de lecture

Catch-hook Zapier

Connectez les événements Zenovay à n'importe laquelle des 5 000+ applications prises en charge par Zapier — Notion, Airtable, HubSpot, Linear, Trello, Gmail, et bien d'autres.

Cette recette utilise le déclencheur Webhooks by Zapier → Catch Hook de Zapier.

Les webhooks sortants sont une fonctionnalité Pro+ de Zenovay. Le déclencheur Catch Hook de Zapier nécessite un plan Zapier Free ou supérieur ; les webhooks Premium Zapier (Catch Raw Hook) nécessitent un plan Zapier Starter ou supérieur.


1. Créer un zap avec un déclencheur Catch Hook

  1. Dans Zapier, cliquez sur Create Zap.
  2. Pour le déclencheur, sélectionnez Webhooks by Zapier → choisissez Catch Hook.
  3. Passez l'invite "Pick off a Child Key" (laissez vide — nous voulons la charge complète de l'événement).
  4. Zapier affiche une Custom Webhook URL comme https://hooks.zapier.com/hooks/catch/12345678/abcdef/ — copiez-la.

2. Ajouter le webhook dans Zenovay

  1. Dans app.zenovay.com, allez dans Paramètres → Webhooks.
  2. Sélectionnez le site web qui doit déclencher des événements dans ce zap.
  3. Cliquez sur Ajouter un webhook.
  4. Remplissez :
    • Nom : Zapier — <ce que le zap fait> (ex. Zapier — Add to Notion)
    • URL : collez l'URL du Catch Hook Zapier de l'étape 1
    • Événements : sélectionnez les événements auxquels le zap doit réagir
  5. Cliquez sur Créer le webhook.
  6. Cliquez sur Envoyer un événement de test (icône avion en papier).

3. Tester le déclencheur dans Zapier

  1. De retour dans Zapier, cliquez sur Test trigger. Zapier devrait maintenant afficher la charge de l'événement de test Zenovay.
  2. Cliquez sur Continue with selected record.
  3. Construisez le reste du zap (les étapes d'action) en utilisant les champs de la charge Zenovay — sélections courantes :
    • event_type (ex. traffic_spike, goal_completed)
    • website_id
    • data.* (charge spécifique à l'événement)
    • timestamp

4. Recettes de zaps courants

Lorsque cet événement Zenovay se déclenche……faites ceci dans Zapier
goal_completedAjouter une ligne dans Airtable / Contact CRM HubSpot
traffic_spikeEnvoyer un DM Slack à la personne de garde
website_downCréer un problème Linear urgent / notifier quelqu'un via Twilio
error_spikeOuvrir une alerte Sentry (ou escalader via PagerDuty)

5. Vérifier la signature Zenovay (avancé)

Le Catch Hook de Zapier ne vérifie pas nativement les signatures HMAC. Pour les zaps en production où la vérification de signature est importante (ex. conformité), placez un Cloudflare Worker devant le zap qui vérifie puis transfère :

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 });

    // Forward to Zapier
    await fetch(ZAPIER_CATCH_HOOK_URL, {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: rawBody,
    });
    return new Response('ok');
  },
};

Votre secret de webhook est affiché dans Paramètres → Webhooks → cliquez sur l'icône œil sur la carte du webhook.


Dépannage

  • Zapier "We didn't find a request" : cliquez sur Envoyer un événement de test dans Zenovay APRÈS avoir cliqué sur Test trigger dans Zapier — Zapier écoute pendant ~10 minutes.
  • Le zap se déclenche plusieurs fois sur les mêmes données : le Catch Hook de Zapier ne déduplique PAS. Si vous voulez l'idempotence, filtrez sur la idempotency_key que Zenovay envoie dans la charge (ou dans l'étape d'action, utilisez une étape Filter by Zapier qui vérifie par rapport à un enregistrement existant).
  • Champs longs tronqués : Zapier tronque les exemples de réponses dans l'éditeur, mais la charge complète est livrée à l'exécution.

Voir aussi

Cette page vous a-t-elle été utile ?