- Get Started
- Programmable Media overview
- Developer onboarding guide
- SDK quick starts
- Try it!
- Video tutorial library
- Programmatic asset management
- Programmatic upload
- Upload programmatically
- Create upload presets
- Auto upload
- Auto-tag assets
- Moderate images with AI
- Upload images in Flutter
- Upload images in Node.js
- Upload multiple files in Node.js
- Upload videos in Node.js
- Upload images in Python
- Upload videos in Python
- Upload assets in a React app
- Upload assets in a Next.js app
- Upload assets with Server Actions
- Upload assets in a SvelteKit app
- Upload assets in a Remix app
- Use webhooks to remove backgrounds
- Interaction with Cloudinary APIs
- Cloudinary SDKs
- Find your credentials
- Configure the JavaScript SDK
- Configure the React SDK
- Configure the Flutter SDK
- Configure Svelte Cloudinary
- Configure the Javascript SDK in Svelte
- Configure the Node.js SDK
- Configure the Python SDK
- Configure the Vue.js SDK
- Configure the Next.js SDK
- List images in Next.js
- Captioning on upload with Node.js
- Delete assets with Node.js
- Manage images in a Django app
- Cloudinary CLI
- Widgets
- Administration
- Programmatic upload
- Optimization and delivery
- Transformations
- Get started with transformations
- Advanced transformation features
- Text overlay transformations
- Complex transformations
- Named transformations
- Named transformations using TX Builder
- Advanced image components
- Trim videos in Node.js
- Splice videos in Node.js
- Zoompan effect
- Video transformations
- Crop and resize images in React
- Crop and resize videos in React
- Remove backgrounds and add drop shadows
- AI generative fill in Next.js
- Color accessibility in JavaScript
- Transformations for social media
- Dev Hints on YouTube
- Programmatic asset management
- Guides
- Upload
- Transform and customize
- Optimize and deliver
- Manage and analyze
- Video APIs
- AI in action
- Native mobile
- Add-ons
- Advanced Facial Attributes Detection
- Amazon Rekognition AI Moderation
- Amazon Rekognition Video Moderation
- Amazon Rekognition Auto Tagging
- Amazon Rekognition Celebrity Detection
- Aspose Document Conversion
- Cloudinary AI Background Removal
- Cloudinary AI Content Analysis
- Cloudinary Duplicate Image Detection
- Google AI Video Moderation
- Google AI Video Transcription
- Google Auto Tagging
- Google Automatic Video Tagging
- Google Translation
- Imagga Auto Tagging
- Imagga Crop and Scale
- Perception Point Malware Detection
- Microsoft Azure Video Indexer
- OCR Text Detection and Extraction
- Pixelz - Remove the Background
- URL2PNG Website Screenshots
- VIESUS™ Automatic Image Enhancement
- WebPurify Image Moderation
- References
- SDKs
- Release Notes
Flutter image and video upload
Last updated: Sep-02-2024
When using the Flutter SDK, you can use one of several options to upload files directly to Cloudinary without the need for server-side operations or authentication signatures.
Upload options
Upload endpoint
The upload endpoint is https://api.cloudinary.com/v1_1/<CLOUD_NAME>/upload
. To use the endpoint in your application, write a function that calls the Cloudinary upload
endpoint and pass:
- An unsigned upload preset with the upload method options you want to apply for all files
- The file(s) to upload
- Other unsigned upload parameters to apply to the selected files (e.g.
tags
, if needed).
For example:
Upload endpoint video tutorial
Watch this video tutorial to see how to upload images from your Flutter app to Cloudinary using the Upload API:
Tutorial contents
Upload widget
The Upload widget is a ready-made, responsive user interface that enables your users to upload files from a variety of sources directly to Cloudinary. You can customize and embed this UI in a WebView Flutter widget with just a few lines of code.
Check out the following Upload Widget Sandbox that you can fork to try out some sample configuration changes:
Code examples
- Code sample: Implement the upload widget.
- CodeSandbox: Upload multiple files using a form in pure JavaScript using the Cloudinary upload endpoint.
✔️ Feedback sent!
Error
Unfortunately there's been an error sending your feedback.