Overview
File uploads and transfers are essential for businesses that need to sync documents, images, reports, and other files across multiple platforms. Whether you’re building a document management system, a media platform, or an application that generates reports, Alloy Automation makes it easy to automate file operations without building custom integrations for each storage provider.Components of File Operations
- File URLs which reference the location of files either in your platform or in external storage systems. Most file transfer operations work with publicly accessible URLs or authenticated endpoints.
- Storage Destinations where files will be uploaded or retrieved from. Each storage provider has different folder structures, naming conventions, and authentication requirements.
- File Metadata including file names, MIME types, file sizes, and timestamps. Proper metadata handling ensures files are organized correctly and can be easily retrieved.
- Access Permissions that control who can read, write, or modify files in each storage location. Different providers handle permissions differently.
File Uploads vs. Binary Transfers
This blueprint focuses on URL-based file transfers, where files are referenced by their location and transferred between systems using HTTP(S) URLs. This approach works well when:- Files are already hosted somewhere accessible via URL
- You’re working with webhooks or API responses that include file URLs
- You need to transfer files between cloud storage providers
- File sizes are reasonable (typically under 100MB)
For direct binary file uploads from user devices or large file transfers, refer to our separate “Binary File Uploads and Transfers” blueprint.
Building Your First Integration
Select the appropriate drop-down below based on which Alloy Automation product you’ll be building with.Embedded iPaaS
Embedded iPaaS
1. Choose Storage Providers to Integrate
Cloud storage providers supported by Alloy Automation with native file upload actions include:- Amazon S3 - Industry-standard object storage with robust API and scalability
- Google Drive - Consumer and enterprise file storage with sharing and collaboration capabilities
- Google Cloud Storage - Enterprise-grade object storage for any amount of data
- SFTP - Secure file transfer for legacy systems and B2B integrations
2. Capture Storage Configuration on Installation
Many end-users will want to specify default folders, buckets, or directories where files should be uploaded. Creating on-install workflows to capture these preferences ensures files are organized correctly from day one.For example, with Google Drive you might ask users to:- Select or create a parent folder for all uploads
- Define naming conventions for uploaded files
- Set default sharing permissions
- Bucket name
- Folder prefix/path (Key prefix)
- Access control settings
3. Send File Upload Events to Your Alloy Instance
New file uploads can be triggered from your platform using Custom Events or detected via Polling Endpoints. We recommend using Alloy Custom Events to send real-time notifications when files are ready to be transferred.Below is an example Custom Event for uploading a file to Google Drive:Custom Event Schemas are flexible and you can structure them to match your business needs. At minimum, include the file URL, file name, destination information (bucket, folder, path), and any metadata needed for organization or searchability in the destination system.
4. Build Workflows to Upload Files to Cloud Storage
Create workflows that respond to your Custom Events and upload files to your chosen storage provider. The basic pattern involves:- Receiving the Custom Event with file information
- Optionally transforming the file name or path based on your naming conventions
- Using the storage provider’s upload action
- Optionally storing the resulting file ID or URL back in your platform
Example workflow steps for Google Drive
Example workflow steps for Google Drive
- Trigger: Custom Event “New File Upload”
- Action: Google Drive - Upload a File
- Upload Type: Select upload type
- Name: event.data.fileName
- Source File URL: event.data.fileUrl
- Folder To Upload To: event.data.folderId or installation.googleDriveFolderId
- Mime Type: event.data.fileType (optional)
- Action: HTTP Request to your platform API
- Store the Google Drive file ID back to your database
Example workflow steps for Amazon S3
Example workflow steps for Amazon S3
- Trigger: Custom Event “Document Ready for Backup”
- Action: AWS S3 - Upload a file
- Bucket: event.data.s3Bucket
- Key: event.data.s3Key
- Block Output: event.data.sourceUrl
Example workflow steps for Google Cloud Storage
Example workflow steps for Google Cloud Storage
- Trigger: Custom Event “New File Upload”
- Action: Google Cloud Storage - Uploads a File in Google Cloud Storage
- Bucket: event.data.bucket
- File Name: event.data.fileName
- Block Output: event.data.fileUrl
Example workflow steps for SFTP
Example workflow steps for SFTP
- Trigger: Custom Event “New File Upload”
- Action: SFTP - Upload file to ftp server
- Block Output: event.data.fileUrl
- File Path: event.data.destinationPath
- File Name: event.data.fileName
5. Build Workflows to Download Files from Cloud Storage
Bidirectional file sync is often important, especially when files are created or modified in cloud storage and need to be reflected in your platform. Create workflows that detect new files in cloud storage and notify your platform or transfer them to another location.For reading files back from storage:AWS S3 - Read a file:- Bucket: The S3 bucket name
- Key: The file path/key
- Use “Get a File” action with the file ID
- Or use “List Files” to discover files in specific folders
- File Path: Remote file path
- File Name: Name of the file to read
6. Handle File Organization and Naming
Different storage providers have different organizational structures:- Google Drive uses folder hierarchies with folder IDs
- Amazon S3 / Google Cloud Storage use bucket and key-based organization with prefixes
- SFTP uses traditional directory path structures
- Dynamic folder or key creation based on metadata (e.g., organize by date, customer, or category)
- File naming conventions that prevent conflicts
- Deduplication strategies when files with the same name already exist
7. Deploy the Integration
Once your integration is built and tested, deploy it to your end-users. Alloy Automation provides multiple deployment methods detailed in our documentation.Video Walkthrough Library
We’ve created video walkthroughs for the most common and complex integration scenarios. Choose a walkthrough below to build alongside our experts. We regularly add new videos, so check back for updates!Uploading Files from Your Platform to Google Drive
Uploading Files from Your Platform to Google Drive
Syncing Files Between S3 and Google Cloud Storage
Syncing Files Between S3 and Google Cloud Storage
B2B File Exchange with SFTP
B2B File Exchange with SFTP
Connectivity API (Coming Soon)
Connectivity API (Coming Soon)
MCP Gateway (Coming Soon)
MCP Gateway (Coming Soon)
Connector-Specific Walkthroughs
Amazon S3
Amazon S3
Amazon S3 is ideal for scalable, programmatic file storage with robust APIs and global infrastructure.Upload a file:
- Bucket (required): The S3 bucket name where the file will be stored
- Key (required): The object key (path) for the file in the bucket (e.g., “uploads/2025/10/document.pdf”)
- Block Output (required): The source URL or file content to upload
- Bucket (required): The S3 bucket name
- Key (required): The object key (path) of the file to read
- Use consistent key naming conventions with prefixes for organization (e.g., “customer-id/year/month/filename”)
- Leverage S3 bucket events for real-time file detection if available
- Set appropriate lifecycle policies for cost optimization
- Use separate buckets for different security classifications or environments
- Consider using pre-signed URLs for secure temporary access
Google Drive
Google Drive
Google Drive excels at collaboration and human-friendly file organization with built-in sharing and permissions.Upload a File:
- Upload Type (required): Select the type of upload operation
- Name (required): The name of the file to be created in Google Drive
- Source File URL: The URL of the file to upload from your platform
- Folder To Upload To: The folder ID where the file should be placed
- Mime Type (optional): The MIME type of the file (e.g., “application/pdf”)
- Description (optional): File description
- Starred (optional): Whether to star the file
- Shared Drive ID (optional): For shared/team drives
- App Properties / Properties (optional): Custom key-value metadata
- List Files: Returns the files in the user’s Drive
- Get a File: Get a file by ID
- Create a Folder: Create a folder or a simple file without upload
- Delete a File: Delete a file by ID
- Use service accounts for programmatic access in production environments
- Create dedicated parent folders for each customer or workflow during installation
- Leverage Google Workspace domain sharing when applicable for team access
- Use file descriptions and custom properties for searchability and metadata
- Store folder IDs during installation to avoid repeated folder lookups
Google Cloud Storage
Google Cloud Storage
Google Cloud Storage provides enterprise-grade object storage with global availability and strong consistency.Uploads a File in Google Cloud Storage:
- Bucket (required): The GCS bucket name where the file will be stored
- File Name (required): The object name (path) for the file in the bucket
- Block Output (required): The source URL or file content to upload
- Use consistent object naming with prefixes for logical organization
- Set appropriate storage classes based on access patterns (Standard, Nearline, Coldline)
- Enable versioning for critical data to protect against accidental deletions
- Use lifecycle policies to automatically transition or delete objects
- Consider regional vs multi-regional buckets based on latency requirements
SFTP
SFTP
SFTP remains essential for B2B integrations, legacy system connectivity, and secure file transfers where partners require traditional file transfer protocols.Upload file to ftp server:
- Block Output (required): The source URL or file content to upload
- File Path (required): The destination directory path on the remote server
- File Name (required): The name for the file on the remote server
- File Path: The directory path where the file is located
- File Name: The name of the file to read
- Use key-based authentication over passwords for enhanced security
- Implement consistent directory structures agreed upon with partners
- Set up monitoring and alerting for connection failures
- Implement file archiving strategies (move processed files to archive directories)
- Use file naming conventions that include timestamps to avoid collisions
- Consider using scheduled workflows to poll for new files regularly
Common Patterns and Use Cases
Document Management SystemUpload customer documents from your platform to Google Drive, organized by customer folder structure. Use folder IDs captured during installation to ensure proper organization. Sync file metadata back to your platform for searchability and tracking. Report Generation and Distribution
Generate reports in your platform, upload to S3 for archival with lifecycle policies, and simultaneously copy to Google Drive for team access and collaboration. Use consistent key/folder naming with date-based prefixes. Media Asset Management
Upload images and videos to S3 or Google Cloud Storage for CDN distribution and high-performance access. Organize assets using metadata-driven key structures (e.g., client/campaign/asset-type/filename). Compliance and Backup
Automatically backup critical documents to multiple storage providers for redundancy. Use S3 with versioning enabled and Google Cloud Storage with retention policies to meet compliance requirements. B2B File Exchange
Receive files via SFTP from partners using agreed-upon directory structures, process them in your platform, and distribute results back via SFTP or to internal Google Drive folders for team review. Multi-Cloud Strategy
Sync files across multiple cloud providers (S3, Google Cloud Storage, Google Drive) to ensure redundancy, meet partner requirements, or support hybrid cloud architectures. Use Alloy workflows to keep files synchronized across platforms.
Additional Resources
- Custom Events Documentation - Learn how to trigger workflows from your platform
- Installation Workflows - Best practices for capturing configuration during setup
- Scheduler Connector - For periodic file syncing and polling operations
- Deployment Guide
Now that you understand file uploads and transfers, explore our companion blueprint on Data Warehouse & Database Integration for syncing structured data to Snowflake, BigQuery, PostgreSQL, and other data platforms.

