N
n8n Store
Workflow Market
Template Visual Workflow Architecture v1.0

Template Visual Workflow Architecture v1.0

by kaihuxmann0 views

説明

Categories

⚙️ Automation

Nodes Used

n8n-nodes-base.setn8n-nodes-base.setn8n-nodes-base.setn8n-nodes-base.setn8n-nodes-base.coden8n-nodes-base.coden8n-nodes-base.noOpn8n-nodes-base.mergen8n-nodes-base.switchn8n-nodes-base.webhook
Price無料
Views0
最終更新11/28/2025
workflow.json
{
  "id": "UW1Si82XFg1xpKU6",
  "meta": {
    "instanceId": "b647f0ebd8b6d139faf3e6bcf7eb4e75bf2254b55299893f22d4aabb50ef1e9e",
    "templateCredsSetupCompleted": true
  },
  "name": "Template Visual Workflow Architecture v1.0",
  "tags": [
    {
      "id": "bPkcrK17uG3HMk6T",
      "name": "🏷️ Template",
      "createdAt": "2025-09-03T06:52:38.087Z",
      "updatedAt": "2025-09-03T06:52:38.087Z"
    },
    {
      "id": "v4mArge40MnxFxw5",
      "name": "🟢 operational",
      "createdAt": "2025-08-10T13:32:11.849Z",
      "updatedAt": "2025-08-19T17:01:08.590Z"
    }
  ],
  "nodes": [
    {
      "id": "5f7c322b-52a4-4db7-b6b2-48ea3677ce61",
      "name": "Manual",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        144,
        -576
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "79c67797-8a0d-49d7-a8e1-ee173a31c9d8",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        80,
        -768
      ],
      "parameters": {
        "color": 7,
        "width": 608,
        "height": 944,
        "content": "## Triggers\n- Normalized Inputs related to Sub-Workflow Trigger\n- All triggers converge into a **normliized node** that can then be universally referenced downstream"
      },
      "typeVersion": 1
    },
    {
      "id": "f1dbe4af-c285-4913-8cf7-421eb2d46a84",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        720,
        -768
      ],
      "parameters": {
        "color": 7,
        "width": 816,
        "height": 944,
        "content": "## Collect or gather all data inputs needed\n- in simple workflows this might be very short or missing\n- this is the place to set any defaults for the workflow"
      },
      "typeVersion": 1
    },
    {
      "id": "0113592d-14fc-4df8-836e-064e95cf339e",
      "name": "Input | Combined",
      "type": "n8n-nodes-base.merge",
      "position": [
        1360,
        -336
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3.2
    },
    {
      "id": "424e5d2c-460f-4f87-aa1f-9412c1fec23f",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1808,
        -768
      ],
      "parameters": {
        "color": 7,
        "width": 656,
        "height": 288,
        "content": "## Business Logic A - working setup\n- with **working** setup"
      },
      "typeVersion": 1
    },
    {
      "id": "b282594f-e3a5-478d-94d6-942c4051cdca",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        32,
        -1264
      ],
      "parameters": {
        "color": 4,
        "width": 2496,
        "height": 1488,
        "content": "# Key Objective of overall Workflow as a #-level Heading\n\n## Often useful:\n- Link or reference to the system triggering the workdlow"
      },
      "typeVersion": 1
    },
    {
      "id": "d066cccc-3930-48ef-8c77-9d079ced82f2",
      "name": "Search records",
      "type": "n8n-nodes-base.airtable",
      "position": [
        1104,
        -432
      ],
      "parameters": {
        "base": {
          "__rl": true,
          "mode": "list",
          "value": "app4JwaENq0JKC1sm",
          "cachedResultUrl": "https://airtable.com/app4JwaENq0JKC1sm",
          "cachedResultName": "Testing"
        },
        "table": {
          "__rl": true,
          "mode": "list",
          "value": "tblzRTsHDIBzqUnxY",
          "cachedResultUrl": "https://airtable.com/app4JwaENq0JKC1sm/tblzRTsHDIBzqUnxY",
          "cachedResultName": "User Date Dummy"
        },
        "options": {},
        "operation": "search"
      },
      "credentials": {
        "airtableTokenApi": {
          "id": "IXLSqnoQYJKrtElS",
          "name": "Airtable | Testing Base"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "5e71007c-b8aa-4d48-984a-ae72c918ed12",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        80,
        -1040
      ],
      "parameters": {
        "color": 7,
        "width": 608,
        "height": 256,
        "content": "## Colorcoding for Nodes\n\n🟩 **Green**     – Operational, runs in stable mode ✅  \n🟥 **Red**       – Error / not operational ❌  \n🟧 **Orange**    – Partly Operational ⚠️ (e.g warning or improvement needs)  \n🟨 **Yellow**    – Work in Progress 🛠️  \n🟦 **Blue**      – User Input required 🙋 (at run time)\n⬛ **dark grey** – On Hold / Deprecated\n⬜ **White**     – Neutral / inherits meaning of containing node\n"
      },
      "typeVersion": 1
    },
    {
      "id": "7bb25024-9279-4175-a498-2987bf9daba2",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1184,
        -1264
      ],
      "parameters": {
        "color": 2,
        "width": 1152,
        "height": 608,
        "content": "# START HERE\n\n# Best Practices for visual structuring & visual hierarchy of workflow\nThis template is meant to showcase typical aspects and a clean, maintainable and visual structure. \nIt does not provide and functionality, all nodes are for demonstration only.\n\n ➡️ Use this workflow as a template to start new workflows from.\n\n## Design Patterns:\n- Notes are **color coded** with a meaning as explained on right side in **\"Colorcoding for Nodes\"**\n(keeping the color coding info in the workflow often helps to keep it visible during development phase)\n- Each workflow contains typical phases for clean and maintainable code, they are **boxed within background nodes**\n\n## How to use this template\n- familirize yourself with the color coding and design patterns\n- go through workflow node by node, reasoning is mentioned within nodes where applicable\n"
      },
      "typeVersion": 1
    },
    {
      "id": "91ebfd8e-5ca5-4ba4-9010-d3dd48e62d35",
      "name": "Normalize Manual Trigger",
      "type": "n8n-nodes-base.set",
      "position": [
        368,
        -576
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": []
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "85d5a7ee-066b-4df2-b219-54cfd680ec11",
      "name": "Trigger | Normalized",
      "type": "n8n-nodes-base.set",
      "notes": "Fields are normalized with the Sub-workflow trigger as defining the \"normalization\" standard ",
      "position": [
        656,
        -336
      ],
      "parameters": {
        "options": {
          "stripBinary": true
        },
        "assignments": {
          "assignments": []
        },
        "includeOtherFields": true
      },
      "notesInFlow": true,
      "typeVersion": 3.4
    },
    {
      "id": "a36066b3-3122-48d1-8e67-b0925586dd74",
      "name": "Triggered from other Workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "notes": "Make a note for triggering workflow(s) somewhere for easy debugging later.",
      "position": [
        144,
        -336
      ],
      "parameters": {
        "workflowInputs": {
          "values": [
            {
              "name": "someInput"
            },
            {
              "name": "someOtherInput"
            }
          ]
        }
      },
      "notesInFlow": true,
      "typeVersion": 1.1
    },
    {
      "id": "d4ee827c-340f-4b67-a1e2-50713b37e09e",
      "name": "General Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        144,
        -64
      ],
      "webhookId": "f960a6c6-8916-44bd-aa90-b247d331afb8",
      "parameters": {
        "path": "f960a6c6-8916-44bd-aa90-b247d331afb8",
        "options": {}
      },
      "typeVersion": 2.1
    },
    {
      "id": "e4d2a068-d6fd-4041-a911-b47e87c9c0ec",
      "name": "Normalize Webhook Trigger",
      "type": "n8n-nodes-base.set",
      "position": [
        368,
        -64
      ],
      "parameters": {
        "options": {},
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "19eba4f8-0022-4bc8-a19f-3985be32061f",
      "name": "Get Data From Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1104,
        -240
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.googleSheetId }}"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.googleDocId }}"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "2W4H38P2FaCFoGKw",
          "name": "n8n Google Sheets - OAuth2.0 v01"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "15d9bb5f-cdae-4884-a255-e6a84006359c",
      "name": "Set Defaults",
      "type": "n8n-nodes-base.set",
      "position": [
        880,
        -336
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "20fbf030-1ccd-4be7-91b0-2fb6b6cc3e59",
              "name": "googleDocId",
              "type": "string",
              "value": "docABC"
            },
            {
              "id": "be994eaa-423c-4a85-a4b0-4e994a797714",
              "name": "googleSheetId",
              "type": "string",
              "value": "sheetID123"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "040cf859-5b90-47ea-bd02-1e834696164a",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1808,
        -432
      ],
      "parameters": {
        "width": 656,
        "height": 272,
        "content": "## Business Logic B - currently in development\n- with **working** setup"
      },
      "typeVersion": 1
    },
    {
      "id": "1c880ade-1be1-404b-a409-3ca1d69b09c0",
      "name": "Business Logic Single or Multi step1",
      "type": "n8n-nodes-base.code",
      "position": [
        1872,
        -336
      ],
      "parameters": {
        "jsCode": "return [\n  {\n    json: {\n      result: \"some use case specific output\"\n    }\n  }\n];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "24280bf1-3e6a-4e85-9581-040bc27965e5",
      "name": "Business Logic Single or Multi step",
      "type": "n8n-nodes-base.code",
      "position": [
        1872,
        -656
      ],
      "parameters": {
        "jsCode": "return [\n  {\n    json: {\n      result: \"some use case specific output\"\n    }\n  }\n];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "386d9501-e4c9-40cf-b1b5-6b3ed86dccdc",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1808,
        -112
      ],
      "parameters": {
        "color": 6,
        "width": 656,
        "height": 288,
        "content": "## Business Logic C - Old Version, not used any more\n- to keep fors ome time \n- should finally be managed in versions or be deleted"
      },
      "typeVersion": 1
    },
    {
      "id": "1ddba747-5567-4e65-a6d2-ddc12828e683",
      "name": "Some Old Version",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1872,
        32
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "049b807e-9b07-4ea1-9e26-4f6e4371bfd6",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        1584,
        -352
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "Production",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": false,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "effed10c-279f-48b2-a981-1a1a77a9d4a2",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $execution.mode }}",
                    "rightValue": "production"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "Development",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": false,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "89d5f781-9e89-4682-9f30-d261b8511bc4",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $execution.mode }}",
                    "rightValue": "test"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {
          "ignoreCase": true,
          "fallbackOutput": "extra"
        }
      },
      "typeVersion": 3.3
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "callerPolicy": "workflowsFromSameOwner",
    "errorWorkflow": "YEvXt4fjXiqx3zZt",
    "executionOrder": "v1",
    "executionTimeout": 180,
    "timeSavedPerExecution": 1
  },
  "versionId": "ae1e6fac-9bf6-47ab-bf36-9457ed4833af",
  "connections": {
    "Manual": {
      "main": [
        [
          {
            "node": "Normalize Manual Trigger",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Business Logic Single or Multi step",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Business Logic Single or Multi step1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Some Old Version",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Defaults": {
      "main": [
        [
          {
            "node": "Search records",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get Data From Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search records": {
      "main": [
        [
          {
            "node": "Input | Combined",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "General Webhook": {
      "main": [
        [
          {
            "node": "Normalize Webhook Trigger",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Input | Combined": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trigger | Normalized": {
      "main": [
        [
          {
            "node": "Set Defaults",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize Manual Trigger": {
      "main": [
        [
          {
            "node": "Trigger | Normalized",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize Webhook Trigger": {
      "main": [
        [
          {
            "node": "Trigger | Normalized",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Data From Google Sheets": {
      "main": [
        [
          {
            "node": "Input | Combined",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Triggered from other Workflow": {
      "main": [
        [
          {
            "node": "Trigger | Normalized",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

相关工作流