Learn how to make the most out of the Dropbox Community here 💙.
Forum Discussion
manishkanwaria
2 years agoNew member | Level 2
Generate access token without client interaction using Dropbox SDK (C# Api Project)
Hi Folks,
I have a C# API project which has a service that downloads video assets from different sources, i.e., Azure Blob, AMS, and other client environments.
The new client came in with Dro...
- 2 years ago
If you need long-term access, you'll need to use the OAuth app authorization flow, but this only needs to be done once per account. It is not possible to fully automate the OAuth process where the user chooses to authorize the app and the app then receives the resulting access token and optional refresh token. This needs to be done manually by the user at least once.
If your app needs to maintain long-term access without the user manually re-authorizing it repeatedly, the app should request "offline" access so that it gets a refresh token. The refresh token doesn't expire and can be stored and used repeatedly to get new short-lived access tokens whenever needed, without the user manually reauthorizing the app.
You can find more information in the OAuth Guide and authorization documentation. There's a basic outline of processing this flow in this blog post which may serve as a useful example.When you use the official Dropbox API v2 .NET SDK, you do not need to implement all of the code for the OAuth flow yourself. The SDK will do most of the work for you. You can find examples of using this here. If this is only for your own account, you can also opt to perform the OAuth app authorization flow manually once, e.g., as shown in the post linked in my previous paragraph, and plug that in to the .NET SDK. The SDK will handle the refresh process for you when you supply the necessary credentials: the refresh token, app key, and if not using PKCE, app secret.
Здравко
2 years agoLegendary | Level 20
Hi manishkanwaria,
You may try with:
var response = await dbx.Files.DownloadAsync("/VID20230902073536.mp4")
Does it works? 🤔😉
Hope this helps.
manishkanwaria
2 years agoNew member | Level 2
Hi @Здравко,
Awesome :). This was the very first option I tried, not sure why It did not work in first place, may be I did something wrong there. Thanks for your help it worked now.
- Здравко2 years agoLegendary | Level 20
Hm.. 🤔 Did you set single or double slashes when you tried for very first time and it didn't worked? 🧐🙂
Hope this reveals the 'mystery'. 😉
- manishkanwaria2 years agoNew member | Level 2
Not sure about it @Здравко but I think I missed the / itself. Thanks for your help.
- Здравко2 years agoLegendary | Level 20
Yes, that too manishkanwaria - good note. 🙂 Just to avoid further confusions: path separator for all paths is single forward slash and all paths always start with a slash (again single slash). Since your application is 'App folder' type, all paths you're going to pass to any API calls have to be rooted on the applications own folder (i.e. leading parts like '/Apps/MyFolder' have to be cut). Violating some of previous rules will lead to error, most often "path/not_found/" (it's clear, I think, why) if some syntactic rule is not violated at the same time that can lead to corresponding other error.
Good luck.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.5,965 PostsLatest Activity: 5 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!