Tous les guides
DébutantÀ votre rythmeGuide gratuitSection 39/50

Créer son premier scénario Make pas à pas

Découvrez les usages de l’IA générative : prompts, assistants, création multimédia et contrôles des réponses. Progressez par sections et exercices, à votre rythme.

💡

Contenu gratuit, accessible sans compte. Les outils et modèles évoluent : consultez le dossier actuel pour vérifier leurs versions. Modèles et sources

Section 10.6.2 : Créer son premier scénario Make pas à pas

🎯 Objectif pédagogique

Construire de A à Z un scénario Make fonctionnel qui intègre ChatGPT pour automatiser une tâche métier concrète : le traitement automatique de formulaires. Vous apprendrez le processus complet, du trigger au logging, en passant par le routing conditionnel.


Le projet : traitement automatique de formulaires

Imaginez : vous recevez 50 demandes par jour via un formulaire de contact. Chaque demande doit être lue, catégorisée (support ? devis ? réclamation ?), une réponse appropriée rédigée, et le tout logué dans un tableau de suivi. Manuellement, ça prend 4 heures par jour. Avec Make + ChatGPT, ça prend 0 minutes — tout est automatique.

Voici le scénario que nous allons construire :

  1. →Un formulaire Google Forms est soumis → trigger
  2. →Make récupère les données → extraction automatique
  3. →ChatGPT analyse et catégorise la demande → intelligence
  4. →Un Router envoie vers le bon chemin → logique conditionnelle
  5. →Un email de réponse personnalisé est envoyé → action
  6. →Les données sont sauvegardées dans Google Sheets → logging

Pré-requis : préparer les outils

Avant de construire, préparez :

  1. →Un formulaire Google Forms avec 4 champs : Nom, Email, Sujet (liste déroulante : Support technique / Demande de devis / Réclamation / Autre), Message (texte long)
  2. →Un Google Sheet "Suivi Demandes" avec les colonnes : Date | Nom | Email | Sujet | Catégorie IA | Urgence | Résumé | Statut
  3. →Une clé API OpenAI (depuis platform.openai.com → API keys)
  4. →Un compte Slack (optionnel, pour les notifications urgentes)

Étape 1 : Configurer le trigger

Module : Google Forms > Watch Responses

  1. →Sur le canvas Make, cliquez le gros + central → recherchez "Google Forms"
  2. →Sélectionnez l'action "Watch Responses"
  3. →Cliquez "Add" pour créer une connexion → autorisez l'accès à votre compte Google
  4. →Sélectionnez votre formulaire dans la liste déroulante
  5. →Limit : laissez à 10 (nombre max de réponses traitées par exécution)
  6. →Cliquez "OK" pour valider

Ce que produit ce module : à chaque exécution, il retourne les nouvelles réponses sous forme de données structurées — {{1.Nom}}, {{1.Email}}, {{1.Sujet}}, {{1.Message}}.

Trigger : Watch vs Instant

"Watch Responses" vérifie les nouvelles réponses à intervalle régulier (5, 15, 60 min). Pour une réponse immédiate, utilisez plutôt un Webhook : Google Forms → Google Apps Script → envoi webhook vers Make. Plus complexe à configurer, mais la réponse est quasi-instantanée au lieu d'attendre le prochain cycle de polling.

Étape 2 : Analyser avec ChatGPT

Module : OpenAI > Create a Chat Completion

Ajoutez le module en cliquant le petit + à droite du trigger. Configuration détaillée :

  • →Connection : cliquez "Add" → collez votre clé API OpenAI
  • →Model : gpt-4o-mini (rapide et économique, ~$0.15/million tokens)
  • →Messages :
    • →Role : System
    • →Message Content (le system prompt, crucial pour la qualité) :
Tu es un assistant de traitement de demandes client pour une entreprise de services numériques. Tu reçois des messages de clients et tu dois les analyser avec précision.

INSTRUCTIONS :
1. Catégorise la demande parmi : support_technique, devis, reclamation, information, partenariat
2. Évalue l'urgence : haute (problème bloquant / client mécontent), moyenne (demande standard), basse (question simple)
3. Résume la demande en UNE phrase
4. Rédige une réponse professionnelle, empathique et personnalisée (utilise le prénom du client)

RÈGLES pour la réponse :
- Tutoie si le message du client est informel, vouvoie sinon
- Si réclamation : commence par reconnaître le problème et t'excuser
- Si devis : remercie et indique qu'un commercial reviendra sous 24h
- Si support : donne une première piste de solution si possible

RETOURNE ABSOLUMENT en JSON valide, sans aucun texte avant ou après :
{
  "categorie": "...",
  "urgence": "haute|moyenne|basse",
  "resume": "...",
  "reponse_suggeree": "...",
  "sentiment": "positif|neutre|negatif"
}
  • →Ajoutez un second message avec Role : User et Message Content :
Nom: {{1.Nom}}
Email: {{1.Email}}
Sujet: {{1.Sujet}}
Message: {{1.Message}}
  • →Temperature : 0 (pour des résultats déterministes et cohérents)
  • →Max Tokens : 500 (suffisant pour le JSON de réponse)
  • →Response Format : sélectionnez json_object (force le modèle à retourner du JSON valide)

Pourquoi gpt-4o-mini et pas GPT-5 ? Pour cette tâche de catégorisation/rédaction standard, gpt-4o-mini est ~20x moins cher et suffisamment performant. GPT-5 est réservé aux tâches de raisonnement complexe. À 50 demandes/jour, la différence : $0.25/mois (mini) vs $5/mois (GPT-5). Sur un an : $3 vs $60.

Étape 3 : Parser le JSON de la réponse IA

Le module OpenAI retourne une string JSON dans {{2.choices[0].message.content}}. Pour utiliser les champs individuels (catégorie, urgence, etc.) dans les modules suivants, vous avez deux options :

Option A — parseJSON inline (ce que nous utilisons) :

{{parseJSON(2.choices[0].message.content).categorie}}
{{parseJSON(2.choices[0].message.content).urgence}}
{{parseJSON(2.choices[0].message.content).reponse_suggeree}}

Option B — module JSON > Parse (plus propre pour les scénarios complexes) : Ajoutez un module "JSON > Parse JSON" entre OpenAI et le Router. Il crée des variables proprement nommées.

Étape 4 : Router selon la catégorie et l'urgence

Module : Router

Ajoutez un Router après le module OpenAI (ou JSON Parse). Créez 3 routes :

Route 1 — Urgence haute (réclamation ou bug bloquant) :

  • →Condition : {{parseJSON(2.choices[0].message.content).urgence}} equals haute
  • →Actions :
    • →Slack > Send a Message → canal #alertes-clients → message : 🚨 URGENT — {{1.Nom}} ({{parseJSON(2.choices[0].message.content).categorie}}) : {{parseJSON(2.choices[0].message.content).resume}}
    • →Gmail > Send an Email → réponse immédiate (voir Étape 5)

Route 2 — Demande de devis :

  • →Condition : {{parseJSON(2.choices[0].message.content).categorie}} equals devis
  • →Actions :
    • →Gmail > Send an Email → email de remerciement + "un commercial revient vers vous sous 24h"
    • →Google Sheets > Add Row → ajouter au CRM (feuille "Prospects")

Route 3 — Autres demandes (fallback) :

  • →Condition : aucune (route par défaut)
  • →Actions :
    • →Gmail > Send an Email → réponse standard personnalisée

Étape 5 : Envoyer l'email de réponse

Module : Gmail > Send an Email

Configuration :

  • →To : {{1.Email}}
  • →Subject : Re: {{1.Sujet}}
  • →Content Type : HTML
  • →Body :
<p>{{parseJSON(2.choices[0].message.content).reponse_suggeree}}</p>
<br>
<p>Cordialement,<br>L'équipe Support<br>
<em>Ce message a été généré automatiquement. Si vous souhaitez parler à un humain, répondez simplement à cet email.</em></p>

Point important : ajoutez toujours la mention "généré automatiquement" ou "traité par notre assistant". C'est une bonne pratique éthique et légale (transparence IA).

Étape 6 : Logger dans Google Sheets

Module : Google Sheets > Add a Row (présent sur TOUTES les routes)

ColonneMappingPourquoi
A — Date{{formatDate(now; "DD/MM/YYYY HH:mm")}}Horodatage
B — Nom{{1.Nom}}Identification
C — Email{{1.Email}}Contact
D — Sujet{{1.Sujet}}Contexte
E — Catégorie IA{{parseJSON(2.choices[0].message.content).categorie}}Classification
F — Urgence{{parseJSON(2.choices[0].message.content).urgence}}Priorisation
G — Résumé{{parseJSON(2.choices[0].message.content).resume}}Vue rapide
H — Sentiment{{parseJSON(2.choices[0].message.content).sentiment}}Tendances
I — StatutTraité automatiquementSuivi

Ce Google Sheet devient votre tableau de bord : vous pouvez créer des graphiques pour suivre le volume par catégorie, le sentiment moyen, les tendances d'urgence, etc.

Étape 7 : Ajouter la gestion d'erreurs

C'est l'étape que les débutants oublient — et qui fait la différence entre un prototype et un outil de production.

Error Handler sur le module OpenAI :

  1. →Clic droit sur le module OpenAI → "Add error handler"
  2. →Choisissez "Resume" → le scénario continue malgré l'erreur
  3. →Ajoutez un module Gmail > Send an Email dans le handler : envoyez-vous un email d'alerte avec les détails de l'erreur
  4. →Ajoutez un module Google Sheets > Add a Row : loguez l'erreur dans un onglet "Erreurs" avec la date, le message d'erreur, et les données du formulaire (pour retraitement manuel)

Erreurs courantes du module OpenAI :

  • →429 Rate Limit Exceeded : trop de requêtes simultanées → ajoutez un module Sleep (2 secondes) avant le module OpenAI
  • →500 Internal Server Error : incident OpenAI → le error handler + retry automatique (configurable dans les settings du scénario)
  • →Invalid API Key : clé expirée ou révoquée → regénérez sur platform.openai.com

Tester le scénario complet

  1. →Cliquez Run once (bouton vert en bas)
  2. →Ouvrez votre Google Form dans un autre onglet
  3. →Soumettez 3 formulaires tests avec des profils différents :
    • →Test 1 : "Mon site est en panne depuis 3 jours, c'est inacceptable" (urgence haute, réclamation)
    • →Test 2 : "Bonjour, j'aimerais un devis pour un site e-commerce" (devis, urgence basse)
    • →Test 3 : "Est-ce que vous proposez des formations ?" (information, urgence basse)
  4. →Revenez sur Make → vérifiez que les 3 bulles sont vertes (succès)
  5. →Cliquez sur chaque bulle pour inspecter les données d'entrée/sortie
  6. →Vérifiez : email reçu ? Slack notifié (si urgence haute) ? Google Sheet mis à jour ?
  7. →Si tout fonctionne : activez le scheduling → ON, intervalle : 15 minutes

Avant d'activer en production

Testez TOUJOURS avec au moins 5 scénarios variés avant d'activer le scheduling. Vérifiez en particulier : les cas où le formulaire a des champs vides, les messages très courts (3 mots), les messages très longs (2000 caractères), les caractères spéciaux (accents, emojis, URL). Chacun de ces cas edge peut casser le JSON ou produire une catégorisation erronée.

Vérification rapide

Pourquoi utiliser gpt-4o-mini plutôt que GPT-5 dans un scénario Make automatisé de catégorisation ?

Vérification rapide

Que faire si le module OpenAI retourne une erreur 429 (Rate Limit) dans votre scénario Make ?

Votre progression

Cette progression est déclarative et conservée dans votre navigateur. L’attestation finale ne constitue pas un diplôme ni une évaluation indépendante.

Voir ma progression et mon attestation

Apprendre l’IA, du premier prompt aux agents

15 guides gratuitsQuiz, schémas et ateliersSans compte

Un cas pratique IA dans votre boîte mail

Méthodes, ressources et nouveaux exercices. Gratuit, avec désinscription à tout moment.