feat: add folder support for workflows (fixes #70)

This commit is contained in:
Praveen Mudalgeri
2025-08-05 09:40:47 +05:30
parent 307d530f9b
commit c4885eee92
2057 changed files with 985290 additions and 974268 deletions

View File

@@ -0,0 +1,76 @@
{
"nodes": [
{
"name": "Plivo",
"type": "n8n-nodes-base.plivo",
"position": [
1030,
400
],
"parameters": {
"message": "=Hey! The temperature outside is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C."
},
"credentials": {
"plivoApi": "Plivo API Credentials"
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
830,
400
],
"parameters": {
"cityName": "berlin"
},
"credentials": {
"openWeatherMapApi": "owm"
},
"typeVersion": 1
},
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
630,
400
],
"parameters": {
"triggerTimes": {
"item": [
{
"hour": 9
}
]
}
},
"typeVersion": 1
}
],
"connections": {
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Plivo",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,81 @@
{
"id": "114",
"name": "Send daily weather updates via a message in Line",
"nodes": [
{
"name": "Line",
"type": "n8n-nodes-base.line",
"position": [
890,
380
],
"parameters": {
"message": "=Hey! The temperature outside is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C.",
"additionalFields": {}
},
"credentials": {
"lineNotifyOAuth2Api": "line-credentials"
},
"typeVersion": 1
},
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
490,
380
],
"parameters": {
"triggerTimes": {
"item": [
{
"hour": 9
}
]
}
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
690,
380
],
"parameters": {
"cityName": "berlin"
},
"credentials": {
"openWeatherMapApi": "owm"
},
"typeVersion": 1
}
],
"active": false,
"settings": {},
"connections": {
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Line",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,83 @@
{
"id": "115",
"name": "Send daily weather updates via a message using the Gotify node",
"nodes": [
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
490,
340
],
"parameters": {
"triggerTimes": {
"item": [
{
"hour": 9
}
]
}
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
690,
340
],
"parameters": {
"cityName": "berlin"
},
"credentials": {
"openWeatherMapApi": "owm"
},
"typeVersion": 1
},
{
"name": "Gotify",
"type": "n8n-nodes-base.gotify",
"position": [
890,
340
],
"parameters": {
"message": "=Hey! The temperature outside is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C.",
"additionalFields": {
"title": "Today's Weather Update"
}
},
"credentials": {
"gotifyApi": "gotify-credentials"
},
"typeVersion": 1
}
],
"active": false,
"settings": {},
"connections": {
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Gotify",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,83 @@
{
"id": "141",
"name": "Send daily weather updates via a push notification using Spontit",
"nodes": [
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
810,
340
],
"parameters": {
"triggerTimes": {
"item": [
{
"hour": 9
}
]
}
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
1010,
340
],
"parameters": {
"cityName": "berlin"
},
"credentials": {
"openWeatherMapApi": "owm"
},
"typeVersion": 1
},
{
"name": "Spontit",
"type": "n8n-nodes-base.spontit",
"position": [
1210,
340
],
"parameters": {
"content": "=Hey! The temperature outside is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C.",
"additionalFields": {
"pushTitle": "Today's Weather Update"
}
},
"credentials": {
"spontitApi": "spontit"
},
"typeVersion": 1
}
],
"active": false,
"settings": {},
"connections": {
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Spontit",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,88 @@
{
"id": "158",
"name": "Receive the weather information of any city",
"nodes": [
{
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
580,
340
],
"webhookId": "45690b6a-2b01-472d-8839-5e83a74858e5",
"parameters": {
"path": "45690b6a-2b01-472d-8839-5e83a74858e5",
"options": {},
"responseData": "allEntries",
"responseMode": "lastNode"
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
770,
340
],
"parameters": {
"cityName": "={{$node[\"Webhook\"].json[\"query\"][\"city\"]}}"
},
"credentials": {
"openWeatherMapApi": ""
},
"typeVersion": 1
},
{
"name": "Set",
"type": "n8n-nodes-base.set",
"position": [
970,
340
],
"parameters": {
"values": {
"string": [
{
"name": "temp",
"value": "={{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}"
},
{
"name": "description",
"value": "={{$node[\"OpenWeatherMap\"].json[\"weather\"][0][\"description\"]}}"
}
]
},
"options": {},
"keepOnlySet": true
},
"typeVersion": 1
}
],
"active": false,
"settings": {},
"connections": {
"Webhook": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Set",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,81 @@
{
"id": "2",
"name": "Telegram Weather Workflow",
"nodes": [
{
"name": "Telegram Trigger",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
270,
220
],
"parameters": {
"updates": [
"message"
]
},
"credentials": {
"telegramApi": "Telegram"
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
480,
220
],
"parameters": {
"cityName": "berlin,de"
},
"credentials": {
"openWeatherMapApi": "OpenWeatherMap"
},
"typeVersion": 1
},
{
"name": "Telegram",
"type": "n8n-nodes-base.telegram",
"position": [
670,
220
],
"parameters": {
"text": "=Right now, we have {{$node[\"OpenWeatherMap\"].json[\"weather\"][0][\"description\"]}}. The temperature is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C but it really feels like {{$node[\"OpenWeatherMap\"].json[\"main\"][\"feels_like\"]}}°C 🙂",
"chatId": "={{$node[\"Telegram Trigger\"].json[\"message\"][\"chat\"][\"id\"]}}",
"additionalFields": {}
},
"credentials": {
"telegramApi": "Telegram"
},
"typeVersion": 1
}
],
"active": true,
"settings": {},
"connections": {
"OpenWeatherMap": {
"main": [
[
{
"node": "Telegram",
"type": "main",
"index": 0
}
]
]
},
"Telegram Trigger": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,127 @@
{
"id": "69",
"name": "Creating your first workflow",
"nodes": [
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
240,
250
],
"parameters": {
"triggerTimes": {
"item": [
{}
]
}
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
450,
250
],
"parameters": {
"cityName": "berlin,de"
},
"credentials": {
"openWeatherMapApi": "Weather"
},
"typeVersion": 1
},
{
"name": "IF",
"type": "n8n-nodes-base.if",
"position": [
650,
250
],
"parameters": {
"conditions": {
"number": [
{
"value1": "={{$node[\"OpenWeatherMap\"].json[\"main\"][\"feels_like\"]}}",
"value2": 18
}
]
}
},
"typeVersion": 1
},
{
"name": "Twilio",
"type": "n8n-nodes-base.twilio",
"position": [
850,
150
],
"parameters": {
"to": "",
"from": "",
"message": "=Wear a sweater today, it is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"feels_like\"]}}°C outside right now."
},
"credentials": {
"twilioApi": "Twilio"
},
"typeVersion": 1
},
{
"name": "NoOp",
"type": "n8n-nodes-base.noOp",
"position": [
850,
350
],
"parameters": {},
"typeVersion": 1
}
],
"active": true,
"settings": {},
"connections": {
"IF": {
"main": [
[
{
"node": "Twilio",
"type": "main",
"index": 0
}
],
[
{
"node": "NoOp",
"type": "main",
"index": 0
}
]
]
},
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "IF",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,96 @@
{
"nodes": [
{
"name": "Set",
"type": "n8n-nodes-base.set",
"position": [
870,
300
],
"parameters": {
"values": {
"string": [
{
"name": "tempC",
"value": "={{$json[\"main\"][\"temp\"]}}"
},
{
"name": "humidity",
"value": "={{$json[\"main\"][\"humidity\"]}}"
},
{
"name": "windspeed",
"value": "={{$json[\"wind\"][\"speed\"]}}"
},
{
"name": "description",
"value": "={{$json[\"weather\"][0][\"description\"]}}"
},
{
"name": "city",
"value": "={{$json[\"name\"]}}, {{$json[\"sys\"][\"country\"]}}"
}
]
},
"options": {},
"keepOnlySet": true
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
650,
300
],
"parameters": {
"cityName": "={{$json[\"body\"][\"city\"]}}"
},
"credentials": {
"openWeatherMapApi": "open-weather-map"
},
"typeVersion": 1
},
{
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
450,
300
],
"webhookId": "39f1b81f-f538-4b94-8788-29180d5e4016",
"parameters": {
"path": "39f1b81f-f538-4b94-8788-29180d5e4016",
"options": {},
"responseData": "allEntries",
"responseMode": "lastNode"
},
"typeVersion": 1
}
],
"connections": {
"Webhook": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Set",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,148 @@
{
"nodes": [
{
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
450,
300
],
"webhookId": "39f1b81f-f538-4b94-8788-29180d5e4016",
"parameters": {
"path": "39f1b81f-f538-4b94-8788-29180d5e4016",
"options": {
"rawBody": true
},
"httpMethod": "POST",
"authentication": "headerAuth"
},
"credentials": {
"httpHeaderAuth": "Webhook Workflow Credentials"
},
"typeVersion": 1
},
{
"name": "Set",
"type": "n8n-nodes-base.set",
"position": [
650,
300
],
"parameters": {
"values": {
"string": [
{
"name": "Name",
"value": "={{$json[\"body\"][\"name\"]}}"
},
{
"name": "Number",
"value": "={{$json[\"body\"][\"number\"]}}"
},
{
"name": "City",
"value": "={{$json[\"body\"][\"city\"]}}"
}
]
},
"options": {},
"keepOnlySet": true
},
"typeVersion": 1
},
{
"name": "Airtable",
"type": "n8n-nodes-base.airtable",
"position": [
850,
300
],
"parameters": {
"table": "Table 1",
"options": {},
"operation": "append"
},
"credentials": {
"airtableApi": "Airtable Credentials n8n"
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
1050,
300
],
"parameters": {
"cityName": "={{$node[\"Webhook\"].json[\"body\"][\"city\"]}}"
},
"credentials": {
"openWeatherMapApi": "open-weather-map"
},
"typeVersion": 1
},
{
"name": "Twilio",
"type": "n8n-nodes-base.twilio",
"position": [
1250,
300
],
"parameters": {
"to": "={{$node[\"Webhook\"].json[\"body\"][\"number\"]}}",
"message": "=The weather in {{$json[\"name\"]}}, {{$json[\"sys\"][\"country\"]}} is {{$json[\"main\"][\"temp\"]}} ℃ with {{$json[\"weather\"][0][\"description\"]}}. Humidity is {{$json[\"main\"][\"humidity\"]}} and windspeed is {{$json[\"wind\"][\"speed\"]}}."
},
"credentials": {
"twilioApi": "twilio"
},
"typeVersion": 1
}
],
"connections": {
"Set": {
"main": [
[
{
"node": "Airtable",
"type": "main",
"index": 0
}
]
]
},
"Webhook": {
"main": [
[
{
"node": "Set",
"type": "main",
"index": 0
}
]
]
},
"Airtable": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Twilio",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,84 @@
{
"id": "82",
"name": "Send daily weather updates via a push notification using the Pushcut node",
"nodes": [
{
"name": "Pushcut",
"type": "n8n-nodes-base.pushcut",
"position": [
1050,
420
],
"parameters": {
"additionalFields": {
"text": "=Hey! The temperature outside is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C.",
"title": "Today's Weather Update"
},
"notificationName": "n8n"
},
"credentials": {
"pushcutApi": "Pushcut Credentials"
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
850,
420
],
"parameters": {
"cityName": "berlin"
},
"credentials": {
"openWeatherMapApi": "open-weather-map"
},
"typeVersion": 1
},
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
650,
420
],
"parameters": {
"triggerTimes": {
"item": [
{
"hour": 9
}
]
}
},
"typeVersion": 1
}
],
"active": false,
"settings": {},
"connections": {
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Pushcut",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,83 @@
{
"id": "84",
"name": "Send daily weather updates to a phone number using the Vonage node",
"nodes": [
{
"name": "Vonage",
"type": "n8n-nodes-base.vonage",
"position": [
770,
260
],
"parameters": {
"to": "1234",
"from": "Vonage APIs",
"message": "=Hey! The temperature outside is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C.",
"additionalFields": {}
},
"credentials": {
"vonageApi": "vonage"
},
"typeVersion": 1
},
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
370,
260
],
"parameters": {
"triggerTimes": {
"item": [
{
"hour": 9
}
]
}
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
570,
260
],
"parameters": {
"cityName": "berlin"
},
"credentials": {
"openWeatherMapApi": "owm"
},
"typeVersion": 1
}
],
"active": false,
"settings": {},
"connections": {
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Vonage",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,85 @@
{
"id": "91",
"name": "Send daily weather updates via a push notification",
"nodes": [
{
"name": "Pushover",
"type": "n8n-nodes-base.pushover",
"position": [
970,
300
],
"parameters": {
"message": "=Hey! The temperature outside is {{$node[\"OpenWeatherMap\"].json[\"main\"][\"temp\"]}}°C.",
"userKey": "",
"priority": 0,
"additionalFields": {
"title": "Today's Weather"
}
},
"credentials": {
"pushoverApi": "pushover"
},
"typeVersion": 1
},
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
570,
300
],
"parameters": {
"triggerTimes": {
"item": [
{
"hour": 9
}
]
}
},
"typeVersion": 1
},
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
770,
300
],
"parameters": {
"cityName": "berlin"
},
"credentials": {
"openWeatherMapApi": "owm"
},
"typeVersion": 1
}
],
"active": false,
"settings": {},
"connections": {
"Cron": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Pushover",
"type": "main",
"index": 0
}
]
]
}
}
}

View File

@@ -0,0 +1,112 @@
{
"nodes": [
{
"name": "OpenWeatherMap",
"type": "n8n-nodes-base.openWeatherMap",
"position": [
900,
300
],
"parameters": {
"cityName": "={{ $json[\"city\"] }}",
"language": "en"
},
"credentials": {
"openWeatherMapApi": ""
},
"typeVersion": 1
},
{
"name": "Webhook GET",
"type": "n8n-nodes-base.webhook",
"position": [
500,
300
],
"webhookId": "a31f0bbd-a583-470e-9a1e-29a9ce778122",
"parameters": {
"path": "weather",
"options": {
"responsePropertyName": "data"
},
"responseMode": "lastNode"
},
"typeVersion": 1
},
{
"name": "Set City",
"type": "n8n-nodes-base.set",
"position": [
700,
300
],
"parameters": {
"values": {
"string": [
{
"name": "city",
"value": "={{ $json[\"query\"][\"parameter\"] || 'berlin,de' }}"
}
]
},
"options": {}
},
"typeVersion": 1
},
{
"name": "Create Response",
"type": "n8n-nodes-base.set",
"position": [
1100,
300
],
"parameters": {
"values": {
"string": [
{
"name": "data",
"value": "=It has {{$json[\"main\"][\"temp\"]}}\\xE2\\x84\\x83 and feels like {{$json[\"main\"][\"feels_like\"]}}\\xE2\\x84\\x83 in {{$json[\"name\"]}}"
}
]
},
"options": {}
},
"typeVersion": 1
}
],
"connections": {
"Set City": {
"main": [
[
{
"node": "OpenWeatherMap",
"type": "main",
"index": 0
}
]
]
},
"Webhook GET": {
"main": [
[
{
"node": "Set City",
"type": "main",
"index": 0
}
]
]
},
"OpenWeatherMap": {
"main": [
[
{
"node": "Create Response",
"type": "main",
"index": 0
}
]
]
}
}
}