Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
New user here just working through the tutorial https://www.dropbox.com/developers/documentation/dotnet#tutorial When I generate a token using an app for Full Dropbox, it works OK. However, if I generate a token using an app for an App Folder only, I get an error that the path could not be found when calling download.
Here is my test code. I've tried replacing "/HappyOtterInstaller" with "", but I get the same error. Could you point me in the right direction. Thanks.
wayne
using (var dbx = new DropboxClient("blahblah")) { var full = await dbx.Users.GetCurrentAccountAsync(); Console.WriteLine("{0} - {1}", full.Name.DisplayName, full.Email); Console.WriteLine("Press enter to close..."); Console.ReadLine(); await ListRootFolder(dbx); Console.WriteLine("Press enter to close..."); Console.ReadLine(); await Download(dbx, "/HappyOtterInstaller", "currentBuild.txt"); Console.WriteLine("Download__Press enter to close..."); Console.ReadLine(); await Upload(dbx, "/HappyOtterInstaller", "currentBuild.txt", @"F:\ww.txt"); Console.WriteLine("Press enter to close..."); Console.ReadLine(); }
Problem solved. Didn't understand that the App folder was created under the main folder Apps. Now working OK. Thanks.
Hey @wwaag76,
Would you mind showing the actual code within your methods that are failing? I assume things are erroring out at the call to ListRootFolder()?
Can you show the contents of that method?
Typically errors that occur with pathing between full access and App Folder access are not honoring the fact that App Folder apps are effectively chroot'd to their App Folder - so as an example: /Apps/HappyOtterInstaller IS your root, all paths you want to reference are relative to that path as root. So the folder: /Apps/HappyOtterInstaller/install.exe is referred to as just /install.exe by your app. But since you say you tried passing an empty string for path (which always translates to root) I would think just listing files would work.
Seeing the code might help figure out if there's another issue at play.
Thanks,
-Chuck
I assume things are erroring out at the call to ListRootFolder()?
No, it gets past that call. It's the Download call that produces the error. Here's the code for the Download method.
async Task Download(DropboxClient dbx, string folder, string file) { using (var response = await dbx.Files.DownloadAsync(folder + "/" + file)) //using (var response = await dbx.Files.DownloadAsync(file)) { Console.WriteLine(await response.GetContentAsStringAsync()); } }
One other thing. Inside the app looks like this.
Problem solved. Didn't understand that the App folder was created under the main folder Apps. Now working OK. Thanks.
I use this code as well but get the same error. I use code following as :
async Task Download(DropboxClient dbx, string folder, string file) { using (var response = await dbx.Files.DownloadAsync(folder + "/" + file)) { Console.WriteLine(await response.GetContentAsStringAsync()); } }
and Pass perameters like :
await Download(client, "/Apps/Retailme", "Retailme.exe");
But there is same error path/not_found
[Cross-linking for reference: https://stackoverflow.com/questions/61527512/dropbox-file-download-error-path-not-found-using-c-shar... ]
@ABDUL_REHMAN If you're using an app with the "app folder" permission, you don't need to include the path of the app folder itself when making API calls, such as "/Apps/Retailme". The Dropbox API will automatically interpret your paths as being relative to your app folder.
So, for example, in your code you wouldn't need to include that "/Apps/Retailme". With how that code snippet is set up, you would instead specify a "folder" value of "", which would result in the final path of "/Retailme.exe" for a file inside your app folder.
The way we work is changing. Share and discover new ways to work smarter with Dropbox in our community.
Sound good? Let's get started.Hi there!
If you need more help you can view your support options (expected response time for a ticket is 24 hours), or contact us on Twitter or Facebook.
For more info on available support options, see this article.
If you found the answer to your question, please 'like' the post to say thanks to the user!