FTP to Google Drive Transfer Template
What This Template Does
This workflow automatically transfers files from an FTP server to Google Drive. It's perfect for:
- Backing up files from remote servers
- Migrating data from FTP to cloud storage
- Automating file synchronization tasks
- Creating scheduled backups of server content
How It Works
The workflow follows these steps:
- Manual Trigger - You start the process by clicking "Execute"
- Lists FTP Directory - Scans the specified FTP folder for all items
- Filters Files Only - Separates actual files from directories (folders)
- Downloads Files - Retrieves each file as binary data from the FTP server
- Uploads to Google Drive - Stores all downloaded files in your specified Google Drive folder
Requirements
Before using this template, you'll need:
- FTP Server Access: Server address, username, and password
- Google Drive Account: With OAuth2 authentication set up in n8n
- n8n Instance: Self-hosted or cloud version
Setup Instructions
Step 1: Configure FTP Credentials
- In n8n, go to Settings → Credentials
- Create a new FTP credential
- Enter your FTP server details:
- Host: Your FTP server address
- Port: Usually 21 for FTP
- Username: Your FTP username
- Password: Your FTP password
- Test the connection and save
Step 2: Set Up Google Drive Authentication
- Create a new Google Drive OAuth2 credential
- Follow n8n's Google Drive setup guide:
- Create a Google Cloud project
- Enable Google Drive API
- Create OAuth2 credentials
- Add your n8n callback URL
- Authorize the connection in n8n
Step 3: Configure the Workflow
-
Update FTP Path:
- Open the "List FTP Directory" node
- Change the
path
parameter from /_instalki
to your desired FTP folder
-
Set Google Drive Folder:
- Open the "Upload to Google Drive" node
- Replace the
folderId
with your target Google Drive folder ID
- To find folder ID: Open the folder in Google Drive and copy the ID from the URL
-
Assign Credentials:
- Ensure both FTP nodes use your FTP credential
- Assign your Google Drive credential to the upload node
How to Use
- Test First: Run the workflow manually with a few test files
- Monitor Execution: Check the execution log for any errors
- Verify Upload: Confirm files appear in your Google Drive folder
- Schedule (Optional): Add a schedule trigger if you want automatic runs
Customization Options
Filter Specific File Types
Add a condition after "Filter Files Only" to process only certain file extensions:
{{ $json.name.endsWith('.pdf') || $json.name.endsWith('.jpg') }}
Add Error Handling
Insert error-handling nodes to manage failed downloads or uploads gracefully.
Organize by Date
Modify the Google Drive upload to create date-based folders automatically.
File Size Limits
Add checks for file size before attempting upload (Google Drive has limits).
Troubleshooting
Common Issues:
- FTP Connection Failed: Check server address, port, and credentials
- Google Drive Upload Error: Verify OAuth2 setup and folder permissions
- Files Not Found: Ensure the FTP path exists and contains files
- Large Files: Consider Google Drive's file size limitations (15GB for free accounts)
Tips:
- Test with small files first
- Check n8n execution logs for detailed error messages
- Ensure your Google Drive has sufficient storage space
- Verify FTP server allows multiple concurrent connections
Security Notes
- Never hardcode credentials in the workflow
- Use n8n's credential system for all authentication
- Consider using SFTP instead of FTP for better security
- Regularly rotate your FTP passwords
- Review Google Drive sharing permissions
Next Steps
Once you have this basic transfer working, you might want to:
- Add email notifications for successful/failed transfers
- Implement file deduplication checks
- Create logs of transferred files
- Set up automatic cleanup of old files
- Add file compression before upload