{ "meta": { "instanceId": "db80165df40cb07c0377167c050b3f9ab0b0fb04f0e8cae0dc53f5a8527103ca", "templateCredsSetupCompleted": true }, "nodes": [ { "id": "fd4629a6-f7c3-4927-a3da-767d8206b486", "name": "set credentials", "type": "n8n-nodes-base.set", "position": [ 0, 300 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "bfb7f25d-f992-4395-9fbe-939a57fc2a3c", "name": "n8n", "type": "string", "value": "=[your n8n instance without a trailling /]" }, { "id": "538e0608-fd19-46ed-ba2c-c1efe03eaf9b", "name": "username", "type": "string", "value": "=your n8n username" }, { "id": "ad1c4785-70d0-40d7-a61c-e97c3e8702e7", "name": "password", "type": "string", "value": "=your n8n password" } ] } }, "typeVersion": 3.4 }, { "id": "877bbd5c-fb57-4fa4-9d0a-113270113f31", "name": "login n8n", "type": "n8n-nodes-base.httpRequest", "position": [ 180, 300 ], "parameters": { "url": "={{ $json.n8n }}/rest/login", "method": "POST", "options": { "response": { "response": { "fullResponse": true } } }, "sendBody": true, "sendHeaders": true, "bodyParameters": { "parameters": [ { "name": "emailOrLdapLoginId", "value": "={{ $json.username }}" }, { "name": "password", "value": "={{ $json.password }}" } ] }, "headerParameters": { "parameters": [ { "name": "accept", "value": "application/json, text/plain, */*" }, { "name": "accept-language", "value": "en-US,en;q=0.9" }, { "name": "user-agent", "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36" } ] } }, "typeVersion": 4.2 }, { "id": "41effdd0-ffad-439c-aa33-39f9cc13f6f9", "name": "get tags", "type": "n8n-nodes-base.httpRequest", "position": [ 800, 300 ], "parameters": { "url": "={{ $('set credentials').first().json.n8n }}/rest/tags", "options": { "redirect": { "redirect": {} }, "response": { "response": { "neverError": true, "fullResponse": true, "responseFormat": "json" } }, "allowUnauthorizedCerts": false }, "sendQuery": true, "sendHeaders": true, "queryParameters": { "parameters": [ { "name": "withUsageCount", "value": "false" } ] }, "headerParameters": { "parameters": [ { "name": "accept", "value": "application/json, text/plain, */*" }, { "name": "accept-language", "value": "en-US,en;q=0.9" }, { "name": "user-agent", "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36" }, { "name": "cookie", "value": "={{ $('login n8n').first().json.headers['set-cookie'][0] }}" } ] } }, "typeVersion": 4.2 }, { "id": "8fd2e71d-8da6-4f28-a377-56ef12c50c33", "name": "my-projects", "type": "n8n-nodes-base.httpRequest", "position": [ 340, 300 ], "parameters": { "url": "={{ $('set credentials').item.json.n8n }}/rest/projects/my-projects", "options": {}, "sendHeaders": true, "headerParameters": { "parameters": [ { "name": "accept", "value": "application/json, text/plain, */*" }, { "name": "accept-language", "value": "en-US,en;q=0.9" }, { "name": "sec-fetch-dest", "value": "empty" }, { "name": "user-agent", "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36" }, { "name": "cookie", "value": "={{ $json.headers['set-cookie'][0] }}" } ] } }, "typeVersion": 4.2 }, { "id": "6bbd2296-fe2b-40d2-8e6c-d04b0987b1c6", "name": "Split Out", "type": "n8n-nodes-base.splitOut", "position": [ 480, 300 ], "parameters": { "options": {}, "fieldToSplitOut": "data" }, "typeVersion": 1 }, { "id": "28a1f311-37fd-45be-aac4-684de800f099", "name": "filter owned projects", "type": "n8n-nodes-base.filter", "position": [ 640, 300 ], "parameters": { "options": { "ignoreCase": true }, "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": false, "typeValidation": "loose" }, "combinator": "and", "conditions": [ { "id": "e66c13b9-4e49-486b-812e-6a38e680207b", "operator": { "type": "string", "operation": "contains" }, "leftValue": "={{ $json.name.extractEmail() }}", "rightValue": "={{ $('set credentials').item.json.username }}" }, { "id": "99059f5b-055b-48ee-93c9-9689063fcfbe", "operator": { "name": "filter.operator.equals", "type": "string", "operation": "equals" }, "leftValue": "={{ $json.role }}", "rightValue": "project:personalOwner" } ] }, "looseTypeValidation": true }, "typeVersion": 2.2 }, { "id": "0362220f-ebb7-4fa0-b204-ec45f9b20cf4", "name": "Get folders", "type": "n8n-nodes-base.httpRequest", "position": [ 1440, 480 ], "parameters": { "url": "={{ $('set credentials').item.json.n8n }}/rest/projects/{{ $('filter owned projects').item.json.id }}/folders?filter={\"excludeFolderIdAndDescendants\":\"\",\"name\":\"{{ $json.name }}\"}&sortBy=updatedAt:desc", "options": {}, "sendQuery": true, "sendHeaders": true, "queryParameters": { "parameters": [ {} ] }, "headerParameters": { "parameters": [ { "name": "accept", "value": "application/json, text/plain, */*" }, { "name": "accept-language", "value": "en-US,en;q=0.9" }, { "name": "user-agent", "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36" }, { "name": "cookie", "value": "={{ $('login n8n').item.json.headers['set-cookie'][0] }}" } ] } }, "typeVersion": 4.2 }, { "id": "b03373b9-ff14-4e8f-8d00-96755390d252", "name": "Split Out2", "type": "n8n-nodes-base.splitOut", "position": [ 1800, 380 ], "parameters": { "options": {}, "fieldToSplitOut": "data" }, "typeVersion": 1 }, { "id": "00ad1ad3-5c55-40e9-8209-2c60fb8b5a0a", "name": "Remove Duplicates", "type": "n8n-nodes-base.removeDuplicates", "position": [ 2140, 380 ], "parameters": { "compare": "selectedFields", "options": {}, "fieldsToCompare": "name" }, "typeVersion": 2 }, { "id": "ac6c24e3-f095-48e2-a007-e5f07b7ff2a0", "name": "Loop Over Items", "type": "n8n-nodes-base.splitInBatches", "position": [ 1240, 320 ], "parameters": { "options": {} }, "typeVersion": 3 }, { "id": "bcb53003-7473-47ec-82c3-2e954ae26e90", "name": "get workflows", "type": "n8n-nodes-base.n8n", "position": [ 3040, 720 ], "parameters": { "filters": { "tags": "={{ $json.tag }}" }, "requestOptions": {} }, "credentials": { "n8nApi": { "id": "qMPcwXYtxelKJQhF", "name": "n8n account✅" } }, "typeVersion": 1 }, { "id": "ddf83b3b-dffb-46b8-ab4b-38d19e1672b7", "name": "Move workflow to folder", "type": "n8n-nodes-base.httpRequest", "position": [ 3240, 720 ], "parameters": { "url": "={{ $('set credentials').item.json.n8n }}/rest/workflows/{{ $json.id }}", "method": "PATCH", "options": {}, "sendBody": true, "sendHeaders": true, "bodyParameters": { "parameters": [ { "name": "parentFolderId", "value": "={{ $('set global').item.json['folder id'] }}" }, { "name": "versionId", "value": "={{ $json.versionId }}" } ] }, "headerParameters": { "parameters": [ { "name": "accept", "value": "application/json, text/plain, */*" }, { "name": "accept-language", "value": "en-US,en;q=0.9" }, { "name": "user-agent", "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36" }, { "name": "cookie", "value": "={{ $('login n8n').item.json.headers['set-cookie'][0] }}" } ] } }, "typeVersion": 4.2 }, { "id": "a611394f-418d-42d5-b26c-095c17043a86", "name": "Normalize names", "type": "n8n-nodes-base.set", "position": [ 1980, 380 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "a0d33a3e-f13b-438d-af1b-a4ff644b9373", "name": "name", "type": "string", "value": "={{ $json.name.toLowerCase().split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ') }}" }, { "id": "abff18b8-ea51-4cc0-8e88-f326534931ec", "name": "tag", "type": "string", "value": "={{ $('Loop Over Items').item.json.name }}" } ] }, "includeOtherFields": true }, "typeVersion": 3.4 }, { "id": "e351c926-cf6e-4f61-9a7a-46338368c66e", "name": "Limit1", "type": "n8n-nodes-base.limit", "position": [ 2420, 380 ], "parameters": {}, "typeVersion": 1 }, { "id": "c5d0c6b1-e478-40da-b9b7-15a60d3439dc", "name": "Create folders", "type": "n8n-nodes-base.httpRequest", "position": [ 2260, 640 ], "parameters": { "url": "={{ $('set credentials').item.json.n8n }}/rest/projects/{{ $('filter owned projects').item.json.id }}/folders", "method": "POST", "options": {}, "sendBody": true, "sendHeaders": true, "bodyParameters": { "parameters": [ { "name": "name", "value": "={{ $json.name }}" } ] }, "headerParameters": { "parameters": [ { "name": "accept", "value": "application/json, text/plain, */*" }, { "name": "accept-language", "value": "en-US,en;q=0.9" }, { "name": "user-agent", "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36" }, { "name": "cookie", "value": "={{ $('login n8n').item.json.headers['set-cookie'][0] }}" } ] } }, "typeVersion": 4.2 }, { "id": "e7ab539f-6795-45eb-b23d-11ee13d3a17e", "name": "set folder name + id", "type": "n8n-nodes-base.set", "position": [ 2800, 640 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "b4743119-ab58-44d8-b881-877de84e82e9", "name": "name", "type": "string", "value": "={{ $json.data.name }}" }, { "id": "42ad0f03-f7c1-424f-9429-0b5402b60cc6", "name": "folder id", "type": "string", "value": "={{ $json.data.id }}" }, { "id": "9ac73fd6-cfd9-47a3-8f28-d0238ebccaf9", "name": "tag", "type": "string", "value": "={{ $('Edit Fields').first().json.tag }}" } ] } }, "typeVersion": 3.4 }, { "id": "8daa7475-4ac3-46b4-9681-b4c80002db06", "name": "set folder name + id1", "type": "n8n-nodes-base.set", "position": [ 2780, 360 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "b4743119-ab58-44d8-b881-877de84e82e9", "name": "name", "type": "string", "value": "={{ $json.name }}" }, { "id": "42ad0f03-f7c1-424f-9429-0b5402b60cc6", "name": "folder id", "type": "string", "value": "={{ $json.id }}" }, { "id": "9ac73fd6-cfd9-47a3-8f28-d0238ebccaf9", "name": "tag", "type": "string", "value": "={{ $('Normalize names').item.json.tag }}" } ] } }, "typeVersion": 3.4 }, { "id": "688107fc-03e4-4e7f-9e51-ad8d30822566", "name": "set global", "type": "n8n-nodes-base.set", "position": [ 3020, 480 ], "parameters": { "options": {}, "includeOtherFields": true }, "typeVersion": 3.4 }, { "id": "39027caf-6097-47cf-86c5-70882c45062d", "name": "Filter", "type": "n8n-nodes-base.filter", "position": [ 2280, 380 ], "parameters": { "options": { "ignoreCase": true }, "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": false, "typeValidation": "loose" }, "combinator": "and", "conditions": [ { "id": "c7bf8dcd-6e97-4908-a4c2-a197d452ffc1", "operator": { "name": "filter.operator.equals", "type": "string", "operation": "equals" }, "leftValue": "={{ $json.name }}", "rightValue": "={{ $('Loop Over Items').first().json.name }}" } ] }, "looseTypeValidation": true }, "typeVersion": 2.2, "alwaysOutputData": true }, { "id": "1fcaf2d9-4aef-435d-968f-b8ecfea8a1ea", "name": "Edit Fields", "type": "n8n-nodes-base.set", "position": [ 1820, 640 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "6dae439c-b0b1-4058-832f-9308fda265fc", "name": "name", "type": "string", "value": "={{ $('Loop Over Items').item.json.name }}" }, { "id": "3c1f1bf1-d6ae-4111-b091-2b05a62c15e9", "name": "tag", "type": "string", "value": "={{ $('Loop Over Items').item.json.name }}" } ] } }, "typeVersion": 3.4 }, { "id": "1dea92e4-9b93-4b7e-8496-020731864219", "name": "On form submission", "type": "n8n-nodes-base.formTrigger", "position": [ -160, 300 ], "webhookId": "d7a3218f-0b12-4966-bf07-edd8acffe5e8", "parameters": { "options": { "buttonLabel": "Submit" }, "formTitle": "Tags to Folders", "formFields": { "values": [ { "fieldType": "html" } ] }, "formDescription": "Convert all tags into folders" }, "typeVersion": 2.2 }, { "id": "926f64a9-e5ef-4f99-8938-83b09c7cc13c", "name": "Code", "type": "n8n-nodes-base.code", "position": [ 360, 580 ], "parameters": { "jsCode": "function capitalizeFirstLetter(val) {\n const str = String(val).trim();\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\n\n// Get raw comma-separated string\nconst raw = $json.name;\n\n// Step 1: Split, clean, and filter\nconst values = raw\n .split(',')\n .map(x => x.trim())\n .filter(x => x.length > 0 && !/^[A-Za-z0-9]{10,}$/.test(x)) // filter junk-like tokens\n .map(x => ({ option: capitalizeFirstLetter(x) }));\n\n// Step 2: Add [create new]\nvalues.push({ option: \"[create new]\" });\n\n// Step 3: Build form config\nconst formOptions = {\n fieldLabel: \"Dropdown Options\",\n fieldType: \"dropdown\",\n requiredField: true,\n fieldOptions: {\n values\n }\n};\n\n// Step 4: Return as stringified JSON\nreturn [\n {\n json: {\n fieldLabel: \"Dropdown Options\",\n fieldType: \"dropdown\",\n requiredField: true,\n fieldOptions: {\n values: values\n }\n }\n }\n];\n" }, "typeVersion": 2 }, { "id": "4c3b4a14-d0ec-449d-b222-cd4a7c05b2bb", "name": "If no folder", "type": "n8n-nodes-base.if", "position": [ 1620, 480 ], "parameters": { "options": {}, "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "e10c2b8e-bdc0-476e-aaed-886e99d4ed37", "operator": { "type": "number", "operation": "gt" }, "leftValue": "={{ $json.count }}", "rightValue": 0 } ] } }, "typeVersion": 2.2 }, { "id": "a29325c5-5543-463c-9dc9-ec572afc0b82", "name": "If folder exists", "type": "n8n-nodes-base.if", "position": [ 2580, 380 ], "parameters": { "options": {}, "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "70916c0d-531b-4cae-9fac-ae40aa3f7453", "operator": { "type": "string", "operation": "exists", "singleValue": true }, "leftValue": "={{ $json.name }}", "rightValue": "" } ] } }, "typeVersion": 2.2 }, { "id": "d65e17fb-8c4b-4412-8d81-b7fa0d540b81", "name": "set name", "type": "n8n-nodes-base.set", "position": [ 2020, 640 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "e7d24d6b-0d97-4e47-b0d4-43682eef686d", "name": "name", "type": "string", "value": "={{ $json.name.toLowerCase().split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ') }}" }, { "id": "52fb820d-5a8a-434b-a99f-db035714d8e3", "name": "tag", "type": "string", "value": "={{ $json.tag }}" } ] } }, "typeVersion": 3.4 }, { "id": "104af4eb-f087-4c4f-ad69-058f7fbe5407", "name": "end import", "type": "n8n-nodes-base.form", "position": [ 1660, 160 ], "webhookId": "3605aadf-17f1-4443-8950-e4d506a61415", "parameters": { "options": {}, "operation": "completion", "completionTitle": "Import complete", "completionMessage": "=Successfully imported {{ $('pass all items').all().length }} workflows to the folders {{ $('select tags to move').item.json['Dropdown Options'] }}" }, "typeVersion": 1 }, { "id": "31441d1e-8675-4a6b-bf3d-5f7230a6c173", "name": "pass all items", "type": "n8n-nodes-base.set", "position": [ 1480, 160 ], "parameters": { "options": {}, "includeOtherFields": true }, "typeVersion": 3.4 }, { "id": "287704cc-7a43-4ffc-873e-b19920764b1e", "name": "select tags to move", "type": "n8n-nodes-base.form", "position": [ 580, 580 ], "webhookId": "72c3db6c-542a-4df9-a10a-d63ce8a2f33b", "parameters": { "options": {}, "defineForm": "json", "jsonOutput": "=[\t{\n\t\t\"fieldLabel\": \"Dropdown Options\",\n\t\t\"fieldType\": \"dropdown\",\n\t\t\"fieldOptions\": {\n\t\t\t\"values\": {{ $json.fieldOptions.values.toJsonString() }}\n\t\t},\n\t\t\"requiredField\": true,\n \"multiselect\": true \n\t}\n\n] " }, "typeVersion": 1 }, { "id": "df8831e6-d587-4220-b602-8c06b3627d11", "name": "extract name from form", "type": "n8n-nodes-base.set", "position": [ 1020, 320 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "f3bbf61c-6f60-4b51-a2b4-05d92d4fe000", "name": "name", "type": "string", "value": "={{ $json['Dropdown Options'] || $json['[\\'Dropdown Options\\']'] }}" } ] } }, "typeVersion": 3.4 }, { "id": "6340d3b0-9059-463c-bd78-2789156f47a8", "name": "Split Out the tags", "type": "n8n-nodes-base.splitOut", "position": [ 780, 580 ], "parameters": { "options": {}, "fieldToSplitOut": "['Dropdown Options']" }, "typeVersion": 1 }, { "id": "5f6dc440-7be1-432f-88c5-f05f5f3939b1", "name": "tags to string", "type": "n8n-nodes-base.set", "position": [ 140, 580 ], "parameters": { "options": { "ignoreConversionErrors": true }, "assignments": { "assignments": [ { "id": "ce3e2cf1-a37e-476c-934b-355a477c91d2", "name": "name", "type": "array", "value": "={{ $json.body.data.map(item => item.name )}} " } ] } }, "typeVersion": 3.4 }, { "id": "8784bdaf-0100-4f91-8631-b4ad4518fa33", "name": "Sticky Note", "type": "n8n-nodes-base.stickyNote", "position": [ -20, 220 ], "parameters": { "width": 960, "height": 260, "content": "## Step 1\nLogin to n8n, and get the tags we have for our personal owned projects" }, "typeVersion": 1 }, { "id": "f27df4ec-c415-4077-8037-0bfe573aa4bf", "name": "Sticky Note1", "type": "n8n-nodes-base.stickyNote", "position": [ -20, 500 ], "parameters": { "width": 960, "height": 280, "content": "## Step 2\nExtract the tags as a json string, and format this into a suitable format for our response form for user to select the tags they want to work with" }, "typeVersion": 1 }, { "id": "8966e043-e358-4ba3-bc12-406c104b7dd1", "name": "Sticky Note2", "type": "n8n-nodes-base.stickyNote", "position": [ 960, 240 ], "parameters": { "color": 2, "width": 420, "height": 260, "content": "## Step 3\nExtract the form details and loop over each tag to process" }, "typeVersion": 1 }, { "id": "8b0bdded-cbeb-471a-ba74-ca7c6aaa34f2", "name": "Sticky Note3", "type": "n8n-nodes-base.stickyNote", "position": [ 1420, 380 ], "parameters": { "color": 3, "width": 340, "height": 240, "content": "## Step 3\nWe search for the folders and filter based on the number of folders found" }, "typeVersion": 1 }, { "id": "be088523-e64a-4251-9c5c-355342c3ba98", "name": "Sticky Note4", "type": "n8n-nodes-base.stickyNote", "position": [ 1780, 300 ], "parameters": { "width": 940, "height": 220, "content": "## Step 4 a) \nIf more than 1 folder is found, we dedupe the tags and limit to one, then use that as the folder" }, "typeVersion": 1 }, { "id": "6b08db71-dca5-4bb8-bb0c-4599c8e53bb1", "name": "Sticky Note5", "type": "n8n-nodes-base.stickyNote", "position": [ 1780, 560 ], "parameters": { "width": 680, "height": 220, "content": "## Step 4 b) \nIf no folder is found, we create a new folder " }, "typeVersion": 1 }, { "id": "f96f9211-e076-472c-a7cd-abf58b4662ff", "name": "Sticky Note6", "type": "n8n-nodes-base.stickyNote", "position": [ 2740, 260 ], "parameters": { "color": 5, "width": 420, "height": 480, "content": "## Step 5\n\nMerge the paths so we use one workflow" }, "typeVersion": 1 }, { "id": "f7f253bd-0b3a-48bb-97f5-1a8cf82b9b7e", "name": "Sticky Note7", "type": "n8n-nodes-base.stickyNote", "position": [ 2960, 660 ], "parameters": { "color": 4, "width": 480, "height": 240, "content": "## Step 6\nGet the workflows and move them to the respective folders" }, "typeVersion": 1 }, { "id": "1d10ecf9-48e4-47d9-9d79-69ac1e375827", "name": "Sticky Note8", "type": "n8n-nodes-base.stickyNote", "position": [ 1440, 80 ], "parameters": { "width": 380, "height": 220, "content": "## Step 7\nRespond with a success message" }, "typeVersion": 1 } ], "pinData": {}, "connections": { "Code": { "main": [ [ { "node": "select tags to move", "type": "main", "index": 0 } ] ] }, "Filter": { "main": [ [ { "node": "Limit1", "type": "main", "index": 0 } ] ] }, "Limit1": { "main": [ [ { "node": "If folder exists", "type": "main", "index": 0 } ] ] }, "get tags": { "main": [ [ { "node": "tags to string", "type": "main", "index": 0 } ] ] }, "set name": { "main": [ [ { "node": "Create folders", "type": "main", "index": 0 } ] ] }, "Split Out": { "main": [ [ { "node": "filter owned projects", "type": "main", "index": 0 } ] ] }, "login n8n": { "main": [ [ { "node": "my-projects", "type": "main", "index": 0 } ] ] }, "Split Out2": { "main": [ [ { "node": "Normalize names", "type": "main", "index": 0 } ] ] }, "set global": { "main": [ [ { "node": "get workflows", "type": "main", "index": 0 } ] ] }, "Edit Fields": { "main": [ [ { "node": "set name", "type": "main", "index": 0 } ] ] }, "Get folders": { "main": [ [ { "node": "If no folder", "type": "main", "index": 0 } ] ] }, "my-projects": { "main": [ [ { "node": "Split Out", "type": "main", "index": 0 } ] ] }, "If no folder": { "main": [ [ { "node": "Split Out2", "type": "main", "index": 0 } ], [ { "node": "Edit Fields", "type": "main", "index": 0 } ] ] }, "get workflows": { "main": [ [ { "node": "Move workflow to folder", "type": "main", "index": 0 } ] ] }, "Create folders": { "main": [ [ { "node": "set folder name + id", "type": "main", "index": 0 } ] ] }, "pass all items": { "main": [ [ { "node": "end import", "type": "main", "index": 0 } ] ] }, "tags to string": { "main": [ [ { "node": "Code", "type": "main", "index": 0 } ] ] }, "Loop Over Items": { "main": [ [ { "node": "pass all items", "type": "main", "index": 0 } ], [ { "node": "Get folders", "type": "main", "index": 0 } ] ] }, "Normalize names": { "main": [ [ { "node": "Remove Duplicates", "type": "main", "index": 0 } ] ] }, "set credentials": { "main": [ [ { "node": "login n8n", "type": "main", "index": 0 } ] ] }, "If folder exists": { "main": [ [ { "node": "set folder name + id1", "type": "main", "index": 0 } ], [ { "node": "set name", "type": "main", "index": 0 } ] ] }, "Remove Duplicates": { "main": [ [ { "node": "Filter", "type": "main", "index": 0 } ] ] }, "On form submission": { "main": [ [ { "node": "set credentials", "type": "main", "index": 0 } ] ] }, "Split Out the tags": { "main": [ [ { "node": "extract name from form", "type": "main", "index": 0 } ] ] }, "select tags to move": { "main": [ [ { "node": "Split Out the tags", "type": "main", "index": 0 } ] ] }, "set folder name + id": { "main": [ [ { "node": "set global", "type": "main", "index": 0 } ] ] }, "filter owned projects": { "main": [ [ { "node": "get tags", "type": "main", "index": 0 } ] ] }, "set folder name + id1": { "main": [ [ { "node": "set global", "type": "main", "index": 0 } ] ] }, "extract name from form": { "main": [ [ { "node": "Loop Over Items", "type": "main", "index": 0 } ] ] }, "Move workflow to folder": { "main": [ [ { "node": "Loop Over Items", "type": "main", "index": 0 } ] ] } } }