Organización Automática de Correos de Gmail Impulsada por IA con Etiquetas de Prioridad

Avanzado

Este es unOther, AIflujo de automatización del dominio deautomatización que contiene 17 nodos.Utiliza principalmente nodos como Gmail, Filter, Telegram, Aggregate, GmailTool, combinando tecnología de inteligencia artificial para lograr automatización inteligente. Organización automática de correos de Gmail basada en IA, compatible con archivado automático y etiquetas de prioridad

Requisitos previos
  • Cuenta de Google y credenciales de API de Gmail
  • Bot Token de Telegram
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "meta": {
    "instanceId": "6af2f94153ea0551e6264b16187490bd4c4739c7f5f3d7adab90c5cf186e22a1",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "43e68fe1-7f48-4bc9-b19a-66d39bee5bbd",
      "name": "Al hacer clic en 'Probar flujo de trabajo'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -520,
        20
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "32aa401a-60c3-4436-94d5-5ba09d3be6ae",
      "name": "OpenRouter Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        80,
        0
      ],
      "parameters": {
        "model": "openai/gpt-4.1-nano",
        "options": {}
      },
      "credentials": {
        "openRouterApi": {
          "id": "eQmkAlMDYm8oEtBL",
          "name": "OpenRouter account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "f6d325b4-ff87-4bba-9f27-b68590c8a533",
      "name": "Disparador de Telegram",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -520,
        -220
      ],
      "webhookId": "e61d3286-920e-406c-b787-d330cf897ef4",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "ZOl2ZojetuN1uFiX",
          "name": "My Mail Agent Bot via Telegram"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "8e10c622-9bf8-414b-8364-185c5c4808a0",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -600,
        -480
      ],
      "parameters": {
        "width": 1660,
        "height": 680,
        "content": "## Mail Agent\nFor emails in the inbox, archive those that are completely unnecessary, and label the rest based on their relevance.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "2e664cd4-37af-4b8f-84a5-ff07911b8aaa",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -560,
        -380
      ],
      "parameters": {
        "color": 5,
        "width": 180,
        "height": 360,
        "content": "### Trigger\nRun by communicating with Telegram"
      },
      "typeVersion": 1
    },
    {
      "id": "966af8d0-bfca-40fa-b97c-ec1bb7de82d2",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -360,
        -380
      ],
      "parameters": {
        "color": 4,
        "width": 180,
        "height": 360,
        "content": "### Get Mail via Gmail\nRetrieve all emails in the Gmail inbox.\n(Inbox = Label: INBOX)"
      },
      "typeVersion": 1
    },
    {
      "id": "07dabeda-a075-4e45-9ecf-9a0e6d0df0b2",
      "name": "Nota adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -160,
        -380
      ],
      "parameters": {
        "color": 4,
        "width": 180,
        "height": 360,
        "content": "### Filter\nFilter out emails that have already been processed to avoid unnecessary work for the AI.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b9a96646-283e-4328-8c79-57befa97bb69",
      "name": "Nota adhesiva4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        40,
        -380
      ],
      "parameters": {
        "color": 3,
        "width": 980,
        "height": 540,
        "content": "### AI Agent\nCheck each email one by one, categorize them as necessary or unnecessary according to the provided prompt, and instruct Gmail to apply the appropriate labels."
      },
      "typeVersion": 1
    },
    {
      "id": "32c73c57-61b5-430b-a011-f0b44fa2b226",
      "name": "mail_label_setter",
      "type": "n8n-nodes-base.gmailTool",
      "position": [
        360,
        0
      ],
      "webhookId": "37bb94d2-6aeb-4038-afc7-e25a330e7860",
      "parameters": {
        "labelIds": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Label_Names_or_IDs', ``, 'string') }}",
        "messageId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message_ID', ``, 'string') }}",
        "operation": "addLabels"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "5GhcPqZ48DrfujWd",
          "name": "Gmail account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "7cf38850-939c-4c8e-af62-1f730d5b7e34",
      "name": "mail_archiver",
      "type": "n8n-nodes-base.gmailTool",
      "position": [
        220,
        0
      ],
      "webhookId": "81956225-38dd-4acf-b97a-8e68f332f56a",
      "parameters": {
        "labelIds": [
          "INBOX"
        ],
        "messageId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message_ID', ``, 'string') }}",
        "operation": "removeLabels"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "5GhcPqZ48DrfujWd",
          "name": "Gmail account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "5fab497e-a632-4565-8048-7ae9b209728d",
      "name": "Agregar",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        380,
        -220
      ],
      "parameters": {
        "options": {},
        "aggregate": "aggregateAllItemData"
      },
      "typeVersion": 1
    },
    {
      "id": "f7144884-6ba6-4e97-be35-f5f8b27d56ad",
      "name": "Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        820,
        -220
      ],
      "webhookId": "6324ebbf-b2c3-42c3-b4ee-849184380b4f",
      "parameters": {
        "text": "={{ $json.output }}",
        "chatId": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "ZOl2ZojetuN1uFiX",
          "name": "My Mail Agent Bot via Telegram"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "9236fbc1-ffad-4bf0-b3a1-5d389e5b422c",
      "name": "OpenRouter Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        520,
        0
      ],
      "parameters": {
        "model": "openai/gpt-4.1-nano",
        "options": {}
      },
      "credentials": {
        "openRouterApi": {
          "id": "eQmkAlMDYm8oEtBL",
          "name": "OpenRouter account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e0ec10ca-ad72-4784-891e-5bd5bcff7082",
      "name": "Reporter",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        520,
        -220
      ],
      "parameters": {
        "text": "=Summarize data\n```\n{{ $json.data.map(item => item.output + '\\n\\n') }}\n```\n",
        "options": {
          "systemMessage": "=# persona\n* You are a helpful assistant.\n"
        },
        "promptType": "define"
      },
      "typeVersion": 1.8
    },
    {
      "id": "9b4f8e14-7b9c-45b3-97cb-32f2fe756440",
      "name": "Get mails in INBOX",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -320,
        -220
      ],
      "webhookId": "f4c95906-916d-4c94-8e35-cb37c9472043",
      "parameters": {
        "filters": {
          "labelIds": [
            "INBOX"
          ]
        },
        "operation": "getAll",
        "returnAll": true
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "5GhcPqZ48DrfujWd",
          "name": "Gmail account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "13088de9-6f96-463e-bcb6-92f97d7144d9",
      "name": "Filtrar processed",
      "type": "n8n-nodes-base.filter",
      "position": [
        -120,
        -220
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "1091eba0-3d75-47b6-92c5-404f93e263ae",
              "operator": {
                "type": "array",
                "operation": "notContains",
                "rightType": "any"
              },
              "leftValue": "={{ $json.labels.map(item => item.name)}}",
              "rightValue": "NotNeed"
            },
            {
              "id": "31160689-98ce-43ac-8c7b-116cd7da5ebc",
              "operator": {
                "type": "array",
                "operation": "notContains",
                "rightType": "any"
              },
              "leftValue": "={{ $json.labels.map(item => item.name)}}",
              "rightValue": "MustRead"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "317ea413-e8fd-4148-8115-8b4d2b9a7fe4",
      "name": "Categoriser",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        80,
        -220
      ],
      "parameters": {
        "text": "=<task>\nProcess mail\n</task>\n<mail>\n<id>{{ $json.id }}</id>\n<from>{{ $json.From }}</from>\n<subject>{{ $json.Subject }}</subject>\n<body>{{ $json.snippet }}</body>\n</mail>",
        "options": {
          "systemMessage": "=<persona>\nYou are an email processing assistant.\n</persona>\n<task>\nLook at the content of the email and decide whether to apply a label or archive it, processing it only once. First, archive those that are absolutely unnecessary using the mail_archiver tool. This judgment is the top priority. After that, if it does not fall into that category, determine whether it should be read based on the following criteria and use the mail_label_setter tool to apply the label.\n<case>Absolutely unnecessary: Archive using the mail_archiver tool</case>\n<case>Needs to be read: Apply \"Label_[label_id]\" using the mail_label_setter tool</case>\n<case>Other: Apply \"Label_[label_id]\" using the mail_label_setter tool</case>\nReport the processing results carefully.\n</task>\n<rules>\n<Archive>\nEmails that are absolutely unnecessary and will be archived\n<item>[list up your rule1]</item>\n<item>[list up your rule2]</item>\n</Archive><MustRead>\nEmails that need to be read\n<item>[list up your rule1]</item>\n<item>[list up your rule2]</item>\n</MustRead>\n<Other>\nEmails that are not necessary to read but will not be archived\n<item>[list up your rule1]</item>\n<item>[list up your rule2]</item>\n</Other>\n</rules>"
        },
        "promptType": "define"
      },
      "typeVersion": 1.7
    }
  ],
  "pinData": {},
  "connections": {
    "e0ec10ca-ad72-4784-891e-5bd5bcff7082": {
      "main": [
        [
          {
            "node": "f7144884-6ba6-4e97-be35-f5f8b27d56ad",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate": {
      "main": [
        [
          {
            "node": "e0ec10ca-ad72-4784-891e-5bd5bcff7082",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "317ea413-e8fd-4148-8115-8b4d2b9a7fe4": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7cf38850-939c-4c8e-af62-1f730d5b7e34": {
      "ai_tool": [
        [
          {
            "node": "317ea413-e8fd-4148-8115-8b4d2b9a7fe4",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Filter processed": {
      "main": [
        [
          {
            "node": "317ea413-e8fd-4148-8115-8b4d2b9a7fe4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "9b4f8e14-7b9c-45b3-97cb-32f2fe756440",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "32c73c57-61b5-430b-a011-f0b44fa2b226": {
      "ai_tool": [
        [
          {
            "node": "317ea413-e8fd-4148-8115-8b4d2b9a7fe4",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9b4f8e14-7b9c-45b3-97cb-32f2fe756440": {
      "main": [
        [
          {
            "node": "Filter processed",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "32aa401a-60c3-4436-94d5-5ba09d3be6ae": {
      "ai_languageModel": [
        [
          {
            "node": "317ea413-e8fd-4148-8115-8b4d2b9a7fe4",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "9236fbc1-ffad-4bf0-b3a1-5d389e5b422c": {
      "ai_languageModel": [
        [
          {
            "node": "e0ec10ca-ad72-4784-891e-5bd5bcff7082",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "43e68fe1-7f48-4bc9-b19a-66d39bee5bbd": {
      "main": [
        [
          {
            "node": "9b4f8e14-7b9c-45b3-97cb-32f2fe756440",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Avanzado - Otros, Inteligencia Artificial

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos17
Categoría2
Tipos de nodos10
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34