Automatische E-Mail-Klassifizierung mit Gmail, Google Sheets und KI
Dies ist ein Other, Support, AI-Bereich Automatisierungsworkflow mit 17 Nodes. Hauptsächlich werden Set, Gmail, Filter, GoogleSheets, SplitInBatches und andere Nodes verwendet, kombiniert mit KI-Technologie für intelligente Automatisierung. Automatische Klassifizierung von E-Mails mit Gmail, Google Sheets und KI
- •Google-Konto + Gmail API-Anmeldedaten
- •Google Sheets API-Anmeldedaten
Verwendete Nodes (17)
{
"meta": {
"instanceId": "c8c9ba5d3eb26ae47a06d24ff164a01c0d73ed4753a74903c2bb609d434a0f6b",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "fd08b5e1-f370-46b6-8088-c2e59c73d71c",
"name": "Zeitplan-Trigger",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
0,
0
],
"parameters": {
"rule": {
"interval": [
{
"field": "hours"
}
]
}
},
"typeVersion": 1.2
},
{
"id": "78f01440-ef12-4ee6-a9a5-af4d39104c0c",
"name": "Haftnotiz",
"type": "n8n-nodes-base.stickyNote",
"position": [
-520,
-140
],
"parameters": {
"width": 420,
"content": "## 1 - Config\n\n1) [G Sheets to Duplicate](https://docs.google.com/spreadsheets/d/1LKIx1Z3dCSX1uzyZH9s2HE0QRMvLTDI6sJApFU5LTj0/edit?gid=0#gid=0)\n2) Copy the URL of your Sheets in *Config* node ➡️➡️"
},
"typeVersion": 1
},
{
"id": "58417d60-eaaf-4d3f-affb-3a1655d2777b",
"name": "Config",
"type": "n8n-nodes-base.set",
"position": [
220,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "cf1d4687-98df-4f65-b72e-6722075ab703",
"name": "sheets_url",
"type": "string",
"value": "https://docs.google.com/spreadsheets/d/1LKIx1Z3dCSX1uzyZH9s2HE0QRMvLTDI6sJApFU5LTj0/edit?gid=0#gid=0"
},
{
"id": "5df50301-a77a-483f-80ce-7717daa04231",
"name": "extra_filter",
"type": "string",
"value": ""
},
{
"id": "4fc76947-79c9-4f73-bf36-c18e664b14b4",
"name": "limit",
"type": "number",
"value": 2
}
]
}
},
"typeVersion": 3.4
},
{
"id": "8f8812bc-dc04-4405-8d33-e6d457e2d1e8",
"name": "KI-Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
880,
0
],
"parameters": {
"text": "=Email subject:\n\n{{ $json.headers.subject }}\n\n\nText: {{ $json.text }}\n\nChoose the best fitting of the category names below, based on their definition:\n{{ JSON.stringify($('Get Labels').all()) }}\n\nImportant: ONLY respond with the category Name. EXACTLY one of the names, do not add any other texts.\n\nSo response should be one of:\n{{ $('Get Labels').all().map(({ json: { Name } }) => Name ).join('\\n') }}",
"options": {},
"promptType": "define"
},
"typeVersion": 1.8
},
{
"id": "e1bf4a15-a2b5-48a4-83d4-af649f20101f",
"name": "OpenRouter Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
900,
220
],
"parameters": {
"model": "deepseek/deepseek-r1:free",
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "iZmDjXmiYrP8nGux",
"name": "OpenRouter account"
}
},
"typeVersion": 1
},
{
"id": "5c597cd5-69f0-42ac-a158-a5ef766157b0",
"name": "Haftnotiz1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-520,
20
],
"parameters": {
"width": 420,
"height": 400,
"content": "## 2 - Connect AI (Optional: find free model)\n\n1) Get OpenRouter API Key: https://openrouter.ai/settings/keys\n\n2) [List of currently free models](https://openrouter.ai/models?max_price=0&order=top-weekly)\n[List of Popular models](https://openrouter.ai/models?order=top-weekly)\n\nBest in 2025 May: deepseek/deepseek-chat-v3-0324:free\nPaid recommended: gpt-4.1-mini\n\n3) Go to **OpenRouter Chat Model** Node\n+ \"Add Credential\" - Enter API Key\n+ Choose your preferred AI model"
},
"typeVersion": 1
},
{
"id": "8ec93dff-52a4-410e-b45f-f492bcc0bb88",
"name": "Get Labels",
"type": "n8n-nodes-base.googleSheets",
"position": [
440,
0
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "url",
"value": "={{ $json.sheets_url }}"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "={{ $json.sheets_url }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "gbEbCNKqCMSRZPql",
"name": "Google Sheets account 3"
}
},
"typeVersion": 4.5
},
{
"id": "221de31a-e662-402d-8795-1bcd40757855",
"name": "Haftnotiz2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-520,
-220
],
"parameters": {
"height": 80,
"content": "# Setup"
},
"typeVersion": 1
},
{
"id": "e41fb3ca-5de0-4a1a-a0f7-4f6fddc739ed",
"name": "Create Label if Doesn't exist",
"type": "n8n-nodes-base.gmail",
"onError": "continueRegularOutput",
"position": [
1620,
280
],
"webhookId": "9482c1cf-26bd-42a6-98cd-78c34810597d",
"parameters": {
"name": "={{ $json.output }}",
"options": {},
"resource": "label",
"operation": "create"
},
"credentials": {
"gmailOAuth2": {
"id": "duhSaIumY2CifCex",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "fea8a543-0bb4-460e-9862-06c711ec30e6",
"name": "Get Existing Labels",
"type": "n8n-nodes-base.gmail",
"position": [
1820,
280
],
"webhookId": "bb39b430-d756-4a9f-8bfb-9d1a63c495c4",
"parameters": {
"resource": "label",
"returnAll": true
},
"credentials": {
"gmailOAuth2": {
"id": "duhSaIumY2CifCex",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "a45806ca-6b98-411a-a8b2-a8b9f071d6c0",
"name": "Über Elemente schleifen",
"type": "n8n-nodes-base.splitInBatches",
"position": [
1460,
0
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "de31842d-88de-4281-a8f7-5e88db026ece",
"name": "Filter",
"type": "n8n-nodes-base.filter",
"position": [
2020,
280
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "e36a5069-09dd-424d-a2b8-096cefa059d7",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.name }}",
"rightValue": "={{ $('Loop Over Items').item.json.output }}"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "fe0c9d60-bd76-4a72-adb4-0b04bcd971bc",
"name": "Gmail1",
"type": "n8n-nodes-base.gmail",
"position": [
2200,
280
],
"webhookId": "332f57fb-6795-4a88-aff7-25d3838ffea7",
"parameters": {
"labelIds": "={{ $json.id }}",
"resource": "thread",
"threadId": "={{ $('Loop Over Items').item.json.threadId }}",
"operation": "addLabels"
},
"credentials": {
"gmailOAuth2": {
"id": "duhSaIumY2CifCex",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "3f3c2627-c20d-443f-8a6f-c803139c4143",
"name": "Fields For Loop",
"type": "n8n-nodes-base.set",
"position": [
1240,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "cf0978da-37a2-48e8-8da9-8ec110638a42",
"name": "threadId",
"type": "string",
"value": "={{ $('Get Messages').item.json.threadId }}"
},
{
"id": "71cac306-cca3-4e28-8bba-d920d83037ac",
"name": "output",
"type": "string",
"value": "={{ $json.output }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "10ede08e-bdbc-4c3f-8c25-2724bfbda6f5",
"name": "Get Messages",
"type": "n8n-nodes-base.gmail",
"position": [
660,
0
],
"webhookId": "5d1e7386-2e1c-4743-b03a-daffea28b66b",
"parameters": {
"limit": "={{ $('Config').item.json.limit }}",
"simple": false,
"filters": {
"q": "=has:nouserlabels {{ $('Config').item.json.extra_filter }}"
},
"options": {},
"operation": "getAll"
},
"credentials": {
"gmailOAuth2": {
"id": "duhSaIumY2CifCex",
"name": "Gmail account"
}
},
"executeOnce": true,
"typeVersion": 2.1
},
{
"id": "f15bda54-5a37-49e1-b06c-322308689c6e",
"name": "Haftnotiz4",
"type": "n8n-nodes-base.stickyNote",
"position": [
220,
160
],
"parameters": {
"width": 310,
"content": "👆⬆️\n1 - sheets_url - Where the category definitions live\n2 - extra_filter - Leave empty to process all emails. Use any gmail search filters.\n3 - limit - max no. of emails to process in a run"
},
"typeVersion": 1
},
{
"id": "d34f5149-6749-4064-bfcf-6fc32651e945",
"name": "Haftnotiz5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-280,
-540
],
"parameters": {
"color": 5,
"width": 580,
"height": 400,
"content": "# About the Author\n\n## Milan - SmoothWork.ai\n\nWe help businesses eliminate busywork by building compact business tools tailored to your process.\n\n▶️ [Check us on YouTube](https://www.youtube.com/@vasarmilan)\n📞 [Book a Free Consulting Call](https://smoothwork.ai/book-a-call/)\n"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"58417d60-eaaf-4d3f-affb-3a1655d2777b": {
"main": [
[
{
"node": "8ec93dff-52a4-410e-b45f-f492bcc0bb88",
"type": "main",
"index": 0
}
]
]
},
"de31842d-88de-4281-a8f7-5e88db026ece": {
"main": [
[
{
"node": "fe0c9d60-bd76-4a72-adb4-0b04bcd971bc",
"type": "main",
"index": 0
}
]
]
},
"fe0c9d60-bd76-4a72-adb4-0b04bcd971bc": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"AI Agent": {
"main": [
[
{
"node": "3f3c2627-c20d-443f-8a6f-c803139c4143",
"type": "main",
"index": 0
}
]
]
},
"8ec93dff-52a4-410e-b45f-f492bcc0bb88": {
"main": [
[
{
"node": "10ede08e-bdbc-4c3f-8c25-2724bfbda6f5",
"type": "main",
"index": 0
}
]
]
},
"10ede08e-bdbc-4c3f-8c25-2724bfbda6f5": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"3f3c2627-c20d-443f-8a6f-c803139c4143": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"Loop Over Items": {
"main": [
[],
[
{
"node": "e41fb3ca-5de0-4a1a-a0f7-4f6fddc739ed",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "58417d60-eaaf-4d3f-affb-3a1655d2777b",
"type": "main",
"index": 0
}
]
]
},
"fea8a543-0bb4-460e-9862-06c711ec30e6": {
"main": [
[
{
"node": "de31842d-88de-4281-a8f7-5e88db026ece",
"type": "main",
"index": 0
}
]
]
},
"e1bf4a15-a2b5-48a4-83d4-af649f20101f": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"e41fb3ca-5de0-4a1a-a0f7-4f6fddc739ed": {
"main": [
[
{
"node": "fea8a543-0bb4-460e-9862-06c711ec30e6",
"type": "main",
"index": 0
}
]
]
}
}
}Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Experte - Sonstiges, Support, Künstliche Intelligenz
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Milan Vasarhelyi
@vasarmilanDiesen Workflow teilen