Google Tasks über Webhook-Integration zu Google-Kalender-Ereignissen konvertieren
Experte
Dies ist ein Personal Productivity, Multimodal AI-Bereich Automatisierungsworkflow mit 16 Nodes. Hauptsächlich werden If, Set, Webhook, DateTime, GoogleTasks und andere Nodes verwendet. Google Tasks in Google-Kalenderereignisse durch Webhook-Integration umwandeln
Voraussetzungen
- •HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
Verwendete Nodes (16)
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
"meta": {
"instanceId": "6d95cfcfdb5941832863c02ceb9fcbd0e7cde6400b76244f830811247606f9a4",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "e617195e-a1e2-4bb4-95b9-c7751ee8782c",
"name": "Template Notizs",
"type": "n8n-nodes-base.stickyNote",
"position": [
272,
0
],
"parameters": {
"color": 5,
"width": 528,
"height": 288,
"content": "## What this template does\nCreate Google Calendar events from incoming task payloads.\n\n## How to set up\n1) Select Google credentials in Tasks & Calendar nodes.\n2) Configure `tasklistId` and `calendarId` in **Configuration**.\n3) POST `{ TaskName, DueDateTimeSeconds }` to the Webhook.\n4) Test, then activate.\n"
},
"typeVersion": 1
},
{
"id": "8baf3bc2-affd-4427-ad8f-0a8eef5995e9",
"name": "Configuration",
"type": "n8n-nodes-base.set",
"position": [
320,
480
],
"parameters": {
"values": {
"number": [
{
"name": "defaultMinutes",
"value": 30
},
{
"name": "eventColor",
"value": 8
}
],
"string": [
{
"name": "calendarId",
"value": "primary"
},
{
"name": "tasklistId",
"value": "REPLACE_WITH_TASKLIST_ID"
}
]
},
"options": {}
},
"typeVersion": 2
},
{
"id": "6d90eb2d-3275-4525-b5d7-f7e761417683",
"name": "Google Tasks",
"type": "n8n-nodes-base.googleTasks",
"position": [
544,
480
],
"parameters": {
"task": "={{ $('Configuration').item.json.tasklistId }}",
"operation": "getAll",
"additionalFields": {
"showCompleted": false
}
},
"credentials": {
"googleTasksOAuth2Api": {
"id": "r2Y8GsrO4PklYdVd",
"name": "Google Tasks account"
}
},
"typeVersion": 1
},
{
"id": "668b1608-7a1b-4ac2-8570-fcbf8278cfaa",
"name": "Datum & Zeit",
"type": "n8n-nodes-base.dateTime",
"position": [
752,
480
],
"parameters": {
"date": "={{ $('Webhook').item.json.body.DueDateTimeSeconds.toDateTime(\"s\") }}",
"format": "custom",
"options": {},
"operation": "formatDate",
"customFormat": "=yyyy-MM-dd HH:mm:ss"
},
"typeVersion": 2
},
{
"id": "0be0e8d0-b369-47e4-9419-90b3def746ad",
"name": "Google Kalender",
"type": "n8n-nodes-base.googleCalendar",
"position": [
1392,
560
],
"parameters": {
"end": "={{ $('Date & Time').item.json.formattedDate.toDateTime().plus($('Configuration').item.json.defaultMinutes, 'minutes').format(\"yyyy-MM-dd HH:mm:ss\") }}",
"start": "={{ $('Date & Time').item.json.formattedDate }}",
"calendar": {
"__rl": true,
"mode": "id",
"value": "={{ $('Configuration').item.json.calendarId }}"
},
"additionalFields": {
"color": "={{ $('Configuration').item.json.eventColor }}",
"summary": "={{ $('Google Tasks').item.json.title }}"
}
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "20g8lCLkphJifaBd",
"name": "Google Calendar account"
}
},
"typeVersion": 1.1
},
{
"id": "530619d8-52f2-4bb6-9fed-4068e686127a",
"name": "Google Tasks1",
"type": "n8n-nodes-base.googleTasks",
"position": [
1616,
560
],
"parameters": {
"task": "MTQ4MDk5NDE1Mjc2NjA5MTA5MjE6MDow",
"taskId": "={{ $('Google Tasks').item.json.id }}",
"operation": "delete"
},
"credentials": {
"googleTasksOAuth2Api": {
"id": "r2Y8GsrO4PklYdVd",
"name": "Google Tasks account"
}
},
"typeVersion": 1
},
{
"id": "36a1682b-8390-4273-ac26-1c35ec932294",
"name": "Webhook-Trigger",
"type": "n8n-nodes-base.webhook",
"position": [
112,
480
],
"webhookId": "task-to-calendar",
"parameters": {
"path": "task-to-calendar",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 2
},
{
"id": "0fde8152-49b5-49e5-b52e-23fdb8000d03",
"name": "Google Kalender9",
"type": "n8n-nodes-base.googleCalendar",
"position": [
960,
480
],
"parameters": {
"limit": 3,
"options": {
"query": "={{ $('Webhook').item.json.body.TaskName }}",
"updatedMin": "={{ $now.minus(5, 'minutes') }}",
"showDeleted": "=false"
},
"calendar": {
"__rl": true,
"mode": "id",
"value": "={{ $('Configuration').item.json.calendarId }}"
},
"operation": "getAll"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "20g8lCLkphJifaBd",
"name": "Google Calendar account"
}
},
"typeVersion": 1.1,
"alwaysOutputData": true
},
{
"id": "de1caa4c-f1fc-44cc-baf4-9522f72f2b8d",
"name": "If1",
"type": "n8n-nodes-base.if",
"position": [
1152,
480
],
"parameters": {
"options": {},
"conditions": {
"options": {
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "f08129c7-f807-4915-9012-020c59db3629",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.summary }}",
"rightValue": "={{ $json.summary }}"
},
{
"id": "66c9e6d4-82bd-4e28-9456-4b9c9c1e54a3",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "{{ $('Webhook').item.json.body.TaskName }}",
"rightValue": "{{ $json.summary }}"
}
]
}
},
"typeVersion": 2,
"alwaysOutputData": false
},
{
"id": "b6b89761-d9dd-4f41-b150-c3e1de4246b6",
"name": "Schritt 1 – Trigger",
"type": "n8n-nodes-base.stickyNote",
"position": [
96,
736
],
"parameters": {
"color": "blue",
"height": 288,
"content": "## Step 1 – Trigger (Webhook)\nReceives a JSON payload and starts the flow.\n\n**Example payload**\n```json\n{ \"TaskName\": \"Pay invoice\", \"DueDateTimeSeconds\": 1735179600 }\n```\nTip: replace the Manual Trigger if you prefer scheduled imports."
},
"typeVersion": 1
},
{
"id": "63bc5ca7-8930-434a-b293-6168a11f5881",
"name": "Schritt 2 – Konfiguration",
"type": "n8n-nodes-base.stickyNote",
"position": [
368,
736
],
"parameters": {
"color": "blue",
"height": 288,
"content": "## Step 2 – Configuration\nSingle place to adjust variables:\n- `tasklistId` – Google Tasks list ID\n- `calendarId` – target Calendar (e.g., `primary`)\n- `defaultMinutes` – event duration\n- `eventColor` – Calendar color index"
},
"typeVersion": 1
},
{
"id": "91d84006-1103-4686-877d-7135245db2a1",
"name": "Schritt 3 – Datum",
"type": "n8n-nodes-base.stickyNote",
"position": [
640,
736
],
"parameters": {
"color": "blue",
"height": 176,
"content": "## Step 3 – Date formatting\nBuilds a proper start datetime from `DueDateTimeSeconds`.\nEnd time = start + `defaultMinutes` (configurable)."
},
"typeVersion": 1
},
{
"id": "d4b1604a-8d40-466b-b8a8-a8d7dcdf6f03",
"name": "Schritt 4 – Deduplizierung",
"type": "n8n-nodes-base.stickyNote",
"position": [
912,
736
],
"parameters": {
"color": "blue",
"height": 224,
"content": "## Step 4 – Duplicate guard\nSearches recently updated events in the target calendar to prevent duplicates.\nAdjust the search window or title matching to fit your use case."
},
"typeVersion": 1
},
{
"id": "c74b5b51-10c0-4a4f-ada8-450a25846258",
"name": "Schritt 5 – Ereignis erstellen",
"type": "n8n-nodes-base.stickyNote",
"position": [
1184,
736
],
"parameters": {
"color": "blue",
"height": 192,
"content": "## Step 5 – Create event\nCreates a Calendar event using the formatted start time.\nEnd time = start + `defaultMinutes`. Color taken from `eventColor`."
},
"typeVersion": 1
},
{
"id": "680dfb47-1ef5-482b-a772-01ea49eb67f1",
"name": "Schritt 6 – Bereinigung",
"type": "n8n-nodes-base.stickyNote",
"position": [
1456,
736
],
"parameters": {
"color": "blue",
"height": 192,
"content": "## Step 6 – Cleanup (optional)\nDeletes the original Google Task after creating the Calendar event.\nDisable this if you prefer to keep tasks."
},
"typeVersion": 1
},
{
"id": "ba3e90cf-b8ce-40d7-adfa-f8c8f48891b5",
"name": "Workflow-Übersicht",
"type": "n8n-nodes-base.stickyNote",
"position": [
832,
0
],
"parameters": {
"color": "blue",
"width": 400,
"height": 192,
"content": "## Flow overview\n1) **Webhook** receives task payload →\n2) **Configuration** centralizes variables →\n3) **Date & Time** formats schedule →\n4) **Duplicate guard** checks recent events →\n5) **Create event** on Google Calendar →\n6) **Cleanup** optionally deletes original task."
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"de1caa4c-f1fc-44cc-baf4-9522f72f2b8d": {
"main": [
[],
[
{
"node": "Google Calendar",
"type": "main",
"index": 0
}
]
]
},
"Webhook": {
"main": [
[
{
"node": "8baf3bc2-affd-4427-ad8f-0a8eef5995e9",
"type": "main",
"index": 0
}
]
]
},
"Date & Time": {
"main": [
[
{
"node": "Google Calendar9",
"type": "main",
"index": 0
}
]
]
},
"6d90eb2d-3275-4525-b5d7-f7e761417683": {
"main": [
[
{
"node": "Date & Time",
"type": "main",
"index": 0
}
]
]
},
"8baf3bc2-affd-4427-ad8f-0a8eef5995e9": {
"main": [
[
{
"node": "6d90eb2d-3275-4525-b5d7-f7e761417683",
"type": "main",
"index": 0
}
]
]
},
"Google Calendar": {
"main": [
[
{
"node": "530619d8-52f2-4bb6-9fed-4068e686127a",
"type": "main",
"index": 0
}
]
]
},
"Google Calendar9": {
"main": [
[
{
"node": "de1caa4c-f1fc-44cc-baf4-9522f72f2b8d",
"type": "main",
"index": 0
}
]
]
}
}
}Häufig gestellte Fragen
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 - Persönliche Produktivität, Multimodales KI
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
Zweiseitige ClickUp-Aufgaben- und Google-Kalender-Synchronisation mit mehrfachem Kal-Routing
Bidirektionale ClickUp-Aufgaben- mit Google-Kalender-Synchronisation mit mehrfachem Kalenderrouting
If
Set
Merge
+
If
Set
Merge
69 NodesR4wd0G
Projektmanagement
Automatisierte Bewerbungsjagd von mehreren Jobbörsen
Automatisierung der Jobsuche und -Bewerbung mit 5 Jobplattformen und AI-Lebenslaufgenerator
If
Set
Code
+
If
Set
Code
34 NodesGerald Denor
Persönliche Produktivität
Mein_Wörterbuch_komplex
Literarischer EN-DE-ZW-Wörterbuch mit GPT-4o-mini und Supabase erstellen
If
Set
Code
+
If
Set
Code
22 NodesXiaoyuan Zhang
Persönliche Produktivität
n8n exportieren
Aufzeichnung von Lebensmittelkalorien aus Bildern in Google Sheets mit LINE und OpenAI Vision
If
Set
Code
+
If
Set
Code
17 Nodeskote2
Persönliche Produktivität
AI-Powered Meeting Minutes with GPT-4, Task Assignment & Multichannel Distribution
If
Set
Code
+
If
Set
Code
38 NodesJitesh Dugar
Content-Erstellung
Eleganter Kundeneinladungs-Concierge-Service – Professional Edition (universell, v3)
Automatisches Onboarding-System für Kunden mit Notion, E-Mail und CRM-Integration
If
Set
Notion
+
If
Set
Notion
31 NodesShelly-Ann Davy
Kundenbeziehungsmanagement
Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes16
Kategorie2
Node-Typen7
Autor
Externe Links
Auf n8n.io ansehen →
Diesen Workflow teilen