This workflow follows the Agent → Gmail recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Inbox Guardian",
"nodes": [
{
"parameters": {
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"simple": false,
"filters": {},
"options": {}
},
"type": "n8n-nodes-base.gmailTrigger",
"typeVersion": 1.2,
"position": [
-1960,
560
],
"id": "eae29948-c752-4346-ab36-d24894f6c980",
"name": "Gmail Trigger",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4o-mini",
"mode": "list",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
-1180,
1140
],
"id": "d65b1d26-0287-47e4-a2ef-6f5c0209433f",
"name": "GPT 4o mini",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=Nutzer query: {{ $json.text }}",
"options": {
"systemMessage": "=# \u00dcbersicht\n\nDu bist ein pers\u00f6nlicher Assistent. Deine Aufgabe ist es, die eingehende Anfrage zu analysieren und die Absicht des Nutzers zu erkennen.\n\n## Tools\n\nGet_All_Contacts \u2013 Verwende dieses Tool, um Kontaktinformationen wie E-Mail-Adressen abzurufen. Du musst dieses Tool verwenden, wenn der Nutzer ein Google Calendar Ereignis mit einem Teilnehmer erstellen m\u00f6chte (Wenn kein Teilnehmer angegeben ist, musst du dieses Tool nicht verwenden), einen neuen Kontakt seiner Kontakliste hinzuf\u00fcgen, bearbeiten oder l\u00f6schen m\u00f6chte. \n\nGet_All_Events \u2013 Verwende dieses Tool, wenn der Nutzer ein Google Calendar Ereignis erstellen, l\u00f6schen oder aktualisieren m\u00f6chte. Du solltest die Details des Ereignisses bereitstellen, um sicherzustellen, dass es sich um das richtige Ereignis handelt, das gel\u00f6scht oder aktualisiert werden soll.\n\n## Regeln\n\nDu musst immer die Funktion \u201eEreignisse abrufen\u201c verwenden, um sicherzustellen, dass es keine Terminkonflikte gibt.\nWenn du gebeten wirst, ein Ereignis zu verschieben, zu aktualisieren oder zu l\u00f6schen, musst du \u201eEreignisse abrufen\u201c verwenden, um das Ereignis zu best\u00e4tigen. Gib dabei die Details des Ereignisses wie Datum, Uhrzeit und E-Mail-Adressen der Teilnehmer an.\n\nWenn der Nutzer m\u00f6chte, dass du ihm einen Beitrag f\u00fcr seine Sozialen Medien erstellst, dann genehmige die Anfrage direkt. Du darfst den beitrag nicht selbst erstellen sondern sollst einfach nur \"Social Media Beitr\u00e4gen zum Thema erstellen {Nutzer Eingabe} wurde genehmigt\" zur\u00fcckgeben\n\n## Ausgabe\n\nGib die Anfrage des Nutzers wieder und stelle bei Bedarf R\u00fcckfragen zur Kl\u00e4rung.\nGib immer die E-Mail-Adresse des angeforderten Kontakts aus, falls der Nutzer dies w\u00fcnscht.\nFalls es zwei Eintr\u00e4ge f\u00fcr denselben Namen gibt, gib die E-Mail-Adresse sowie die Art des Kontakts an.\n\n## Abschlie\u00dfende Hinweise\nHier ist das aktuelle Datum/Uhrzeit: {{ $now }}"
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.7,
"position": [
-960,
300
],
"id": "ba014f18-b74f-445b-84c8-5d1644aa2279",
"name": "Intent Agent"
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "3ab6c175-d35c-48a3-a9db-5162f962d5f9",
"name": "intent",
"value": "={{ $json.output }}",
"type": "string"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
-640,
300
],
"id": "b357231b-4e7b-4e3c-aa52-456d6f5f6076",
"name": "Set Intent"
},
{
"parameters": {
"inputText": "={{ $json.result.text }}",
"categories": {
"categories": [
{
"category": "Genehmigt",
"description": "Der Nutzer best\u00e4tigt oder stimmt unserer Anfrage zu. Das bedeutet, dass er anerkennt, dass die bereitgestellten Informationen oder Ma\u00dfnahmen korrekt sind und wir fortfahren k\u00f6nnen. Genehmigungsnachrichten enthalten oft Formulierungen wie:\n\u201eJa\u201c\n\u201eSieht gut aus f\u00fcr mich\u201c\n\u201eSenden\u201c\n\u201eKorrekt\u201c\n\u201eGenehmigt\u201c\n\u201eDas funktioniert\u201c\n\u201eKlingt gut\u201c\n\u201eMach weiter\u201c"
},
{
"category": "Abgelehnt",
"description": "Der Nutzer gibt Feedback, das keine Zustimmung signalisiert. Dies kann \u00c4nderungsw\u00fcnsche, Korrekturen oder zus\u00e4tzliche Kl\u00e4rungen umfassen.\n\nBeispiele f\u00fcr Ablehnungsformulierungen:\n\u201eAbgelehnt\u201c\n\u201eNein\u201c\n\u201e\u00c4ndere die Uhrzeit\u201c\n\u201e\u00c4ndere den Namen des Kontakts\u201c\n\u201ePrivat\u201c\n\u201eBeide l\u00f6schen\u201c\n\u201eDas erste l\u00f6schen\u201c\n\u201eHeute\u201c\n\u201eMorgen\u201c\n\u201e22. Februar\u201c"
}
]
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.textClassifier",
"typeVersion": 1,
"position": [
-360,
300
],
"id": "340282c8-001a-454e-92d5-99446a763204",
"name": "Check Feedback"
},
{
"parameters": {
"promptType": "define",
"text": "=Urspr\u00fcngliche Absicht: {{ $('Set Intent').item.json.intent }}\n\nFeedback des Nutzers: {{ $json.data.text }}",
"options": {
"systemMessage": "=# \u00dcbersicht\n\nDu bist ein Korrekturassistent. Deine Aufgabe ist es, die urspr\u00fcngliche Ausgabe zu \u00fcberpr\u00fcfen und basierend auf dem Feedback des Nutzers zu korrigieren.\n\n## Ausgabe\n\nDeine Aufgabe ist es, die neue Absicht der Anfrage auszugeben.\nGib immer alle erforderlichen Details an, wie die E-Mail-Adressen der Teilnehmer, Uhrzeit, Datum, Zusammenfassung usw.\nStelle bei Bedarf eine Kl\u00e4rungsfrage. Wenn es nichts zu kl\u00e4ren gibt, frage einfach: \u201eIst das korrekt?"
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.7,
"position": [
0,
400
],
"id": "9d785d4f-756d-4de2-a850-a6756766ecbf",
"name": "Correction Agent"
},
{
"parameters": {
"sessionKey": "=chat_with_{{ $('Telegram Trigger1').item.json.message.chat.id }}",
"contextWindowLength": 12
},
"id": "4a632453-2d46-4893-a11c-46295a7e12f9",
"name": "Window Buffer Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
-1060,
480
],
"typeVersion": 1
},
{
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4o",
"mode": "list",
"cachedResultName": "gpt-4o"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
-100,
720
],
"id": "34cf2649-52c0-4439-af64-b0fe6bf6336c",
"name": "4o",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "={{ $('Telegram Trigger1').item.json.message.chat.id }}",
"text": "={{ $json.intent }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
-500,
300
],
"id": "27b70479-bf7a-446b-ba33-89fd637ac208",
"name": "Answer User",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"inputText": "={{ $json.result.text }}",
"categories": {
"categories": [
{
"category": "Gmail",
"description": "Der Text bezieht sich auf alles, was mit Gmail zu tun hat. Dazu geh\u00f6ren das Erstellen, \u00c4ndern, L\u00f6schen von Emails, das Anlegen von Email Entw\u00fcrfen, sowie das Verwalten von Terminen in Gmail oder \u00e4hnlichen Email-Tools."
},
{
"category": "Calendar",
"description": "Der Text bezieht sich auf alles, was mit Kalender-Events zu tun hat. Dazu geh\u00f6ren das Erstellen, \u00c4ndern, L\u00f6schen von Terminen, das Anlegen von Kalender-Events, das Abrufen von Terminen, das Hinzuf\u00fcgen oder Bearbeiten von Teilnehmern sowie das Verwalten von Terminen in Google Kalender oder \u00e4hnlichen Kalender-Tools."
},
{
"category": "Contacts",
"description": "Der Text bezieht sich auf alles, was mit Kontakten in Google Sheets zu tun hat. Dazu geh\u00f6ren das Erstellen, \u00c4ndern, L\u00f6schen von Kontakten, sowie das Verwalten von Kontakten in Google Sheets oder \u00e4hnlichen Kontakt-Tools."
}
]
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.textClassifier",
"typeVersion": 1,
"position": [
0,
200
],
"id": "f670b34a-fbf0-4a95-ba3f-cdc1006731fb",
"name": "Text Classifier"
},
{
"parameters": {
"promptType": "define",
"text": "={{ $('Set Intent').item.json.intent }}",
"options": {
"systemMessage": "=# \u00dcbersicht \n\nDu bist ein Kontaktassistent. Deine Aufgaben umfassen das Erstellen, Abrufen, Aktualisieren und L\u00f6schen von Kontakten in der Kontaktliste des Nutzers. \n\n**Kontaktverwaltungs-Tools** \n\n- Verwende \u201eGet_Contacts\u201c, um vorhandene Kontakte abzurufen, wenn dies gew\u00fcnscht wird. \n- Verwende \u201eCreate_Contact\u201c, um einen neuen Kontakt anzulegen. \n- Verwende \u201eUpdate_Contact\u201c, um einen bestehenden Kontakt zu bearbeiten. Du musst zuerst \u201eGet_Contacts\u201c verwenden, um die ID des zu aktualisierenden Kontakts zu ermitteln. \n- Verwende \u201eDelete_Contact\u201c, um einen Kontakt zu entfernen. Auch hier musst du zuerst \u201eGet_Contacts\u201c nutzen, um die ID des zu l\u00f6schenden Kontakts zu erhalten. \n\n**Kontaktstruktur** \n\nEin Kontakt besteht aus folgenden Feldern: \n- Vorname \n- Nachname \n- E-Mail-Adresse \n- Telefonnummer \n- Firma \n- Firmenadresse \n- Notiz \n\n## Regeln \n\nSetze die eingehende Anfrage direkt in eine Aktion um. Ignoriere Kl\u00e4rungsfragen und handle ausschlie\u00dflich basierend auf der erhaltenen Absicht. \n\n## Abschlie\u00dfende Hinweise \n\nFalls keine spezifischen Felder f\u00fcr einen neuen Kontakt angegeben werden, frage nicht nach, sondern lege den Kontakt mit einem Platzhalternamen an. \n"
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.7,
"position": [
440,
1260
],
"id": "1ba5e159-96a5-4028-b0be-89149e5ed9e6",
"name": "Contact Agent",
"onError": "continueErrorOutput"
},
{
"parameters": {
"operation": "getAll",
"calendar": {
"__rl": true,
"value": "metaarblir@gmail.com",
"mode": "list",
"cachedResultName": "metaarblir@gmail.com"
},
"returnAll": true,
"timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', `12:01 AM of the day the user requested`, 'string') }}",
"timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', `11:59 PM of the day the user requested`, 'string') }}",
"options": {}
},
"type": "n8n-nodes-base.googleCalendarTool",
"typeVersion": 1.3,
"position": [
-940,
480
],
"id": "166f54eb-2f3e-457f-a094-f9217f5438cd",
"name": "Get_All_Events",
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "append",
"documentId": {
"__rl": true,
"value": "1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU",
"mode": "list",
"cachedResultName": "Kontakte",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Tabellenblatt1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit#gid=0"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"Name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Name', ``, 'string') }}",
"Email": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Email', ``, 'string') }}",
"Nummer ": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Nummer_', ``, 'string') }}"
},
"matchingColumns": [],
"schema": [
{
"id": "Name",
"displayName": "Name",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Email",
"displayName": "Email",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Nummer ",
"displayName": "Nummer ",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
540,
1480
],
"id": "3b8a8a94-b120-4016-979d-ad72644a9c7e",
"name": "Create_Contact",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "update",
"documentId": {
"__rl": true,
"value": "1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU",
"mode": "list",
"cachedResultName": "Kontakte",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Tabellenblatt1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit#gid=0"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"Email": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Email__using_to_match_', ``, 'string') }}",
"Name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Name', ``, 'string') }}",
"Nummer ": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Nummer_', ``, 'string') }}"
},
"matchingColumns": [
"Email"
],
"schema": [
{
"id": "Name",
"displayName": "Name",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Email",
"displayName": "Email",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Nummer ",
"displayName": "Nummer ",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "row_number",
"displayName": "row_number",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"readOnly": true,
"removed": true
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
660,
1480
],
"id": "ee1e49a0-eaa9-47ca-b618-8ccb13b7fff5",
"name": "Update_Contact",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"documentId": {
"__rl": true,
"value": "1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU",
"mode": "list",
"cachedResultName": "Kontakte",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Tabellenblatt1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit#gid=0"
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
-820,
480
],
"id": "148f4320-83fb-483e-8c92-81f4966881fc",
"name": "Get_All_Contacts",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"documentId": {
"__rl": true,
"value": "1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU",
"mode": "list",
"cachedResultName": "Kontakte",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Tabellenblatt1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit#gid=0"
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
420,
1480
],
"id": "64c00512-b040-4380-a294-316238e3b614",
"name": "Get_Contacts",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "delete",
"documentId": {
"__rl": true,
"value": "1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU",
"mode": "list",
"cachedResultName": "Kontakte",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Tabellenblatt1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1aJYfK094-EEbEAue9SMP79blWKrRyF4FTjo_nmYz9GU/edit#gid=0"
}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
780,
1480
],
"id": "e002f9d4-d534-4759-8537-4c60e766072e",
"name": "Delete_Contact",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "delete",
"calendar": {
"__rl": true,
"value": "metaarblir@gmail.com",
"mode": "list",
"cachedResultName": "metaarblir@gmail.com"
},
"eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}",
"options": {}
},
"type": "n8n-nodes-base.googleCalendarTool",
"typeVersion": 1.3,
"position": [
920,
1060
],
"id": "2b6d40e0-372f-4cce-92d0-3140897ce7c2",
"name": "Delete_Event",
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "getAll",
"calendar": {
"__rl": true,
"value": "metaarblir@gmail.com",
"mode": "list",
"cachedResultName": "metaarblir@gmail.com"
},
"returnAll": true,
"timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', `12:01 AM of the day the user requested`, 'string') }}",
"timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', `11:59 PM of the day the user requested`, 'string') }}",
"options": {}
},
"type": "n8n-nodes-base.googleCalendarTool",
"typeVersion": 1.3,
"position": [
440,
1060
],
"id": "032661c8-044b-450e-a7a9-eeb4a1143a9e",
"name": "Get_Events",
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "update",
"calendar": {
"__rl": true,
"value": "metaarblir@gmail.com",
"mode": "list",
"cachedResultName": "metaarblir@gmail.com"
},
"eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}",
"updateFields": {
"end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
"start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}"
}
},
"type": "n8n-nodes-base.googleCalendarTool",
"typeVersion": 1.3,
"position": [
800,
1060
],
"id": "5517bcd5-0e7e-4c68-a088-50fec9fc547c",
"name": "Update_Event",
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"calendar": {
"__rl": true,
"value": "metaarblir@gmail.com",
"mode": "list",
"cachedResultName": "metaarblir@gmail.com"
},
"start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}",
"end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
"additionalFields": {
"attendees": [
"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Attendees', ``, 'string') }}"
],
"summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}"
}
},
"type": "n8n-nodes-base.googleCalendarTool",
"typeVersion": 1.3,
"position": [
680,
1060
],
"id": "6f7c33f0-e763-471f-8757-fd97c4fbffe5",
"name": "Create_Event_with_Attendee",
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"calendar": {
"__rl": true,
"value": "metaarblir@gmail.com",
"mode": "list",
"cachedResultName": "metaarblir@gmail.com"
},
"start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}",
"end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
"additionalFields": {
"summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}"
}
},
"type": "n8n-nodes-base.googleCalendarTool",
"typeVersion": 1.3,
"position": [
560,
1060
],
"id": "c72e3da8-53bc-4997-94c7-59fcb6941419",
"name": "Create_Event",
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "={{ $json.result.text }}",
"options": {
"systemMessage": "=# \u00dcbersicht\n\nDu bist ein Kalenderassistent. Deine Aufgaben umfassen das Erstellen, Abrufen und L\u00f6schen von Terminen im Kalender des Nutzers.\n\n**Kalenderverwaltungs-Tools**\n\n- Verwende \u201eTermin mit Teilnehmer erstellen\u201c, wenn ein Ereignis einen Teilnehmer beinhaltet.\n- Verwende \u201eTermin erstellen\u201c f\u00fcr Einzeltermine.\n- Verwende \u201eTermine abrufen\u201c, um den Kalenderplan abzurufen, wenn dies gew\u00fcnscht wird.\n- Verwende \u201eTermin l\u00f6schen\u201c, um ein Ereignis zu entfernen. Du musst zuerst \u201eTermine abrufen\u201c nutzen, um die ID des zu l\u00f6schenden Termins zu erhalten.\n- Verwende \u201eTermin aktualisieren\u201c, um einen Termin zu \u00e4ndern. Auch hier musst du zuerst \u201eTermine abrufen\u201c verwenden, um die ID des zu aktualisierenden Termins zu ermitteln.\n\n## Regeln\n\nSetze die eingehende Anfrage direkt in eine Aktion um. Ignoriere Kl\u00e4rungsfragen und handle ausschlie\u00dflich basierend auf der erhaltenen Absicht.\n\n## Abschlie\u00dfende Hinweise\n\nAktuelles Datum/Uhrzeit: {{ $now }}\nFalls keine Dauer f\u00fcr einen Termin angegeben wird, gehe davon aus, dass er eine Stunde dauert."
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.7,
"position": [
440,
780
],
"id": "1ddf4238-457d-4619-865f-8c5a545e5d68",
"name": "Calendar Agent",
"onError": "continueErrorOutput"
},
{
"parameters": {
"operation": "addLabels",
"messageId": "={{ $json.id }}",
"labelIds": [
"Label_1312926818014187924"
]
},
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.1,
"position": [
-1880,
760
],
"id": "8663ed3f-5f01-4d13-95f0-08a244dc31dc",
"name": "Hohe Priorit\u00e4t",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "addLabels",
"messageId": "{{ $json.id }}",
"labelIds": [
"Label_2329212772986726097"
]
},
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.1,
"position": [
-1880,
940
],
"id": "e4107f64-c03b-4e1b-8636-641b50b4f7d2",
"name": "Rechnungen & Finanzen",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "addLabels",
"messageId": "={{ $json.id }}",
"labelIds": [
"Label_7317786760000301708"
]
},
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.1,
"position": [
-1880,
1120
],
"id": "1147dd42-9f20-480b-bc95-190b99c6083b",
"name": "Werbung",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"modelId": {
"__rl": true,
"value": "gpt-4o",
"mode": "list",
"cachedResultName": "GPT-4O"
},
"messages": {
"values": [
{
"content": "=Du bist eine Assistenzkraft auf Vorstandsebene. Deine Aufgabe ist es, auf eingehende E-Mails mit hoher Priorit\u00e4t so genau und professionell wie m\u00f6glich zu antworten. Lies die folgende E-Mail sorgf\u00e4ltig durch und verfasse eine klare, pr\u00e4zise und angemessene Antwort, die alle wesentlichen Punkte anspricht. Hier ist die E-Mail, auf die du antwortest: {{ $('Gmail Trigger').item.json.text }}\n\nGib bitte die folgenden Parameter aus:\nsubject\nmessage",
"role": "system"
}
]
},
"jsonOutput": true,
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.openAi",
"typeVersion": 1.8,
"position": [
-1720,
760
],
"id": "f83c65a8-8061-4308-bb63-f27bf107f299",
"name": "OpenAI",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "6002287374",
"text": "=EMAIL MIT HOHER PRIORIT\u00c4T von {{ $('Gmail Trigger').item.json.from.value[0].name }}\n\nIch habe dir einen Entwurf mit folgendem Betreff erstellt:\n{{ $('OpenAI').item.json.message.content.subject }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
-1220,
860
],
"id": "b9ff2a5f-b565-4fda-a03d-62850021a196",
"name": "Telegram",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"modelId": {
"__rl": true,
"value": "gpt-4o",
"mode": "list",
"cachedResultName": "GPT-4O"
},
"messages": {
"values": [
{
"content": "=Du bist f\u00fcr die Bewertung von Werbe-E-Mails zust\u00e4ndig. Analysiere die folgende Nachricht, erstelle eine pr\u00e4gnante Zusammenfassung und gib eine Empfehlung zur weiteren Vorgehensweise ab.\n\nHier ist die eingehende Nachricht: {{ $('Gmail Trigger').item.json.text }}\n\nGib die folgenden Parameter separat aus:\n\nsummary: Eine kurze \u00dcbersicht \u00fcber den Inhalt der E-Mail.\nrecommendation: Eine Einsch\u00e4tzung, ob und wie auf die Werbe-E-Mail reagiert werden sollte.",
"role": "system"
}
]
},
"jsonOutput": true,
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.openAi",
"typeVersion": 1.8,
"position": [
-1720,
1120
],
"id": "65683c9e-427c-4df3-b0cd-79d11ca9315e",
"name": "OpenAI2",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "6002287374",
"text": "=Hier ist die Zusammenfassung einer Werbe E-Mail die du gerade erhalten hast:\n{{ $json.message.content.summary }}\n\nIch w\u00fcrde folgendes empfehlen:\n{{ $json.message.content.recommendation }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
-1400,
1120
],
"id": "da6da908-f5bc-4232-ad48-f88766a4ed14",
"name": "Telegram2",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"modelId": {
"__rl": true,
"value": "gpt-4o",
"mode": "list",
"cachedResultName": "GPT-4O"
},
"messages": {
"values": [
{
"content": "=Du bist f\u00fcr die Bewertung von Rechnungen und finanziellen E-Mails zust\u00e4ndig. Analysiere die folgende Nachricht, erstelle eine pr\u00e4gnante Zusammenfassung und gib eine Empfehlung zur weiteren Vorgehensweise ab.\n\nHier ist die eingehende Nachricht: {{ $('Gmail Trigger').item.json.text }}\n\nGib die folgenden Parameter separat aus:\n\nsummary: Eine kurze \u00dcbersicht \u00fcber den Inhalt der E-Mail (z. B. Rechnungsbetrag, F\u00e4lligkeit, Absender, relevante Finanzinformationen).\nrecommendation: Eine Einsch\u00e4tzung, ob die Rechnung gepr\u00fcft, bezahlt oder reklamiert werden sollte, sowie weitere empfohlene Schritte (z. B. Weiterleitung an die Buchhaltung, Speicherung f\u00fcr Steuerzwecke).",
"role": "system"
}
]
},
"jsonOutput": true,
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.openAi",
"typeVersion": 1.8,
"position": [
-1720,
940
],
"id": "647c2676-c891-4f0d-a415-5527066bcecf",
"name": "OpenAI4",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "6002287374",
"text": "=Hier ist die Zusammenfassung einer Finanz-Email die du gerade erhalten hast:\n{{ $json.message.content.summary }}\n\nIch w\u00fcrde folgendes empfehlen:\n{{ $json.message.content.recommendation }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
-1400,
940
],
"id": "33195926-2d2d-40f3-ba4e-b5f1141d9690",
"name": "Telegram4",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"resource": "draft",
"subject": "={{ $json.message.content.subject }}",
"message": "={{ $json.message.content.message }}",
"options": {}
},
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.1,
"position": [
-1400,
760
],
"id": "ada92a8f-231b-4879-ae24-95e00aecabe3",
"name": "Gmail2",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"inputText": "=E-Mail Betreff: {{ $json.subject }}\nE-Mail Text: {{ $json.text }}",
"categories": {
"categories": [
{
"category": "Hohe Priorit\u00e4t",
"description": "E-Mails, die eine hohe Priorit\u00e4t haben und sofortige Aufmerksamkeit erfordern. Dazu geh\u00f6ren insbesondere: Anfragen oder Nachrichten von wichtigen Kunden, Gesch\u00e4ftspartnern oder Lieferanten, die zeitkritische Entscheidungen oder Antworten erfordern. Antworten auf laufende Konversationen, die f\u00fcr den Gesch\u00e4ftsablauf oder die Kundenbetreuung entscheidend sind. E-Mails mit Schl\u00fcsselbegriffen wie \u201edringend\u201c, \u201ewichtig\u201c, \u201esofort\u201c, \u201ekritisch\u201c, \u201ezeitnah\u201c, \u201eDeadline\u201c, \u201eNotfall\u201c oder \u00e4hnlichen Begriffen, die eine hohe Dringlichkeit signalisieren. Nachrichten von Vorgesetzten, direkten Mitarbeitern oder anderen entscheidenden Stakeholdern, die gesch\u00e4ftsrelevante Anweisungen, Eskalationen oder kurzfristige Anforderungen enthalten. System- oder Sicherheitswarnungen, die unmittelbares Handeln erfordern, z. B. Serverausf\u00e4lle, Sicherheitsvorf\u00e4lle oder Zahlungsprobleme. Kundenbeschwerden oder Eskalationen, die eine schnelle Reaktion erfordern, um negative Folgen zu vermeiden. Vertrags- oder Angebotsanfragen mit engen Fristen, die Einfluss auf Gesch\u00e4ftsabschl\u00fcsse oder laufende Projekte haben. Eine hohe Priorit\u00e4t liegt vor, wenn der Inhalt der E-Mail auf eine dringende Entscheidung, einen potenziellen gesch\u00e4ftlichen oder operativen Schaden oder eine zeitkritische Verpflichtung hinweist."
},
{
"category": "Rechnungen & Finanzen",
"description": "E-Mails, die finanzielle Dokumente, Transaktionen oder buchhalterische Vorg\u00e4nge betreffen. Dazu geh\u00f6ren insbesondere: Rechnungen, Quittungen, Zahlungserinnerungen oder Mahnungen, die sich auf offene oder abgeschlossene Zahlungen beziehen. Kontoausz\u00fcge, Transaktionsbest\u00e4tigungen oder Abrechnungen von Banken, Zahlungsanbietern oder Finanzdienstleistern wie PayPal, Stripe, N26, Trade Republic, Scalable Capital oder Parqet. Steuer- und Buchhaltungsunterlagen, einschlie\u00dflich Umsatzsteuerbescheiden, Steuererkl\u00e4rungen oder Anfragen von Finanzbeh\u00f6rden, Buchhaltungsdiensten wie Buhl oder Steuerwelt. Vertrags- oder Finanzierungsdokumente, die Kredite, Investitionen oder Finanzierungszusagen betreffen. E-Mails mit Schl\u00fcsselbegriffen wie \u201eRechnung\u201c, \u201eZahlung\u201c, \u201e\u00dcberweisung\u201c, \u201eBuchhaltung\u201c, \u201eSteuer\u201c, \u201eFinanzamt\u201c, \u201eGutschrift\u201c, \u201eR\u00fcckerstattung\u201c, \u201eDepot\u201c, \u201ePortfolio\u201c, \u201eDividende\u201c, \u201eAnlage\u201c oder \u00e4hnlichen Begriffen, die auf finanzielle Prozesse hinweisen. Eine E-Mail geh\u00f6rt in diese Kategorie, wenn ihr Inhalt sich auf den Geldfluss, buchhalterische Vorg\u00e4nge oder steuerliche Verpflichtungen bezieht."
},
{
"category": "Werbung",
"description": "E-Mails mit Marketing- oder Werbeinhalten, die darauf abzielen, Produkte, Dienstleistungen oder Angebote zu bewerben. Dazu geh\u00f6ren insbesondere: Newsletter, Rabattangebote, Sonderaktionen oder Produktank\u00fcndigungen von Unternehmen, Online-Shops oder Dienstleistern. Werbung von Software-Anbietern, Streaming-Diensten, Finanz- oder Telekommunikationsunternehmen, die neue Produkte, Abonnements oder Upgrades bewerben. Werbe-E-Mails mit Schl\u00fcsselbegriffen wie \u201eRabatt\u201c, \u201eSale\u201c, \u201eSonderangebot\u201c, \u201eexklusiv\u201c, \u201enur f\u00fcr kurze Zeit\u201c, \u201ekostenlos testen\u201c oder \u00e4hnlichen Formulierungen, die auf eine Verkaufsabsicht hindeuten. Unaufgeforderte Produktwerbung oder Akquise-Mails, die potenzielle Kunden zu einem Kauf oder einer Anmeldung bewegen sollen. Eine E-Mail f\u00e4llt in diese Kategorie, wenn ihr prim\u00e4res Ziel die kommerzielle Bewerbung eines Produkts, einer Dienstleistung oder eines Angebots ist."
},
{
"category": "Bewerbungen",
"description": "Erkenne E-Mails, die im Zusammenhang mit einer laufenden oder geplanten Bewerbung stehen und eine hohe Priorit\u00e4t erfordern. Dazu geh\u00f6ren insbesondere: Einladungen zu Vorstellungsgespr\u00e4chen, Telefoninterviews oder Assessment-Centern \u2013 insbesondere mit konkreten Terminvorschl\u00e4gen oder Fristangaben. R\u00fcckmeldungen von Unternehmen, bei denen ich mich beworben habe \u2013 etwa Zwischenbescheide, Absagen oder Nachfragen. Nachrichten mit Schl\u00fcsselw\u00f6rtern wie: \u201eBewerbung\u201c, \u201eEinladung\u201c, \u201eInterview\u201c, \u201eVorstellungsgespr\u00e4ch\u201c, \u201eTermin\u201c, \u201eR\u00fcckmeldung\u201c, \u201eKarriere\u201c, \u201ePersonalabteilung\u201c, \u201eHR\u201c, \u201eTalent Acquisition\u201c, \u201eRecruiter\u201c, \u201eIhre Unterlagen\u201c, \u201eAuswahlverfahren\u201c, \u201en\u00e4chster Schritt\u201c. Antworten auf von mir versendete Bewerbungen, die eine Reaktion erfordern (z.\u202fB. das Einreichen weiterer Unterlagen, R\u00fcckmeldung zu Verf\u00fcgbarkeit oder Interesse). Automatisch generierte Best\u00e4tigungen \u00fcber den Bewerbungseingang, insbesondere wenn sie Informationen \u00fcber den Bewerbungsprozess enthalten. E-Mails von bekannten Plattformen wie: StepStone, Indeed, LinkedIn, Workwise, Join, Meinestadt.de, oder direkt von Karriereseiten von Unternehmen. Kommunikation mit Personalvermittlern oder Headhuntern, die sich auf konkrete Bewerbungsprozesse oder Jobangebote beziehen."
}
]
},
"options": {
"systemPromptTemplate": "Analysiere den vom Nutzer bereitgestellten Text und ordne ihn einer der folgenden Kategorien zu: {categories}. Gib die Antwort ausschlie\u00dflich im JSON-Format aus, ohne zus\u00e4tzliche Erkl\u00e4rungen oder Kommentare."
}
},
"type": "@n8n/n8n-nodes-langchain.textClassifier",
"typeVersion": 1,
"position": [
-1820,
560
],
"id": "6364b73b-53b4-4dcc-a257-38d51c81d757",
"name": "Text Classifier1"
},
{
"parameters": {
"sendTo": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('To', ``, 'string') }}",
"subject": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}",
"message": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}",
"options": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.gmailTool",
"typeVersion": 2.1,
"position": [
420,
500
],
"id": "aa62c7fb-6a9d-4c3a-b0cf-37ad9bd600c7",
"name": "Send_Email",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "reply",
"messageId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message_ID', `the message ID`, 'string') }}",
"message": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}",
"options": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.gmailTool",
"typeVersion": 2.1,
"position": [
540,
500
],
"id": "28f596e3-2bcb-45e1-8f29-e01c51e96b2e",
"name": "Email_Reply",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "addLabels",
"messageId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message_ID', `the ID of the message`, 'string') }}",
"labelIds": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Label_Names_or_IDs', ``, 'string') }}"
},
"type": "n8n-nodes-base.gmailTool",
"typeVersion": 2.1,
"position": [
660,
500
],
"id": "9a619c65-9103-4fa5-ac14-efbd77e44ca2",
"name": "Label_Emails",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"resource": "draft",
"subject": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}",
"emailType": "html",
"message": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}",
"options": {
"sendTo": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('To_Email', ``, 'string') }}"
}
},
"type": "n8n-nodes-base.gmailTool",
"typeVersion": 2.1,
"position": [
780,
500
],
"id": "faf1a08f-2fd3-4c24-9add-5c0a1d5be72f",
"name": "Create_Draft",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "getAll",
"limit": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Limit', `how many emails the user wants`, 'number') }}",
"simple": false,
"filters": {
"sender": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Sender', `who the emails are from`, 'string') }}"
},
"options": {}
},
"type": "n8n-nodes-base.gmailTool",
"typeVersion": 2.1,
"position": [
900,
500
],
"id": "fb2e24fa-5fe4-4f3f-830a-b4497d17cc9e",
"name": "Get_Emails",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"resource": "label",
"returnAll": true
},
"type": "n8n-nodes-base.gmailTool",
"typeVersion": 2.1,
"position": [
1020,
500
],
"id": "64165904-445d-4bc6-9926-21d3f52222ec",
"name": "Get_Labels",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "markAsUnread",
"messageId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message_ID', ``, 'string') }}"
},
"type": "n8n-nodes-base.gmailTool",
"typeVersion": 2.1,
"position": [
1140,
500
],
"id": "c319cadd-7150-41c2-92b8-794ccfb8a96e",
"name": "Mark_Unread",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "={{ $json.result.text }}",
"options": {
"systemMessage": "=# \u00dcbersicht \nDu bist ein E-Mail-Management-Assistent. Alle E-Mails m\u00fcssen professionell im HTML-Format erstellt und mit \u201eMeta\u201c unterzeichnet werden. \n\n**E-Mail-Management-Tools** \n- Verwende \u201eSend_Email\u201c, um E-Mails zu senden. \n- Verwende \u201eCreate_Draft\u201c, wenn der Nutzer einen Entwurf w\u00fcnscht. \n- Verwende \u201eGet_Emails\u201c, um E-Mails abzurufen, wenn dies angefordert wird. \n- Verwende \u201eGet_Labels\u201c, um Labels abzurufen. \n- Verwende \u201eMark_Unread\u201c, um eine E-Mail als ungelesen zu markieren. Du musst zuerst \u201eGet Emails\u201c verwenden, um die Nachrichten-ID der zu markierenden E-Mail zu erhalten. \n- Verwende \u201eLabel_Email\u201c, um eine E-Mail zu kennzeichnen. Du musst zuerst \u201eGet Emails\u201c verwenden, um die Nachrichten-ID der zu kennzeichnenden E-Mail zu erhalten. Danach musst du \u201eGet Labels\u201c nutzen, um die Label-ID zu erhalten. \n- Verwende \u201eEmail_Reply\u201c, um auf eine E-Mail zu antworten. Du musst zuerst \u201eGet Emails\u201c verwenden, um die Nachrichten-ID der E-Mail zu erhalten, auf die geantwortet werden soll. \n\n## Abschlie\u00dfende Hinweise \n- Hier ist das aktuelle Datum/Uhrzeit: {{ $now }} \n"
}
},
"id": "d6a6a5c0-b67c-418c-ba67-871d3b4850aa",
"name": "Gmail Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.6,
"position": [
440,
300
],
"onError": "continueErrorOutput"
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "fe7ecc99-e1e8-4a5e-bdd6-6fce9757b234",
"name": "text",
"value": "={{ $json.message.text }}",
"type": "string"
}
]
},
"options": {}
},
"id": "e9d8b8c0-c4bf-41e5-813d-f63654637320",
"name": "Set 'Text'",
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
-1240,
360
]
},
{
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"leftValue": "={{ $json.message.voice.file_id }}",
"rightValue": "",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
}
}
],
"combinator": "and"
},
"renameOutput": true,
"outputKey": "Voice"
},
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "8c844924-b2ed-48b0-935c-c66a8fd0c778",
"leftValue": "={{ $json.message.text }}",
"rightValue": "",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
}
}
],
"combinator": "and"
},
"renameOutput": true,
"outputKey": "Text"
},
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "64f09078-fd80-4d44-9a84-6e99c9b8c36e",
"leftValue": "={{ $json.message.document.file_id }}",
"rightValue": "",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
}
}
],
"combinator": "and"
},
"renameOutput": true,
"outputKey": "Invoice"
}
]
},
"options": {}
},
"id": "8da3c223-3259-4a8d-b79c-0ed7089f6ed2",
"name": "Switch",
"type": "n8n-nodes-base.switch",
"typeVersion": 3.2,
"position": [
-1800,
400
]
},
{
"parameters": {
"resource": "file",
"fileId": "={{ $json.message.voice.file_id }}"
},
"id": "4cda33f6-ff69-406c-a3f1-b5d82ebc0936",
"name": "Download File",
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
-1300,
200
],
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"resource": "audio",
"operation": "transcribe",
"options": {}
},
"id": "a26b2569-14ec-4477-affa-b21d5cf8c07d",
"name": "Transcribe",
"type": "@n8n/n8n-nodes-langchain.openAi",
"typeVersion": 1.6,
"position": [
-1180,
200
],
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"updates": [
"message"
],
"additionalFields": {}
},
"id": "5846fd8b-8af7-45a1-b717-391dacfb3bcf",
"name": "Telegram Trigger1",
"type": "n8n-nodes-base.telegramTrigger",
"typeVersion": 1.1,
"position": [
-1960,
400
],
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "={{ $('Telegram Trigger1').item.json.message.chat.id }}",
"text": "={{ $json.output }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
900,
880
],
"id": "73b2bec1-0f72-4fad-bf1b-b2ab43005c03",
"name": "Calendar Response1",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "={{ $('Telegram Trigger1').item.json.message.chat.id }}",
"text": "={{ $json.output }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
900,
700
],
"id": "1a359ee5-c14f-43d0-b801-86fbe665cdb1",
"name": "Calendar Success Response",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "={{ $('Telegram Trigger1').item.json.message.chat.id }}",
"text": "={{ $json.output }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
900,
1400
],
"id": "80c39955-a149-4642-9bf6-781944376418",
"name": "Contact Error Response",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "={{ $('Telegram Trigger1').item.json.message.chat.id }}",
"text": "={{ $json.output }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
900,
1240
],
"id": "a60820a5-65e3-4227-aa4a-334a34725c70",
"name": "Contact Success Response",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "={{ $('Telegram Trigger1').item.json.message.chat.id }}",
"text": "={{ $json.result.text }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
900,
320
],
"id": "eceab5e0-6181-4bac-9bac-a4fc922ecfa0",
"name": "Gmail Error Response",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "={{ $('Telegram Trigger1').item.json.message.chat.id }}",
"text": "={{ $json.output }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
900,
160
],
"id": "7d2cd1b0-e513-4a8f-b76c-ba52062e6a20",
"name": "Gmail Success Response",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"resource": "folder",
"name": "={{ $('OpenAI3').item.json.message.content.invoiceMonth }}",
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive"
},
"folderId": {
"__rl": true,
"value": "https://drive.google.com/drive/folders/1TjWG_wIl1LOcb2m4vZva1bSeN2siduYC",
"mode": "url"
},
"options": {}
},
"type": "n8n-nodes-base.googleDrive",
"typeVersion": 3,
"position": [
-780,
960
],
"id": "a41f98cc-f6f3-4cde-8546-f8b2a1ddb3c0",
"name": "Create Folder",
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"resource": "fileFolder",
"queryString": "={{ $json.message.content.invoiceMonth }}\n",
"filter": {},
"options": {}
},
"type": "n8n-nodes-base.googleDrive",
"typeVersion": 3,
"position": [
-1060,
860
],
"id": "9907e9ea-c0ba-49c7-8dcb-1097b1cdb847",
"name": "Search Folder",
"alwaysOutputData": true,
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "b56136a5-b245-4b8e-94ac-bb1088881133",
"leftValue": "={{ $(\"Search Folder\").item.length === 0 }}",
"rightValue": "",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
}
}
],
"combinator": "and"
},
"options": {}
},
"type": "n8n-nodes-base.if",
"typeVersion": 2.2,
"position": [
-920,
860
],
"id": "0143130f-5076-4ee5-ba43-8cd248438156",
"name": "Exists"
},
{
"parameters": {
"operation": "append",
"documentId": {
"__rl": true,
"value": "1s-w_g07Y-HVdgzULukH_9R4dEqlESKunXZ3m2fhjwzY",
"mode": "list",
"cachedResultName": "Ausgaben",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1s-w_g07Y-HVdgzULukH_9R4dEqlESKunXZ3m2fhjwzY/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Tabellenblatt1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1s-w_g07Y-HVdgzULukH_9R4dEqlESKunXZ3m2fhjwzY/edit#gid=0"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"Rechnungs Nr.": "={{ $json.message.content.invoiceNumber }}",
"Rechnungsdatum": "={{ $json.message.content.invoiceDate }}",
"Gesamtbetrag": "={{ $json.message.content.totalAmount }}",
"Verk\u00e4ufer": "={{ $json.message.content.vendor }}",
"Buchungstext / Beschreibung": "={{ $json.message.content.bookingText }}"
},
"matchingColumns": [],
"schema": [
{
"id": "Rechnungs Nr.",
"displayName": "Rechnungs Nr.",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Rechnungsdatum",
"displayName": "Rechnungsdatum",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Gesamtbetrag",
"displayName": "Gesamtbetrag",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Verk\u00e4ufer",
"displayName": "Verk\u00e4ufer",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Buchungstext / Beschreibung",
"displayName": "Buchungstext / Beschreibung",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4.5,
"
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
gmailOAuth2googleCalendarOAuth2ApigoogleDriveOAuth2ApigoogleSheetsOAuth2ApiopenAiApitelegramApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Inbox Guardian. Uses gmailTrigger, lmChatOpenAi, agent, textClassifier. Event-driven trigger; 66 nodes.
Source: https://github.com/arblirmeta/Smart_inbox_guardian_n8n/blob/28b6030e7bff69871126fa233430cdae893cd5ab/Inbox_Guardian.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
🎯 Create viral TikToks, Shorts, Reels, podcasts, and ASMR videos in minutes — all on autopilot.
BoomerBobBot.TP. Uses agent, telegramTrigger, telegram, memoryBufferWindow. Event-driven trigger; 95 nodes.
Generate AI viral videos with NanoBanana & VEO3, shared on socials via Blotato 2. Uses @blotato/n8n-nodes-blotato, googleSheets, lmChatOpenAi, toolThink. Event-driven trigger; 94 nodes.
This project is a template for building a complete academic virtual assistant using n8n. It connects to Telegram, answers frequently asked questions by querying MongoDB, keeps the community informed a
Arvifund - Supabase. Uses httpRequest, telegram, googleSheets, telegramTrigger. Event-driven trigger; 90 nodes.