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
GaryH_BAR01
3 months agoHelpful | Level 5
(Beginner) API to create file requests
Good afternoon, I am working on a project that uses Qualtrics (a web-based survey/forms) platform to create Dropbox file requests to allow the user to securely upload files to go along with their f...
Здравко
3 months agoLegendary | Level 20
Hi GaryH_BAR01,
Maybe a bit more simple example than the one sent to you by Dropbox support may be seen here. 😉
Probably Dropbox support hasn't explained you very clear what you need exactly and why. You don't need to force your end users to log in any Dropbox account or anything similar. The only one that need to get logged in is... you! 🙂 Nobody else. And all this just once; at the time you need to grant permission to your application to access... your account.
Once you have refresh token, following all directions in the thread I linked to, the only thing you need to add in your application is the received refresh token and a bit of code the make sure your access token is not expired when you need one - i.e. you need to implement in your code only the last direction I gave there (the refresh). That's all.
Hope this helps you.
- GaryH_BAR013 months agoHelpful | Level 5
Good Morning Здравко - Some questions to make sure that I am understanding the post that you provided a link to.
1) Regarding the refresh_token: does that change or is that something that I can store as a constant in my workflow for this project?
2) While I was able to run the commands in a terminal window, I need to convert the refresh token statement "curl https://api.dropbox.com/oauth2/token -d grant_type=refresh_token -d refresh_token=<REF_TOKEN_HERE> -u <AppKey>:<AppSecret> " into something that can be used by the Qualtrics Web Service (format shown in original post)
I had tried to run this and it did not work. Suggestions?
- DB-Des3 months agoDropbox Engineer
Hi GaryH_BAR01,
To add to @Здравко's suggestion: Apps can get long-term access by requesting "offline" access, this can be achieved by adding "token_access_type=offline" to the authorization URL. Keep in mind that there will need to be user interaction the first time the app is being authorized. A "refresh token" is returned in the response object, this "refresh token" can be used to retrieve new short-lived access tokens as needed, without further manual user intervention.
To answer your first question, yes, the "refresh token" can be securely stored for later use; it can be re-used and doesn't expire automatically (though it can be revoked on demand).
I hope this information provides more clarity!
--
[Cross-linking for reference: https://stackoverflow.com/questions/79020302/dropbox-filerequest-api-handling-token-issues-working-with-qualtrics-webserv ]
- GaryH_BAR013 months agoHelpful | Level 5
DB-Des the next issue that I am having is how to format the command for the refresh token as the POST request (via the Form image that I submitted) since I cannot run a cURL command directly in the external platform.
curl https://api.dropbox.com/oauth2/token -d grant_type=refresh_token -d refresh_token=${e://Field/DBX_AUTH_REFRESH_TOKEN} -u ${e://Field/DBX_AUTH_APP_KEY}:${e://Field/DBX_AUTH_APP_SECRET}
The connector prompt that Qualtrics is providing to access the external APIs
Asks for a URL ( which I am assuming is https://api.dropbox.com/oauth2/token)
Using the "POST" Method I am able to set Query Parameters, Body Parameters (either in application/json or application/x-www-form-urlencoded format) and Custom Headers.
I attempted to set the body parameters using application/json format
grant_type : refresh_token
refresh_token : {the Refresh Token issued by DBX}
user: {AppKey}:{AppSecret}
However the response I got was an error from DBX "The request parameters do not match any of the supported authorization flows. Please refer to the API documentation for the correct parameters."
I suspect that I am putting the values from the cURL statement in the wrong boxes could you please advise?
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,910 PostsLatest Activity: 4 days 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!