Workflow n8n

Automatisation Gmail avec n8n : gestion des étiquettes et contenu

  • Ce workflow n8n a pour objectif d'automatiser la gestion des étiquettes dans Gmail, permettant ainsi aux utilisateurs de mieux organiser leurs messages. Dans un contexte professionnel où la gestion des emails est cruciale, ce type d'automatisation n8n peut s'avérer particulièrement utile pour les équipes marketing ou de support client qui reçoivent un volume élevé de courriels. En utilisant ce workflow, les utilisateurs peuvent facilement attribuer des étiquettes à leurs messages en fonction de leur contenu, ce qui facilite le suivi et la priorisation des tâches.
  • Le processus commence par un déclencheur Gmail qui détecte l'arrivée d'un nouveau message. Ensuite, le workflow récupère le contenu du message et les étiquettes existantes. Grâce à des noeuds de traitement, comme 'Split out assigned labels' et 'Merge corresponding labels', il est possible de gérer efficacement les étiquettes en les regroupant ou en les séparant selon les besoins. Les utilisateurs peuvent également personnaliser les étiquettes à l'aide du noeud 'Assign labels for message', qui utilise un modèle de langage pour déterminer les étiquettes appropriées.
  • Les bénéfices business de ce workflow sont significatifs : il réduit le temps passé à trier manuellement les emails, minimise le risque de perte d'informations importantes et améliore la productivité des équipes. En intégrant cette automatisation n8n, les entreprises peuvent non seulement gagner du temps, mais aussi garantir une meilleure organisation de leur communication par email.
Tags clés :Gmailautomatisationn8ngestion des emailsétiquettes
Catégorie: Webhook · Tags: Gmail, automatisation, n8n, gestion des emails, étiquettes0

Workflow n8n Gmail, gestion des emails, étiquettes : vue d'ensemble

Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.

Workflow n8n Gmail, gestion des emails, étiquettes : détail des nœuds

  • Gmail trigger

    Ce noeud déclenche le workflow lorsqu'un nouvel e-mail est reçu dans Gmail.

  • Get message content

    Ce noeud récupère le contenu d'un message spécifique dans Gmail en utilisant son identifiant.

  • Set label values

    Ce noeud permet de définir des valeurs d'étiquettes pour les données traitées.

  • Get all labels

    Ce noeud récupère toutes les étiquettes disponibles dans le compte Gmail.

  • Split out assigned labels

    Ce noeud sépare les étiquettes assignées en fonction d'un champ spécifié.

  • Merge corresponding labels

    Ce noeud fusionne les étiquettes correspondantes en utilisant des critères de fusion définis.

  • Aggregate label IDs

    Ce noeud agrège les identifiants d'étiquettes selon des options spécifiées.

  • Add labels to message

    Ce noeud ajoute des étiquettes à un message spécifique dans Gmail.

  • Assign labels for message

    Ce noeud assigne des étiquettes à un message en utilisant un modèle de langage.

  • Sticky Note

    Ce noeud crée une note autocollante avec du contenu, une couleur et des dimensions spécifiées.

  • Sticky Note1

    Ce noeud crée une note autocollante avec du contenu et des dimensions définies.

  • Sticky Note2

    Ce noeud crée une note autocollante avec des dimensions spécifiées.

  • Sticky Note4

    Ce noeud crée une note autocollante avec des dimensions et du contenu définis.

  • Sticky Note5

    Ce noeud crée une note autocollante avec des dimensions et du contenu spécifiés.

  • Sticky Note6

    Ce noeud crée une note autocollante avec des dimensions et du contenu définis.

  • Sticky Note7

    Ce noeud crée une note autocollante avec des dimensions et du contenu spécifiés.

  • Sticky Note8

    Ce noeud crée une note autocollante avec des dimensions et du contenu définis.

  • JSON Parser

    Ce noeud analyse un JSON selon un schéma spécifié pour en extraire des données structurées.

  • OpenAI Chat

    Ce noeud interagit avec le modèle de langage OpenAI pour générer des réponses basées sur des messages fournis.

Inscris-toi pour voir l'intégralité du workflow

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "nodes": [
    {
      "id": "8141ffad-df2a-403b-a869-799c036f9733",
      "name": "Gmail trigger",
      "type": "n8n-nodes-base.gmailTrigger",
      "position": [
        -600,
        580
      ],
      "parameters": {
        "simple": false,
        "filters": {},
        "options": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        }
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "uBcIMfsTtKjexw7I",
          "name": "Gmail (workfloowstutorial@gmail.com)"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6d9aa398-e2de-4fd0-b939-2a12d0c9fe14",
      "name": "Get message content",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -340,
        580
      ],
      "parameters": {
        "simple": false,
        "options": {},
        "messageId": "={{ $json.id }}",
        "operation": "get"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "uBcIMfsTtKjexw7I",
          "name": "Gmail (workfloowstutorial@gmail.com)"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "cd86bc09-8c7f-4c85-9cb3-6dbd42420672",
      "name": "Set label values",
      "type": "n8n-nodes-base.set",
      "position": [
        300,
        580
      ],
      "parameters": {
        "fields": {
          "values": [
            {
              "name": "labels",
              "type": "arrayValue",
              "arrayValue": "={{ $json.labels }}"
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "329435a6-51d1-416e-9aa9-5fe9a8dce74f",
      "name": "Get all labels",
      "type": "n8n-nodes-base.gmail",
      "position": [
        580,
        460
      ],
      "parameters": {
        "resource": "label",
        "returnAll": true
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "uBcIMfsTtKjexw7I",
          "name": "Gmail (workfloowstutorial@gmail.com)"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "7ae2dd15-472d-4a4b-b036-f80ebd7e3c28",
      "name": "Split out assigned labels",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        580,
        700
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "labels"
      },
      "typeVersion": 1
    },
    {
      "id": "744c7afa-75b1-4b3b-8ccb-e2106c01f387",
      "name": "Merge corresponding labels",
      "type": "n8n-nodes-base.merge",
      "position": [
        860,
        580
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "mergeByFields": {
          "values": [
            {
              "field1": "name",
              "field2": "labels"
            }
          ]
        },
        "outputDataFrom": "input1"
      },
      "typeVersion": 2.1
    },
    {
      "id": "e47424dc-f43e-41a9-b1e5-ab3e08cbf395",
      "name": "Aggregate label IDs",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1120,
        580
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "renameField": true,
              "outputFieldName": "label_ids",
              "fieldToAggregate": "id"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "22ba8297-8efc-463e-8ae0-385fd94a205f",
      "name": "Add labels to message",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1340,
        580
      ],
      "parameters": {
        "labelIds": "={{ $json.label_ids }}",
        "messageId": "={{ $('Gmail trigger').item.json[\"id\"] }}",
        "operation": "addLabels"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "uBcIMfsTtKjexw7I",
          "name": "Gmail (workfloowstutorial@gmail.com)"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "7ebb1aad-00ad-43fa-9e07-e5f324864a74",
      "name": "Assign labels for message",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        -80,
        580
      ],
      "parameters": {
        "prompt": "={{ $json.text }}",
        "messages": {
          "messageValues": [
            {
              "message": "Your task is to categorize the message according to the following labels.\n\nPartnership - email about sponsored content, cooperation etc.\nInquiry - email about products, services.\nNotification - email that doesn't require response. \n\nOne email can have more than one label. Return only label names in JSON format, nothing else. Do not make things up. "
            }
          ]
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "2f82db6a-422c-4697-a629-cc782d88209d",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1100,
        400
      ],
      "parameters": {
        "color": 4,
        "width": 420.4803040774015,
        "height": 240.57943708322733,
        "content": "## Add AI labels to Gmail messages\nWith this workflow you can automatically set labels for your Gmail message according to its content. \n\nIn this workflow available are 3 labels: \"Partnership\", \"Inquiry\" and \"Notification\". Feel free to adjust labels according to your needs. \n\n**Please remember to set label names both in your Gmail account and workflow.**"
      },
      "typeVersion": 1
    },
    {
      "id": "4a10fb2b-aebb-4735-bbdb-7f07f1136d95",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1100,
        660
      ],
      "parameters": {
        "width": 421.0932411886662,
        "height": 257.42916378714597,
        "content": "## ⚠️ Note\n\n1. Complete video guide for this workflow is available [on my YouTube](https://youtu.be/a8Dhj3Zh9vQ). \n2. Remember to add your credentials and configure nodes (covered in the video guide).\n3. If you like this workflow, please subscribe to [my YouTube channel](https://www.youtube.com/@workfloows) and/or [my newsletter](https://workfloows.com/).\n\n**Thank you for your support!**"
      },
      "typeVersion": 1
    },
    {
      "id": "76e62351-d502-4377-9df2-fe92df00fe03",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -660,
        400
      ],
      "parameters": {
        "width": 238.4602598584674,
        "height": 348.5873725349161,
        "content": "### Gmail Trigger\nReceive data from Gmail about new incoming message. \n\n⚠️ Set polling interval according to your needs."
      },
      "typeVersion": 1
    },
    {
      "id": "c10702db-211f-4638-bcf0-fbbe18251cb7",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        60,
        780
      ],
      "parameters": {
        "width": 241.53974014153226,
        "height": 319.3323098457962,
        "content": "###\n\n\n\n\n\n\n\n\n\n\n### JSON schema\nEdit JSON schema and label names according to your needs.\n\n⚠️ **Label names in system prompt and JSON schema should be the same.**"
      },
      "typeVersion": 1
    },
    {
      "id": "cb6e3573-3d4d-4313-a97e-86a017438399",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        800,
        420
      ],
      "parameters": {
        "width": 226.14233872620645,
        "height": 347.0476323933831,
        "content": "### Merge labels\nCombine labels retrieved from Gmail account and assigned by AI together."
      },
      "typeVersion": 1
    },
    {
      "id": "8cfb4341-98e6-4944-b26c-15e39184f468",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1060,
        420
      ],
      "parameters": {
        "width": 452.48413953150185,
        "height": 347.0476323933831,
        "content": "### Aggregarte labels and add to message\nCreate array of label IDs and add to the desired email message in Gmail."
      },
      "typeVersion": 1
    },
    {
      "id": "bb9766e8-0b72-47f8-9a8e-0b291609e814",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -400,
        400
      ],
      "parameters": {
        "width": 238.4602598584674,
        "height": 348.5873725349161,
        "content": "### Get message content\nBased on Gmail message ID retrieve body content of the email and pass it to AI chain."
      },
      "typeVersion": 1
    },
    {
      "id": "48630cbd-8336-4577-928e-37341f09ef9b",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -140,
        400
      ],
      "parameters": {
        "width": 378.57661273793565,
        "height": 348.5873725349161,
        "content": "### Assign labels\nLet the AI decide which labels suit the best content of the message.\n\n⚠️ **Remember to edit system prompt** - modify label names and instructions according to your needs."
      },
      "typeVersion": 1
    },
    {
      "id": "60a9d75e-1564-4b1d-b3f2-acc2e3bf2411",
      "name": "JSON Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        140,
        800
      ],
      "parameters": {
        "jsonSchema": "{\n \"type\": \"object\",\n \"properties\": {\n \"labels\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": [\"Inquiry\", \"Partnership\", \"Notification\"]\n }\n }\n },\n \"required\": [\"labels\"]\n}\n"
      },
      "typeVersion": 1
    },
    {
      "id": "2bdf3fed-8a7f-411a-bad4-266bfea5cede",
      "name": "OpenAI Chat",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -120,
        800
      ],
      "parameters": {
        "model": "gpt-4-turbo-preview",
        "options": {
          "temperature": 0,
          "responseFormat": "json_object"
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "jazew1WAaSRrjcHp",
          "name": "OpenAI (workfloows@gmail.com)"
        }
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "connections": {
    "JSON Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Assign labels for message",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat": {
      "ai_languageModel": [
        [
          {
            "node": "Assign labels for message",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Gmail trigger": {
      "main": [
        [
          {
            "node": "Get message content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get all labels": {
      "main": [
        [
          {
            "node": "Merge corresponding labels",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set label values": {
      "main": [
        [
          {
            "node": "Get all labels",
            "type": "main",
            "index": 0
          },
          {
            "node": "Split out assigned labels",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate label IDs": {
      "main": [
        [
          {
            "node": "Add labels to message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get message content": {
      "main": [
        [
          {
            "node": "Assign labels for message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Assign labels for message": {
      "main": [
        [
          {
            "node": "Set label values",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split out assigned labels": {
      "main": [
        [
          {
            "node": "Merge corresponding labels",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Merge corresponding labels": {
      "main": [
        [
          {
            "node": "Aggregate label IDs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Workflow n8n Gmail, gestion des emails, étiquettes : pour qui est ce workflow ?

Ce workflow s'adresse principalement aux équipes marketing et support client qui utilisent Gmail pour gérer un volume élevé de courriels. Il est conçu pour des utilisateurs ayant des compétences techniques intermédiaires, souhaitant optimiser leur gestion des emails au sein d'organisations de taille petite à moyenne.

Workflow n8n Gmail, gestion des emails, étiquettes : problème résolu

Ce workflow résout le problème de la surcharge d'emails en automatisant l'attribution d'étiquettes dans Gmail. Les utilisateurs n'ont plus à passer des heures à trier manuellement leurs messages, ce qui réduit le risque de négliger des emails importants. En automatisant ce processus, les équipes peuvent se concentrer sur des tâches à plus forte valeur ajoutée, améliorant ainsi leur efficacité et leur réactivité.

Workflow n8n Gmail, gestion des emails, étiquettes : étapes du workflow

Étape 1 : Le workflow débute avec un déclencheur Gmail qui détecte l'arrivée d'un nouveau message.

  • Étape 1 : Le contenu du message est récupéré à l'aide du noeud 'Get message content'.
  • Étape 2 : Les étiquettes existantes sont obtenues via le noeud 'Get all labels'.
  • Étape 3 : Les étiquettes sont ensuite traitées pour être séparées ou fusionnées selon les besoins avec les noeuds 'Split out assigned labels' et 'Merge corresponding labels'.
  • Étape 4 : Les étiquettes appropriées sont attribuées au message grâce au noeud 'Assign labels for message', qui utilise un modèle de langage pour affiner le choix.
  • Étape 5 : Enfin, les étiquettes sont ajoutées au message avec le noeud 'Add labels to message'.

Workflow n8n Gmail, gestion des emails, étiquettes : guide de personnalisation

Pour personnaliser ce workflow, les utilisateurs peuvent modifier le déclencheur Gmail en ajustant les filtres pour cibler des types spécifiques de messages. Il est également possible de changer les étiquettes utilisées dans le noeud 'Set label values' pour répondre aux besoins spécifiques de l'organisation. Les utilisateurs peuvent brancher d'autres outils en ajoutant des noeuds supplémentaires, comme des notifications sur Slack ou des mises à jour dans un tableau de bord. Pour sécuriser le flux, il est recommandé de configurer des alertes en cas d'erreurs dans le traitement des emails.