Tutoriel

Comment connecter n8n et Gmail : OAuth2, credentials et premier workflow

Automatisez vos emails avec n8n : on crée ensemble l'authentification OAuth2, les credentials Gmail, puis un premier workflow simple qui envoie un email de bienvenue.

✍️ Par Sikati Yves Joseph · · ⏱ 6 min de lecture
À noter : ce tutoriel s'appuie sur n8n hébergé soi-même (self-hosted). Les noms exacts des menus peuvent légèrement varier selon la version : n8n publie des mises à jour régulières. Les principes restent les mêmes.

1. Pourquoi connecter n8n et Gmail ?

n8n est une plateforme d'automatisation no-code qui vous permet de connecter des centaines d'applications entre elles. Gmail fait partie des plus utilisées. Les cas d'usage sont nombreux :

  • Envoyer un email automatiquement lorsqu'un formulaire est rempli.
  • Classer les emails entrants en fonction de leur contenu.
  • Créer des tâches dans Trello ou Notion à partir d'un email reçu.
  • Automatiser une réponse de suivi programmée à vos prospects.

Le point de départ de toutes ces automatisations est la connexion entre n8n et votre compte Gmail. C'est cette étape que nous allons réussir, proprement, dans ce guide.

2. Prérequis avant de commencer

Avant de plonger, assurez-vous d'avoir :

  • Une instance n8n accessible (locale via docker compose up -d, ou sur un serveur, ou via n8n Cloud).
  • Un compte Google personnel ou Google Workspace.
  • L'accès à la Google Cloud Console.
  • Environ 15 minutes.
💡 Astuce : le but de cet article est de comprendre la logique OAuth2, pas juste de cliquer. Vous pourrez reproduire le même raisonnement pour n'importe quelle autre application (Google Sheets, Google Calendar, etc.).

3. Créer une application Google et ses credentials OAuth2

OAuth2 est le protocole d'autorisation sécurisé utilisé par Google. Au lieu de stocker votre mot de passe Gmail dans n8n, Google vous délivre des tokens temporaires que n8n peut échanger et re-fraîchir. C'est plus sûr.

Étape 1 : créer le projet

  1. Ouvrez la Google Cloud Console et connectez-vous.
  2. En haut, créez (ou sélectionnez) un projet, par exemple n8n-integration.

Étape 2 : activer l'API Gmail

  1. Dans le menu, allez dans Bibliothèque d'API (APIs & Services > Library).
  2. Recherchez Gmail API puis cliquez Activer.

Étape 3 : créer l'écran de consentement

  1. Dans APIs & Services > Écran de consentement OAuth, sélectionnez le type Externe (ou Interne si vous êtes en Workspace).
  2. Renseignez le nom de l'application et téléchargez éventuellement un logo.
  3. Ajoutez votre email en tant qu'utilisateur de test, et enregistrez.

Étape 4 : créer les credentials OAuth2

  1. Allez dans APIs & Services > Identifiants puis Créer des identifiants > ID client OAuth.
  2. Choisissez le type Application Web.
  3. Dans URI de redirection autorisés, ajoutez l'URL de rappel n8n.
    https://VOTRE-DOMAINE-N8N/rest/oauth2-credential/callback
    Par exemple, si votre n8n est sur https://n8n.votre-mail.com, l'URI sera https://n8n.votre-mail.com/rest/oauth2-credential/callback.
  4. Copiez le Client ID et le Client Secret affichés. Vous en aurez besoin.

4. Ajouter les credentials Gmail dans n8n

Maintenant, créez les credentials côté n8n :

  1. Ouvrez n8n > Credentials, puis Nouveau > Gmail.
  2. Sélectionnez le type d'authentification : OAuth2.
  3. Collez votre Client ID et Client Secret.
  4. Laissez le scope par défaut https://www.googleapis.com/auth/gmail.send ou ajoutez les scopes probablement nécessaires (ex. gmail.readonly, gmail.modify) selon vos besoins.
  5. Cliquez Se connecter.

Une fenêtre Google s'ouvre. Autorisez votre compte Gmail et les permissions demandées. Une fois autorisé, n8n stocke le token de manière sécurisée et affiche « Connected ». L'authentification est terminée.

5. Créer votre premier workflow simple

Créons un workflow à deux nodes : un Webhook qui déclenche, une action Gmail qui envoie l'email.

Étape 1 : node Webhook

  1. Dans n8n, Ajouter un nœud et choisissez Webhook.
  2. Mode POST, copiez l'URL générée en bas. Ce sera votre « déclencheur ».
  3. Activez le workflow (toggle en haut à droite) pour rendre l'URL publique.

Étape 2 : ajouter le node Gmail

  1. Ajoutez un nœud Gmail et dans la catégorie Envoyer, choisissez l'action Envoyer un email.
  2. Choisissez vos credentials Gmail créés ci-dessus.
  3. Dans To, mettez {{ $json.body.to }}.
  4. Dans Subject, par exemple {{ $json.body.subject }}.
  5. Dans Body, le texte que vous voulez envoyer.

Étape 3 : relier les nodes

Reliez Webhook → Gmail. C'est ce lien qui « transmet » les données reçues par le webhook vers l'action Gmail. Les expressions {{ $json.body.... }} renvoient le corps JSON reçu.

6. Tester et vérifier la connexion

Pour tester votre workflow :

  1. Envoyez un POST vers l'URL du webhook avec un corps JSON :
    curl -X POST https://VOTRE-URL-WEBHOOK \
      -H "Content-Type: application/json" \
      -d '{"to": "client@exemple.com", "subject": "Votre demande", "message": "Bonjour, nous avons bien reçu votre message."}'
  2. Un email devrait arriver à l'adresse client@exemple.com.
  3. Si ce n'est pas le cas, ouvrez la node Gmail et regardez l'onglet Output : il affichera l'erreur exacte (permissions, token expiré, etc.).
✅ Votre connexion est en place. Vous pouvez maintenant remplacer le webhook par n'importe quel autre déclencheur n8n (horaire, formulaire, Slack…) et déclencher de véritables automatisations Gmail.