File Upload Fields
When creating a file upload field, you get a complete file management system automatically. Files are stored securely in the cloud and delivered via CDN for lightning-fast access worldwide.
Setting up file uploads:
- Choose File Upload as your field type
- Configure allowed file types and size limits
- Set public/private access permissions
- Define upload quantity limits
Your file field will display as an intuitive drag-and-drop interface with upload progress, file previews, and management controls.
File Types & Display
Configure your file field to handle specific content types:
Images - JPG, PNG, GIF, WebP, SVG with automatic thumbnail generation and gallery display
Documents - PDFs with built-in viewer, Word documents, Excel spreadsheets with preview support
All Files - Accept any file type for maximum flexibility
Custom Types - Define your own allowed file extensions and MIME types
File Storage & Delivery
Every uploaded file gets:
- Unique storage key for secure file identification
- CDN distribution for global fast delivery
- Automatic optimisation for web performance
- Metadata tracking including size, type, and upload date
Files are accessible via clean CDN URLs:
https://cdn.anythink.cloud/org/{your-org-id}/files/{storage-key}
Public vs Private Files
Public Files - Accessible to anyone with the URL, perfect for images, marketing materials, and public documents. These files are cached globally for maximum performance.
Private Files - Require authentication to access, ideal for user documents, sensitive content, or premium resources. Access is controlled through your API permissions.
File Operations
Your file explorer includes everything you need:
- Drag & Drop Upload - Simply drag files or click to browse
- Bulk Selection - Select multiple files for batch operations
- File Preview - Click any file to view or download
- Search & Filter - Find files by name or type instantly
- Copy Public Links - Get direct CDN URLs for sharing
API Integration
Files integrate seamlessly with your API. When you fetch an entity with file relationships, you get structured data:
{
"images": {
"__data": [
{
"id": 2,
"file_name": "optimized-filename.jpeg",
"file_size": 2049732,
"file_type": "image/jpeg",
"is_public": true,
"storage_key": "31606ea3ebdd42e8b7494fce4fbb136e.jpeg",
"original_file_name": "My Original Photo.jpeg"
}
],
"__count": 1
}
}
Security & Limits
Every file upload includes:
- Configurable size limits to prevent abuse
- File type validation to ensure only allowed formats
- Upload quantity limits to control storage usage
Performance Features
Automatic Optimisation - Images are automatically compressed and converted to optimal formats
Global CDN - Files are distributed worldwide for fast access from anywhere
Caching - Public files are cached for maximum performance
Best Practices
File Organisation - Use descriptive filenames and separate file fields for different content types
Size Management - Keep images under 2MB and documents under 5MB for optimal performance
Access Control - Use private files for sensitive content, public files for assets that need to be cached
Bulk Operations - Upload files in batches rather than individually for better performance
Files in Anythink aren't just storage - they're a complete content delivery system that scales with your application and provides the performance your users expect.