See llms.txt for all machine-readable content.

Google Drive and Monday.com integration

Save yourself the work of writing custom integrations for Google Drive and Monday.com and use n8n instead. Build adaptable and scalable Data & Storage, workflows that work with your technology stack. All within a building experience you will love.

How to connect Google Drive and Monday.com

Create a new workflow and add the first step

In n8n, click the "Add workflow" button in the Workflows tab to create a new workflow. Add the starting point – a trigger on when your workflow should run: an app event, a schedule, a webhook call, another workflow, an AI chat, or a manual trigger. Sometimes, the HTTP Request node might already serve as your starting point.

Google Drive and Monday.com integration: Create a new workflow and add the first step

Complete client onboarding: Form to Monday.com, Google Drive & Email

Overview Streamline your entire client onboarding process with a single workflow. When a new client submits the intake form, this automation creates a Monday.com item, generates a complete Google Drive folder structure from your template, updates the Monday item with the folder link, and sends a personalized welcome email—all automatically. What This Workflow Does Displays a professional intake form (client name, email, project type) Creates a new item in your Monday.com board with all details Generates a Google Drive folder for the client Duplicates your template folder structure using Apps Script Updates the Monday.com item with the Google Drive folder link Sends a welcome email to the client with folder access Key Features End-to-end automation — From form submission to welcome email CRM integration — All client data captured in Monday.com Organized file storage — Consistent folder structure for every client Professional onboarding — Clients receive immediate welcome email with resources Fully customizable — Add more form fields, notifications, or integrations Prerequisites Monday.com account with API credentials Google Drive account with OAuth2 credentials Gmail account with OAuth2 credentials Google Apps Script deployment (code below) Template folder in Google Drive with {{NAME}} placeholders Setup Step 1: Get your Monday.com IDs Open your Monday.com board Board ID: Check the URL → monday.com/boards/BOARD_ID Group ID: Use Monday API Explorer or browser dev tools Column IDs: Found in column settings or via API Step 2: Create your Drive template folder 📁 {{NAME}} - Client Files ├── 📁 01. Contracts & Agreements ├── 📁 02. {{NAME}} - Assets ├── 📁 03. Deliverables ├── 📁 04. Communications └── 📄 {{NAME}} - Project Brief.gdoc Step 3: Deploy Apps Script Go to script.google.com Create new project → Paste code below Deploy → New deployment → Web app Execute as: Me | Access: Anyone Copy the deployment URL Step 4: Configure the workflow Replace these placeholders: YOUR_BOARD_ID — Monday.com board ID YOUR_GROUP_ID — Monday.com group ID DESTINATION_PARENT_FOLDER_ID — Drive folder for new client folders YOUR_APPS_SCRIPT_URL — Apps Script deployment URL YOUR_TEMPLATE_FOLDER_ID — Template folder to duplicate Step 5: Connect credentials Monday.com API credentials Google Drive OAuth2 Gmail OAuth2 Apps Script Code function doPost(e) { try { var params = e.parameter; var templateFolderId = params.templateFolderId; var name = params.name; var destinationFolderId = params.destinationFolderId; if (!templateFolderId || !name) { return jsonResponse({ success: false, error: 'Missing required parameters: templateFolderId and name are required' }); } var templateFolder = DriveApp.getFolderById(templateFolderId); if (destinationFolderId) { var destinationFolder = DriveApp.getFolderById(destinationFolderId); copyContentsRecursively(templateFolder, destinationFolder, name); return jsonResponse({ success: true, id: destinationFolder.getId(), url: destinationFolder.getUrl(), name: destinationFolder.getName(), mode: 'copied_to_existing', timestamp: new Date().toISOString() }); } else { var parentFolder = templateFolder.getParents().next(); var newFolderName = replacePlaceholders(templateFolder.getName(), name); var newFolder = parentFolder.createFolder(newFolderName); copyContentsRecursively(templateFolder, newFolder, name); return jsonResponse({ success: true, id: newFolder.getId(), url: newFolder.getUrl(), name: newFolder.getName(), mode: 'created_new', timestamp: new Date().toISOString() }); } } catch (error) { return jsonResponse({ success: false, error: error.toString() }); } } function replacePlaceholders(text, name) { var result = text; result = result.replace(/\{\{NAME\}\}/g, name); result = result.replace(/\{\{name\}\}/g, name.toLowerCase()); result = result.replace(/\{\{Name\}\}/g, name); return result; } function copyContentsRecursively(sourceFolder, destinationFolder, name) { var files = sourceFolder.getFiles(); while (files.hasNext()) { try { var file = files.next(); var newFileName = replacePlaceholders(file.getName(), name); file.makeCopy(newFileName, destinationFolder); Utilities.sleep(150); } catch (error) { Logger.log('Error copying file: ' + error.toString()); } } var subfolders = sourceFolder.getFolders(); while (subfolders.hasNext()) { try { var subfolder = subfolders.next(); var newSubfolderName = replacePlaceholders(subfolder.getName(), name); var newSubfolder = destinationFolder.createFolder(newSubfolderName); Utilities.sleep(200); copyContentsRecursively(subfolder, newSubfolder, name); } catch (error) { Logger.log('Error copying subfolder: ' + error.toString()); } } } function jsonResponse(data) { return ContentService .createTextOutput(JSON.stringify(data)) .setMimeType(ContentService.MimeType.JSON); } Use Cases Agencies — Automate client onboarding with CRM tracking Freelancers — Professional intake process for new projects Consulting firms — Standardized client setup workflow Creative studios — Organize assets and deliverables from day one Service businesses — Streamline customer setup and communication Customization Ideas Add more form fields: phone, company size, budget, deadline Add Slack notification to alert your team Create tasks in Monday.com sub-items Add to Google Calendar for kickoff meeting Integrate with invoicing (Stripe, QuickBooks) Notes Apps Script may take 30-60 seconds for large folder structures Monday.com column IDs must match your board's actual columns The welcome email can be customized with your branding Test with a single client before full deployment

Popular ways to use the Google Drive and Monday.com integration

Build your own Google Drive and Monday.com integration

Create custom Google Drive and Monday.com workflows by choosing triggers and actions. Nodes come with global operations and settings, as well as app-specific parameters that can be configured. You can also use the HTTP Request node to query data from any app or service with a REST API.

Google Drive supported actions

Monday.com supported actions

Google Drive and Monday.com integration details

Google Drive

Google Drive

Google Drive is a storage and synchronization service offered by Google. It allows individuals and organizations to store all types of files on the cloud, sync it across different devices, and share it with others.

Monday.com

Monday.com

monday.com is a work operating system that enables organizations to manage tasks, projects, and team work.

FAQ about Google Drive integrations

Need help setting up your Google Drive and Monday.com integration?

Discover our latest community's recommendations and join the discussions about Google Drive and Monday.com integration.

  • Karim Lameer

    Download a file from google drive and use in a http request

    Karim Lameer

    Describe the problem/error/question I am trying to download a file from Google Drive and upload it into a http request. I have created credentials and the node works well. The problem is that I cannot access the actual f…

    Open topic
  • Hameez Yaser

    Google drive set up

    Hameez Yaser

    Hi does anyone know How I can fix this? I hav e done everything in the set up docs yet it still wont work. Thanks.

    Open topic
  • hubschrauber

    Google Drive Search File/Folder Returns Folder Id, not Contents

    hubschrauber

    Goal Trying to use the Google Drive node to get the list of files / sub-folders in a specified folder. Workflow Setup Based on this I set up the Google Drive node with: Resource: File/Folder , Operation: Search , Sear…

    Open topic
  • Jon

    Connecting to Google on localhost

    Jon

    I am stuck on creating a Google Drive connection to my google account. I’ve been following guide in this Youtube video: https://www.youtube.com/watch?v=gZ6N2H3_vys&ab_channel=n8n I made sure the Google Drive API was en…

    Open topic
  • roundedhexagon

    Google drive node - Search folder: exact search results only

    roundedhexagon

    Hi guys! Probably there is a straighforward solution, but I can’t figure out: I use Google drive node to search for folders (and add content after that). The problem is if I search for “Bringa 23” and it shows “Bringa 23…

    Open topic

Looking to integrate Slack and VirusTotal in your company?

Trusted by teams building smarter workflows.

Why

Why use n8n to integrate Google Drive with Monday.com

Handle branching, merging and iteration easily. Pause your workflow to wait for external events.

Re-run single steps to test changes in no time. And pin your data to avoid generating trigger events every time you execute.

Your data is displayed alongside your settings, making edge cases easy to track down.

Use 1000+ workflow templates available from our core team and our community.

Copy and paste, easily import and export workflows.

Simple enough to 
understand + sophisticated 
enough to ship