5.1 KiB
5.1 KiB
kDrive n8n Node - Quick Start Guide
🎯 What This Node Does
This n8n node allows you to interact with Infomaniak's kDrive cloud storage service. You can perform common file management operations directly from your n8n workflows.
📦 What's Included
Core Files Created:
n8n-nodes-kdrive/
├── package.json # Node configuration
├── src/
│ ├── index.ts # Main export
│ └── nodes/KDrive/
│ ├── KDrive.node.ts # Main node (14,496 lines)
│ ├── GenericFunctions.ts # API helpers (2,254 lines)
│ ├── KDriveCredentials.api.ts # Auth setup
│ └── kdrive.svg # Custom icon
├── README.md # User documentation
├── IMPLEMENTATION_SUMMARY.md # Technical details
└── QUICK_START.md # This file
🚀 Getting Started
1. Install Dependencies
npm install
2. Build the Node
npm run build
This will create the compiled JavaScript files in the dist/ directory.
3. Install in n8n
Copy the built files to your n8n custom nodes directory and restart n8n.
🔑 Set Up Credentials
- Get your kDrive API key from the Infomaniak developer portal
- Add credentials in n8n:
- Go to Credentials
- Add new credential: "kDrive API"
- Enter your API key
- Save
🎨 Node Configuration
Resource Types
Choose what you want to work with:
- Drive: Manage kDrive instances
- File: Work with files (upload, download, etc.)
- Directory: Create directories and files
Available Operations
🗃️ Drive Operations
- List Drives: See all your accessible kDrive instances
- Get Drive Info: Get details about a specific drive
📄 File Operations
- List Files: Browse files in a directory
- Get File Info: Get file metadata
- Upload File: Upload files to kDrive
- Download File: Download files from kDrive
- Delete File: Move files to trash
- Search Files: Find files by name/content
- Get File Versions: See file version history
📁 Directory Operations
- Create Directory: Make new folders
- Create File: Create new files with content
🔧 Common Parameters
For File Operations
- Drive ID: Your kDrive instance ID
- File ID: The specific file you're working with
- Parent Directory ID: Where to perform the operation (use "root" for root directory)
For Uploads
- File Data: Base64 encoded file content
- File Name: Name for the uploaded file
- Parent Directory ID: Where to upload (default: "root")
📊 Example Workflows
Simple File Upload
1. HTTP Request → Get file data
2. kDrive → Upload File
- Drive ID: your_drive_id
- File Data: {{ $json.file_content_base64 }}
- File Name: document.pdf
- Parent Directory ID: root
3. Set → Store upload response
Backup Important Files
1. Schedule → Daily at 2 AM
2. kDrive → Search Files
- Drive ID: your_drive_id
- Search Query: "important"
3. kDrive → Get File Info (for each file)
4. Database → Store file metadata
5. Email → Send backup report
Organize Uploaded Files
1. Webhook → Receive file upload
2. kDrive → Create Directory
- Drive ID: your_drive_id
- Directory Name: {{ $json.customer_name }}
- Parent Directory ID: root
3. kDrive → Upload File
- Drive ID: your_drive_id
- File Data: {{ $json.file_content }}
- Parent Directory ID: {{ $json.new_directory_id }}
🔍 API Endpoints Used
The node uses both v2 and v3 of the kDrive API:
-
v2 Endpoints (stable):
/2/drive- List drives/2/drive/{drive_id}/files/{file_id}/download- Download/2/drive/{drive_id}/files/{file_id}- Delete
-
v3 Endpoints (feature-rich):
/3/drive/{drive_id}/files/{file_id}/files- List files/3/drive/{drive_id}/files/{file_id}- Get file info/3/drive/{drive_id}/upload- Upload files/3/drive/{drive_id}/files/search- Search files
🛠️ Error Handling
The node includes comprehensive error handling:
- Network errors
- API errors (4xx, 5xx responses)
- Authentication failures
- Input validation
- Continue-on-fail support
📈 Performance Tips
- Batch Processing: For many files, use loops in n8n
- Pagination: Large directories may need pagination
- File Size: Large files may take time to upload/download
- Rate Limits: Be aware of API rate limits
🔮 Future Enhancements
Consider adding:
- File moving/copying between directories
- File sharing and permissions
- Trash management (restore, permanent delete)
- Webhook support for real-time events
- Advanced search filters
📚 Documentation
- User Guide: See
README.md - Technical Details: See
IMPLEMENTATION_SUMMARY.md - kDrive API Docs: https://developer.infomaniak.com
🤝 Support
For issues or questions:
- Check the kDrive API documentation
- Review the error messages in n8n
- Ensure your API key is valid and has proper permissions
🎉 You're Ready!
Start building your kDrive workflows in n8n. The node provides a solid foundation for cloud file management automation.