We’re Still Here to Help (Even Over the Holidays!) - find out more here.
Forum Discussion
blink
9 years agoExplorer | Level 3
API V2 oauth 1.0
Dear all, is oauth 1.0 still use in the future? That's means use API V2 and use oauth 1.0 through HTTP, TKS!
Greg-DB
Dropbox Community Moderator
9 years agoOAuth 1 is only available for use with API v1. API v2 only supports OAuth 2, not OAuth 1.
OAuth 1 will continue to be available for API v1 for the lifespan of API v1 itself. API v1 is deprecated, and you can find the retirement timeline here:
https://blogs.dropbox.com/developers/2016/06/api-v1-deprecated/
OAuth 1 will continue to be available for API v1 for the lifespan of API v1 itself. API v1 is deprecated, and you can find the retirement timeline here:
https://blogs.dropbox.com/developers/2016/06/api-v1-deprecated/
blink
9 years agoExplorer | Level 3
Thanks for your answer. and I have another question about API V2 oauth 2.0.
I use c++ code to upload files, but how can I get access token by http request with API V2 , eg:
https://www.dropbox.com/oauth2/authorize
https://api.dropboxapi.com/oauth2/token
c++ code :
#include <stdio.h>
#include <curl/curl.h>
int main (int argc, char *argv[])
{
CURL *curl;
CURLcode res;
/* In windows, this will init the winsock stuff */
curl_global_init(CURL_GLOBAL_ALL);
/* get a curl handle */
curl = curl_easy_init();
if(curl) {
printf ("Running curl test.\n");
struct curl_slist *headers=NULL; /* init to NULL is important */
headers = curl_slist_append(headers, "Authorization: Bearer <ACCESS_TOKEN>");
headers = curl_slist_append(headers, "Content-Type: application/octet-stream");
headers = curl_slist_append(headers, "Dropbox-API-Arg: {\"path\":\"/test_c++_upload_test.txt\"}");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_URL, "https://content.dropboxapi.com/2/files/upload");
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "test data for upload");
/* Perform the request, res will get the return code */
res = curl_easy_perform(curl);
/* Check for errors */
if(res != CURLE_OK)
fprintf(stderr, "curl_easy_perform() failed: %s\n",
curl_easy_strerror(res));
/* always cleanup */
curl_easy_cleanup(curl);
printf ("\nFinished curl test.\n");
}
curl_global_cleanup();
printf ("Done!\n");
return 0;
}
- Greg-DB9 years ago
Dropbox Community Moderator
You can find information on how the OAuth app authorization flow works here:
https://www.dropbox.com/developers/reference/oauth-guide
The documentation for the specific endpoints you need to use can be found here:
https://www.dropbox.com/developers/documentation/http/documentation#authorization
You can use either the "token" or "code" flow, depending on what makes sense for your app.
Note that https://www.dropbox.com/oauth2/authorize is a web page, not an API endpoint. Your app should direct users there in their browser, and not make any API calls to it directly.
The https://api.dropboxapi.com/oauth2/token URI is an API endpoint that you would use if you use the OAuth 2 "code" flow.
If you run in to any issues implementing that, please let us know the steps to reproduce the issue, and share the relevant code and output so we can look into it.- blink9 years agoExplorer | Level 3
Many thanks your answer! and I've read the the URL doc, but I have a puzzle when I use browse to get token.
https://www.dropbox.com/oauth2/authorize?client_id=
0lksd9ebhsil1qx?response_type=(when can I get the string?). the browse show 400 error with message:More details for developers
Invalid client_id: "0lksd9ebhsil1qx?response_type=".Please tell me the url (https://www.dropbox.com/oauth2/authorize) Parameters , thank you!- Greg-DB9 years ago
Dropbox Community Moderator
When constructing a URL, the location should be separated from the parameters by one '?', and subsequent parameters should be separated by '&'.
The 'response_type' should be either 'code' or 'token', depending on which flow you want to use. You can find more information on these in the documentation here:
https://www.dropbox.com/developers/documentation/http/documentation#authorization
So, for example, your /authorize URL might look like this:
https://www.dropbox.com/oauth2/authorize?client_id=0lksd9ebhsil1qx&response_type=code
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
The Dropbox Community team is active from Monday to Friday. We try to respond to you as soon as we can, usually within 2 hours.
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, Facebook or Instagram.
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!