You might see that the Dropbox Community team have been busy working on some major updates to the Community itself! So, here is some info on what’s changed, what’s staying the same and what you can expect from the Dropbox Community overall.
Forum Discussion
buttflattery
6 years agoExplorer | Level 4
Max files Upload using javascript SDK
I can find any relevant section that addresses how many files i can upload in concurrent requests. means if i am using javascript SDK and i trigger 100 files via looping the code that creates a promi...
- 6 years ago
You will need to create one "upload session" per file. Each file can be uploaded in multiple pieces or "chunks". Once you've uploaded all of the chunks for each file, you can commit all of the files at once by using the /files/upload_session/finish_batch endpoint. That will help avoid lock contention.
For each single request to upload a chunk of a file, you can technically upload up to 150 MB. In practice, you'll likely want to use a size smaller than that for the sake of reliability. Additionally, using a smaller size means you won't have to re-upload as much if/when a particular request does fail. For instance, in practice you might want to use a chunk size of 12 MB, but you can experiment to see what size works well for your use case.
Greg-DB
Dropbox Staff
There are some limitations to be aware of if you're trying to upload multiple files. I recommend reading the Data Ingress Guide as it covers this in detail:
https://www.dropbox.com/developers/reference/data-ingress-guide
This applies whether or not you're using an official Dropbox SDK.
buttflattery
6 years agoExplorer | Level 4
hmm that means dropbox recommends that if there are alot of files i should upload all those file in a single sesssion and commit all of them once. And to upload those files i should upload in chunks as i need to manage the upload progress Correct?
Second thing, if the above is correct what is the max size of the chunk that is recommended keeping in mind the requests rate limit?
- Greg-DB6 years agoDropbox Staff
You will need to create one "upload session" per file. Each file can be uploaded in multiple pieces or "chunks". Once you've uploaded all of the chunks for each file, you can commit all of the files at once by using the /files/upload_session/finish_batch endpoint. That will help avoid lock contention.
For each single request to upload a chunk of a file, you can technically upload up to 150 MB. In practice, you'll likely want to use a size smaller than that for the sake of reliability. Additionally, using a smaller size means you won't have to re-upload as much if/when a particular request does fail. For instance, in practice you might want to use a chunk size of 12 MB, but you can experiment to see what size works well for your use case.
- buttflattery6 years agoExplorer | Level 4
One thing more, the "filesUploadSessionFinishBatch" description says
UploadSessionStartArg.close or UploadSessionAppendArg.close needs to be true for the last upload_session/start or upload_session/append:2 call.
Does this mean, if i have 4 files
- image1.jpg
- image2.jpg
- image3.jpg
- image4.jpg
i should set the "UploadSessionAppendArg.close" to true for the last chunk of every file OR set the "UploadSessionAppendArg.close" for the last chunk of the last file i.e "image4.jpg"? considering i will always upload in chunks.
- Greg-DB6 years agoDropbox Staff
You should set the UploadSessionAppendArg.close to true for the last chunk of every file.
Each file gets its own upload session, and any upload session that you want to finish using filesUploadSessionFinishBatch needs to be "closed" before you can finish it with filesUploadSessionFinishBatch. "Closing" an upload session tells Dropbox that you won't be adding any more data to it.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,883 PostsLatest Activity: 19 hours agoIf you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!