⚙️ Automatisation

automation-zapier-workflow-builder

Automatisation avec Zapier — Zaps multi-étapes, filtres, paths, webhooks et intégration entre applications.

⚡ Installation & lancement en 1 commande

Copiez-collez dans votre terminal : le skill s'installe dans ~/.claude/skills et Claude Code se lance directement dessus.

macOS / Linux
curl -fsSL https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.sh | sh -s -- automation-zapier-workflow-builder --launch
Windows (PowerShell)
iex "& { $(iwr -useb https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.ps1) } automation-zapier-workflow-builder -Launch"

🚀 Déjà installé ?

claude "/automation-zapier-workflow-builder"

Ou tapez /automation-zapier-workflow-builder dans une session Claude Code, ou décrivez simplement votre besoin — le skill se déclenche automatiquement via le skill-router.

🔑 Déclencheurs automatiques

Le skill s'active automatiquement quand votre demande contient :

ZapierZapautomatiser sans codeconnecter des appswebhook Zapier

📦 Installation manuelle

git clone https://github.com/khalilbenaz/claude-skills-collection.git cp -r claude-skills-collection/skills/automation-zapier-workflow-builder ~/.claude/skills/

Payload du plugin : skills/automation-zapier-workflow-builder · source éditable : automation-skills/zapier-workflow-builder

📖 Manuel

Zapier Workflow Builder

Workflow

1. Cadrer le besoin avant d'ouvrir Zapier

Critère de décision : Zap ou autre outil ?

BesoinRecommandation
Connecter 2 apps SaaS sans devZapier
Logique complexe / boucles imbriquéesMake (Integromat) ou n8n
Volume > 50 000 tâches/moisMake ou pipeline dédié
Accès base de données directen8n + SQL step

2. Configurer le trigger

  1. Choisir l'app source et l'événement (ex. New Lead dans HubSpot).
  2. Connecter le compte OAuth ou API Key — Zapier stocke les credentials chiffrés.
  3. Cliquer Test trigger : récupérer un enregistrement réel pour avoir des données d'exemple dans toutes les étapes suivantes.
  4. Si l'app ne supporte pas le polling : utiliser Webhooks by Zapier → Catch Hook et copier l'URL générée dans l'app source.
URL webhook Zapier exemple :
https://hooks.zapier.com/hooks/catch/123456/abcxyz/

3. Ajouter les étapes de transformation

Formatter by Zapier — transformer sans code :

Filter by Zapier — stopper l'exécution si la condition n'est pas remplie :

Champ : "Statut"   Condition : "exactly matches"   Valeur : "Payé"

Placer les filtres le plus tôt possible dans le Zap pour éviter de consommer des tâches.

Delay by Zapier :


4. Configurer les actions de destination

  1. Choisir l'app cible et l'opération (ex. Create Row dans Google Sheets).
  2. Mapper les champs en cliquant sur l'icône + pour insérer des variables dynamiques des étapes précédentes.
  3. Utiliser les champs imbriqués si l'action accepte du JSON : cliquer "Use a Custom Value" et entrer la variable directement.
  4. Tester l'action individuellement — vérifier dans l'app cible que l'enregistrement est créé/modifié correctement.

5. Implémenter les Paths (branches conditionnelles)

Les Paths remplacent plusieurs Zaps séparés sur le même trigger.

Trigger : Nouveau formulaire soumis
│
├── Path A : budget > 10 000 € → Notifier équipe commerciale Slack + Créer deal HubSpot
├── Path B : budget 1 000–10 000 € → Envoyer email automatique + Créer contact CRM
└── Path C : budget < 1 000 € → Ajouter à liste Mailchimp seulement

6. Webhooks — appels API sortants

Envoyer une requête HTTP POST :

// Action : Webhooks by Zapier → POST
URL    : https://api.monservice.com/v1/contacts
Method : POST
Headers:
  Authorization : Bearer {{api_key}}
  Content-Type  : application/json
Data (JSON):
{
  "email": "{{1. Email}}",
  "name":  "{{1. Full Name}}",
  "source": "zapier"
}

Parser la réponse : Zapier expose automatiquement les champs JSON de la réponse dans les étapes suivantes sous webhooks_by_zapier__catch_hook.

Pour les API paginées ou les réponses complexes : utiliser Code by Zapier (Python/JavaScript).


7. Code by Zapier — pour les cas non couverts nativement

// Exemple JavaScript — construire un objet JSON dynamique
const items = inputData.line_items.split(',');
const total = items.reduce((acc, item) => {
  const [name, price] = item.split(':');
  return acc + parseFloat(price);
}, 0);

output = [{ total: total.toFixed(2), count: items.length }];
# Exemple Python — appel API avec authentification custom
import requests

resp = requests.get(
    'https://api.exemple.com/orders',
    headers={'X-Api-Key': input_data['api_key']},
    params={'status': 'pending'}
)
orders = resp.json()
output = [{'order_count': len(orders['data'])}]

8. Tester et activer

  1. Tester chaque étape individuellement avec les données récupérées au step 2.
  2. Lancer un test complet (bouton "Test Zap") — vérifier l'enregistrement créé dans l'app cible.
  3. Tester les cas limites : champ vide, valeur nulle, format de date inattendu.
  4. Activer le Zap → surveiller le Task History pendant les 24 premières heures.

Surveillance et maintenance


Garde-fous et anti-patterns

Anti-patternProblèmeRemède
Pas de filtre en début de ZapConsomme des tâches inutilementAjouter un Filter juste après le trigger
Zaps en doublon pour chaque conditionMaintenance éclatéeCentraliser avec Paths
Mapper un champ texte libre comme IDDonnées corrompues si l'utilisateur change le texteToujours mapper l'ID unique (uuid, record_id)
Aucune gestion des champs videsErreurs silencieuses dans l'app cibleUtiliser Formatter → "Default Value" ou un filtre préventif
Activer sans test end-to-endCréation de doublons ou données erronées en prodTest obligatoire avant activation
Stocker des secrets dans les champs libresCredential exposé dans les logs ZapierUtiliser les connexions OAuth ou les champs "Password" dans Zapier
Zap sans nom descriptif ni notesIngérable après 3 moisNommer + documenter la logique métier dans le champ "Notes"

Bonnes pratiques 2026