cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
Want to learn some quick and useful tips to make your day easier? Check out how Calvin uses Replay to get feedback from other teams at Dropbox here.

Dropbox API Support & Feedback

Find help with the Dropbox API from other developers.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Re: Eror 409 Conflict on auth request on Java code

Eror 409 Conflict on auth request on Java code

oleg22
New member | Level 2

Hello i have such problem with request for getting OAuth 2.0 token with part of documentation"token from oauth 1.0
Have some code with request

curl -X POST https://api.dropboxapi.com/2/auth/token/from_oauth1 \
    --header "Authorization: Basic <my basic token>" \
    --header "Content-Type: application/json" \
    --data "{\"oauth1_token\": \"<my token>\",\"oauth1_token_secret\": \"<my token secret\"}"

 And Java request as 

"{\"oauth1_token\": \""+app_token+"\",\"oauth1_token_secret\": \""+token_secret+"\"}";

where app_token and token_secret is Static Strings with app token and token secret.
And have eror 409 Conflict
I look my code for spaces on token or secret or request but dont see it.

5 Replies 5

Greg-DB
Dropbox Staff

I see you're trying to call the /2/auth/token/from_oauth1 endpoint. This endpoint is only meant for use if you already have pre-existing OAuth 1 access tokens.

OAuth 1 access tokens were a feature of an old version of the Dropbox API, API v1. If you're just starting now, you wouldn't have any, and should just use OAuth 2 with API v2. Are you just developing your app now, or are you migrating from API v1?

If you don't have pre-existing OAuth 1 access tokens, you should send the user through the normal OAuth 2 app authorization flow. You can find information on how that works in the OAuth guide here:

https://www.dropbox.com/developers/reference/oauth-guide

The documentation for the OAuth 2 app authorization flow can be found here:

https://www.dropbox.com/developers/documentation/http/documentation#authorization

oleg22
New member | Level 2

I need getting acces token at my java code and put it to create folder request.
If i put OAuth2 token static in code it works, but my task is getting this token by another request.
I see it at guide by link:https://www.dropbox.com/developers/documentation/http/documentation#auth-token-from_oauth1

Greg-DB
Dropbox Staff

To retrieve an OAuth 2 access token for the user, you should use the Dropbox OAuth 2 app authorization flow. You can find more information on that in the documentation.

By the way, we do offer an official Dropbox API v2 Java SDK. We recommend using that if possible. It implements most of the authorization flow for you, such as seen here in this example web app.

oleg22
New member | Level 2

Weare i can get some data as 

 "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc", "uid": "12345"

i send request in java code

{\"access_token\": \"xxxxxxxxxxxx\", \"token_type\": \"bearer\"}

and get a
HttpResponseProxy{HTTP/1.1 400 Bad Request [Server: nginx, Date: Mon, 23 Dec 2019 22:13:46 GMT, Content-Type: application/json, Transfer-Encoding: chunked, Connection: keep-alive, Content-Security-Policy: sandbox; frame-ancestors 'none', X-Dropbox-Request-Id: 6a18347a584a219d1e1d092b6eefb883, X-Frame-Options: DENY, X-Content-Type-Options: nosniff, Content-Disposition: attachment; filename='error'] ResponseEntityProxy{[Content-Type: application/json,Chunked: true]}}
I need to use only HTTP request's without java dropbox API 🙂

Greg-DB
Dropbox Staff

These 'account_id', 'uid', 'access_token', and 'token_type' values are returned by the Dropbox /oauth2/token endpoint.

You would call the the Dropbox /oauth2/token endpoint if you're using the Dropbox OAuth 2 "code" flow. You can find information on what your request should look like in the documentation for the Dropbox /oauth2/token endpoint.

In any case, make sure you print out the response body for a more specific error message when you get an error like that.

You can see a live demo of the OAuth app authorization flow in this sample app which runs this code.

Need more support?