Pick files straight from Dropbox via the official Chooser
Built-in Dropbox adapter, registered out of the box. Lazy-loads dropins.js (Dropbox's official chooser) on first click, runs OAuth in a popup, and resolves with direct-download URLs your server's /import-url endpoint can fetch with NDJSON live progress. No server-side broker needed - Dropbox's direct links are publicly resolvable for 4 hours.
Setup required. Register a Dropbox app, grab the App key, then configure before instantiating:
MultipleUpload.configureRemoteSource('dropbox', {
appKey: 'YOUR_DROPBOX_APP_KEY'
}); App registration: dropbox.com/developers/apps. Pick "Scoped access" + "App folder" or "Full Dropbox" depending on your needs; the JavaScript SDK key is what you want.
Returned RemoteFile shape
{
url: 'https://dl.dropboxusercontent.com/s/abc.../report.pdf?dl=1',
fileName: 'report.pdf',
fileSize: 2_457_600 // bytes (provided by Dropbox)
}Chooser options
// Pass options to .pick() via the source registry directly:
const dropbox = MultipleUpload.getRemoteSource('dropbox');
const files = await dropbox.pick(uploader, {
multiselect: true,
extensions: ['.pdf', '.docx', '.png'] // optional filter
});
// Each file flows into uploader.importFromUrl() automatically when invoked
// via the remoteSources option.Why direct links (linkType: 'direct')
- 4-hour TTL: long enough for server-side fetch to complete even on slow connections.
- No OAuth roundtrip server-side: the URL itself is the bearer.
- For long-lived archival: capture the bytes server-side before the link expires.
Same registry pattern as 'googledrive' and 'onedrive' - mix and match in the remoteSources array.