AutomationFlowsWeb Scraping › Template-based Google Drive Folder Generation with Forms and Apps Script

Template-based Google Drive Folder Generation with Forms and Apps Script

ByAntonio Gasso @akav on n8n.io

Stop manually creating folder structures for every new client or project. This workflow provides a simple form where users enter a name, and automatically duplicates your template folder structure in Google Drive—replacing all placeholders with the submitted name. Displays a…

Event trigger★★★☆☆ complexity9 nodesForm TriggerGoogle DriveHTTP Request
Web Scraping Trigger: Event Nodes: 9 Complexity: ★★★☆☆ Added:

This workflow corresponds to n8n.io template #11663 — we link there as the canonical source.

This workflow follows the Form Trigger → Google Drive 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 →

Download .json
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "9ec58c32-3ce4-4017-9d50-6477489dbf81",
      "name": "Main Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -544,
        -96
      ],
      "parameters": {
        "width": 400,
        "height": 596,
        "content": "## Auto-Generate Folder Structure from Template\n\nAutomatically create organized folder structures in Google Drive by duplicating a template folder. Perfect for agencies, freelancers, and teams who need consistent folder organization for clients or projects.\n\n### How it works\n1. User submits a name via the form\n2. A new folder is created in Google Drive\n3. Google Apps Script duplicates your template structure\n4. All `{{NAME}}` placeholders are replaced with the submitted name\n\n### Setup steps\n- [ ] Configure Google Drive credentials\n- [ ] Create your template folder with `{{NAME}}` placeholders\n- [ ] Deploy the Apps Script (see red sticky for code)\n- [ ] Update the placeholder IDs in the workflow:\n  - `DESTINATION_PARENT_FOLDER_ID`\n  - `YOUR_APPS_SCRIPT_URL`\n  - `YOUR_TEMPLATE_FOLDER_ID`\n\n### Customization\n- Change form fields to collect more data\n- Add notifications (Slack, Email) after folder creation\n- Connect to your CRM to update records with folder links"
      },
      "typeVersion": 1
    },
    {
      "id": "5c79742c-7613-4413-aa58-40b4eac76056",
      "name": "Warning - Apps Script",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -96,
        -96
      ],
      "parameters": {
        "color": 2,
        "width": 952,
        "height": 348,
        "content": "## \u26a0\ufe0f Apps Script Setup (Required)\n\n**1. Create script:** Go to [script.google.com](https://script.google.com) \u2192 New project\n\n**2. Paste the code** from the template description\n\n**3. Deploy:**\n- Deploy \u2192 New deployment\n- Type: `Web app`\n- Execute as: `Me`\n- Access: `Anyone`\n\n**4. Copy the URL** and paste it in the \"Duplicate Template\" node"
      },
      "typeVersion": 1
    },
    {
      "id": "439a1d53-851e-4702-a8b9-b4b5b6539024",
      "name": "Section 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -96,
        272
      ],
      "parameters": {
        "color": 6,
        "width": 196,
        "height": 232,
        "content": "## 1. Form Input"
      },
      "typeVersion": 1
    },
    {
      "id": "f9e3e9fa-8e60-4bc6-b2f7-5a1330ce59f4",
      "name": "Section 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        128,
        272
      ],
      "parameters": {
        "width": 296,
        "height": 232,
        "content": "## 2. Create Folder in Drive"
      },
      "typeVersion": 1
    },
    {
      "id": "c54a3787-6f91-409b-a149-87fd17600f01",
      "name": "Section 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        448,
        272
      ],
      "parameters": {
        "color": 5,
        "width": 412,
        "height": 232,
        "content": "## 3. Duplicate Template Structure"
      },
      "typeVersion": 1
    },
    {
      "id": "32fe4262-677c-4d1a-903e-d58703faabb7",
      "name": "Folder Request Form",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -48,
        336
      ],
      "parameters": {
        "options": {},
        "formTitle": "Create New Folder",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Name",
              "placeholder": "e.g. Acme Corporation",
              "requiredField": true
            }
          ]
        },
        "formDescription": "Enter a name to generate the folder structure"
      },
      "typeVersion": 2.2
    },
    {
      "id": "61c2dd9c-4b32-4a55-8f06-217e83233a24",
      "name": "Create Main Folder",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        224,
        336
      ],
      "parameters": {
        "name": "={{ $json.Name }}",
        "driveId": {
          "__rl": true,
          "mode": "name",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "DESTINATION_PARENT_FOLDER_ID"
        },
        "resource": "folder"
      },
      "typeVersion": 3
    },
    {
      "id": "ee12b54e-4d55-4485-921e-6f1617b32945",
      "name": "Wait for Drive",
      "type": "n8n-nodes-base.wait",
      "position": [
        528,
        336
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "35bf770f-25c6-46ab-9e02-e5e814dcf565",
      "name": "Duplicate Template",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        704,
        336
      ],
      "parameters": {
        "url": "YOUR_APPS_SCRIPT_URL",
        "method": "POST",
        "options": {
          "timeout": 300000
        },
        "sendQuery": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "templateFolderId",
              "value": "YOUR_TEMPLATE_FOLDER_ID"
            },
            {
              "name": "name",
              "value": "={{ $('Folder Request Form').item.json.Name }}"
            },
            {
              "name": "destinationFolderId",
              "value": "={{ $('Create Main Folder').item.json.id }}"
            }
          ]
        }
      },
      "typeVersion": 4.2
    }
  ],
  "connections": {
    "Wait for Drive": {
      "main": [
        [
          {
            "node": "Duplicate Template",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Main Folder": {
      "main": [
        [
          {
            "node": "Wait for Drive",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Folder Request Form": {
      "main": [
        [
          {
            "node": "Create Main Folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Stop manually creating folder structures for every new client or project. This workflow provides a simple form where users enter a name, and automatically duplicates your template folder structure in Google Drive—replacing all placeholders with the submitted name. Displays a…

Source: https://n8n.io/workflows/11663/ — original creator credit. Request a take-down →

More Web Scraping workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Web Scraping

The Sora 2 API allows seamless generation of CGI ads, turning text prompts into stunning videos. This workflow automates the entire process from video generation to upload, notification, and file shar

Form Trigger, HTTP Request, Email Send +1
Web Scraping

Formtrigger Workflow. Uses formTrigger, googleDrive, httpRequest, stopAndError. Event-driven trigger; 28 nodes.

Form Trigger, Google Drive, HTTP Request +1
Web Scraping

Formtrigger Workflow. Uses formTrigger, googleDrive, httpRequest, stopAndError. Event-driven trigger; 28 nodes.

Form Trigger, Google Drive, HTTP Request +1
Web Scraping

Create CGI ads effortlessly by integrating the Google Veo3 API for video generation and uploading to Google Drive with seamless email notifications. On form submission: Triggers the workflow when a fo

Form Trigger, HTTP Request, Email Send +1
Web Scraping

This workflow automates the process of generating videos using the Veo 3 Fast API, uploading the video to Google Drive, and notifying the user via email. All tasks are executed seamlessly, ensuring a

Form Trigger, HTTP Request, Email Send +1