File Upload API
Scalable REST API to handle file uploads from your app: manages file storage, file hosting & file transformations.
✓ Try free for 14 days ✓ No credit card required
Upload files using a simple,
scalable, low-latency API.
The Upload API provides high-performance file uploading, file processing & file hosting functionality through a simple & easy-to-integrate REST API.
-H "Content-Type: image/jpeg" \
-H "Authorization: Bearer YOUR_PUBLIC_API_KEY" \
-X POST "https://api.upload.io/v1/files/basic"
"accountId": "W142hJk",
"fileId": "W142hJkKd759aLFxttm69kZ",
"fileUniquifier": "Kd759aLFxttm69kZ",
"fileUrl": "https://upcdn.io/W142h..."
}
- Upload files via a simple POST request.
- Transform, convert & optimize files via the URL.
- Download files via a global CDN (300+ nodes).
Run file transformations.
Run transformations against your files in real-time, simply by appending "file transformation slugs" to the end of your file URLs.
- Files transformed & returned on-demand.
- Images typically processed in under a second.
- Resize images, extract zips... even run your own code!
Globally distributed CDN.
Out the box.
The Upload API uses a global network of 300+ edge locations in 90+ cities across 47 countries to provide ultra-low-latency downloads to your users.

- Over 300 edge locations.
- Presence in 90+ cities across 47 countries.
- DDoS protection built-in.
Everything you need to handle
file uploads in your application
File Storage
Store user-uploaded content via the Upload API to benefit from fast file hosting & transformations.
File Processing
Transform & optimize images via the URL. You can even use the Upload CDN to transform external files.
File Delivery
Files are served to your users via a globally distributed content delivery network for low-latency downloads.
Upstreams
Transform external files by adding your servers as "upstreams" in the Upload Dashboard.
Persistent Caching
Transformation results are persisted to a managed cache, optimizing the download experience for your users.
Monitoring
Monitor your storage, processing & bandwidth usage over time via the Upload Dashboard.
Custom CNAME
Make Upload your own by using a custom CNAME — your users will never know we're here.
Authenticated URLs
Upload supports federated file access, allowing you to authenticate file access via your own APIs.
Custom File Processing
Transform your files using custom code written in Node.js — native binaries also supported.
Ready to start uploading files?
Get StartedUpload & transform your first file via cURL in as little as 60 seconds.