Ready-made recipe · docs
Gmail → Google Drive
Attachments from new Gmail emails are saved to Google Drive, so files stop getting lost in your inbox.
Steps
- When when a new email arrives in gmail — Gmail node only reads
- Then save the attachment to google drive — Google Drive node can be undone
Fields to fill (3)
The file has every node wired up. These are the blanks only you can fill (your form, your sheet, your words).
| Node | What to do |
|---|---|
| Google Drive | note: takes the first attachment (attachment_0); for every attachment, add a Split Out step before this one |
| Google Drive | fill driveId (The drive where to upload the file) |
| Google Drive | fill folderId (The folder where to upload the file) |
Accounts to connect (2)
In n8n, pick or add a credential on each node — one of the types below.
- Gmail:
googleApiorgmailOAuth2 - Google Drive:
googleApiorgoogleDriveOAuth2Api
- Run it on Apify — type your own sentence, get the workflow back in seconds. Open Bridgecore on Apify (pay per use, $0.02–$0.05; nothing charged on errors).
- Ask your AI — add the MCP server
https://mcp.usebridgecore.com/to Claude, Cursor or any MCP client, then just say what should happen. Tools:do,find_recipe,plan_automation,make_n8n_workflow. Free to plan. - Ask me first — add “and ask me first” to any step (“… and post it on X and ask me first”) and the workflow sends you an Approve / Decline message (Slack, Telegram or Gmail) before that step runs. Nothing is sent, posted, deleted or paid until you tap Approve; no answer in a day = declined.
Get the n8n file
Download gmail-attachments-to-google-drive.json
- Open a new, empty workflow in n8n.
- Open the workflow menu (⋯) and choose Import from File — or copy the JSON below and paste it onto the canvas (Ctrl/Cmd+V).
- Connect the accounts, fill the fields above, run one test, then turn the workflow on.
Or copy the JSON
{
"name": "Attachments from new Gmail emails are saved to Google Drive",
"nodes": [
{
"id": "n1",
"name": "Gmail Trigger",
"type": "n8n-nodes-base.gmailTrigger",
"typeVersion": 1.4,
"parameters": {
"event": "messageReceived",
"simple": false,
"options": {
"downloadAttachments": true
},
"filters": {
"q": "has:attachment"
}
},
"position": [
240,
300
],
"notes": "step: when a new email arrives in gmail · reversibility: read-only"
},
{
"id": "n2",
"name": "Google Drive",
"type": "n8n-nodes-base.googleDrive",
"typeVersion": 3,
"parameters": {
"resource": "file",
"operation": "upload",
"inputDataFieldName": "attachment_0",
"driveId": {
"__rl": true,
"mode": "list",
"value": ""
},
"folderId": {
"__rl": true,
"mode": "list",
"value": ""
}
},
"position": [
460,
300
],
"notes": "step: save the attachment to google drive · reversibility: reversible"
}
],
"connections": {
"Gmail Trigger": {
"main": [
[
{
"node": "Google Drive",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {
"executionOrder": "v1"
},
"active": false
}