Learn how to make the most out of the Dropbox Community here 💙.
Forum Discussion
satish bhuktar
5 years agoExplorer | Level 4
how to get all subfolders list from the share section of dropbox?
02-18-2019 05:18 AM Hello. Does anyone know how to get all subfolders list from the share section of dropbox? I am using .Net SDK When I am trying to get a sha...
- 5 years ago
I'm not sure I understand the first part of your latest comment. If something isn't working as expected with the Dropbox API with respect to that, please clarify.
Anyway, yes, you can check if a given shared folder is mounted in the connected account. Check the SharedFolderMetadata, e.g., as returned in ListFoldersResult.Entries from ListFoldersAsync or ListFoldersContinueAsync. If SharedFolderMetadataBase.PathLower is set, then the folder is mounted. If it is not set, then the folder is not mounted.
Greg-DB
Dropbox Staff
5 years agoThe Sharing.ListFolders methods only let you list shared folders themselves. To list the contents of any arbitrary path, you need to instead use Files.ListFolder and Files.ListFolderContinue methods.
- satish bhuktar5 years agoExplorer | Level 4
Hi Greg,
is Files.ListFolder able to return a list of subfolders of the folders that shared with me but not mount yet? I was trying it but was giving exception of the path not found, that's why I was using Sharing.ListFolderAsync(), what am I need to do here
- Greg-DB5 years ago
Dropbox Staff
Yes, you can technically use these methods to list the contents of an unmounted folder. To do so, you need to use the 'Dropbox-API-Path-Root' header with the "namespace_id" mode, set to the namespace ID of the folder, which you can get from the Sharing.ListFoldersAsync method.
In the .NET SDK, that would look like this:
string ACCESS_TOKEN = "..."; string namespaceID = "123456789"; client = new DropboxClient(ACCESS_TOKEN).WithPathRoot(new Dropbox.Api.Common.PathRoot.NamespaceId(namespaceID)); var listResult = await client.Files.ListFolderAsync(string.Empty); // handle the response, implement ListFolderContinueAsync, and so on
- satish bhuktar5 years agoExplorer | Level 4
Hi Greg,
Thanks for your quick response.
Yes, it's a working solution, but somehow I am not able to use it because of my flow,
1)I need to Show all shared folder first like a dashboard. that's what I have done using Sharing.ListFoldersAsync().
2) The user should enter any folder nested behavior of folders that can be there, along with a back button to come back from each. so I achieve this by given the solution above. but the problem is that in my scenario, I need to store back Path in a back button so user can go back after clicking on it. all goes well but what goes wrong when I am on the last but one subfolder from the dashboard and click back button then it is not going to dashboard, it's showing the same folder items. and having some existing code structure limitations here so I used below way to do the same.
var mount = await DropboxClient.Sharing.MountFolderAsync(SharedFolderId);
var FolderList= await DropboxClient.Files.ListFolderAsync(path: item.PathLower);It's giving me the expected result that suitable to my existing code scenario, that I mount a shared folder first then use DropboxClient.Files.ListFolderAsync(path). but some times facing an issue that "Already mounted" error. Is there any way to check first that the folder is mounted or not?
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.5,966 PostsLatest Activity: 15 hours ago
If 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!