cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
Get summer ready with Dropbox basic - travel documents, plans, progress reminders and more, right over 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: 

is there any Java sdk method to generate access token on the run by taking app key and app secret??

is there any Java sdk method to generate access token on the run by taking app key and app secret??

Reshma
Explorer | Level 3

Hello Dropbox team,


As Access token is expiring every 4 hours, we have to regenerate them every 4 hrs. This is becoming difficult to update the access code in my script manually. I'm looking for a Java SDK method that generate access token automatically every 4 hours by taking app key/app secret as input parameters. Could you suggest any sdk method or code sample that I can use to generate access token on the run in my script using app key/app secret. 

Any help would be highly appreciated !!

1 Accepted Solution

Accepted Solutions

Re: is there any Java sdk method to generate access token on the run by taking app key and app secre

Здравко
Super Collaborator | Level 20

Hi again @Reshma ,

Seems you have misunderstood me. You can't just place one type of token where other type is expected! In Java SDK a DbxCredential object should be used as a proxy (don't ask me why) for refresh token.

Hope it's a bit more clear now.

View solution in original post

5 Replies 5

Re: is there any Java sdk method to generate access token on the run by taking app key and app secre

Здравко
Super Collaborator | Level 20

Hi @Reshma ,

Every supported SDK do this automatically byself (without any additional method/function call). You just have to initialize your client object using refresh token instead of access token. 😉 That's it.

Hope this helps.

Re: is there any Java sdk method to generate access token on the run by taking app key and app secre

Reshma
Explorer | Level 3

Thanks for the suggestion. I have created a Refresh token using this curl

curl https://api.dropbox.com/oauth2/token -d code=<receivedcode>-d grant_type=authorization_code -u <Appkey>:<Appsecret>

Then I have initialized/created drop box client object with Refresh token in place of access token

 

private static final String REFRESH_TOKEN = "<REDACTED_REFRESH_TOKEN> -u <REDACTED_APP_KEY>:<REDACTED_APP_SECRET>";

 

// Create drop box client

DbxRequestConfig config = DbxRequestConfig.newBuilder("dropbox/AppToCreateIT's").build();
DbxClientV2 client = new DbxClientV2(config, REFRESH_TOKEN);

 

But unfortunately this dint work, it is throwing below error
Invalid authorization value in HTTP header "Authorization": "Bearer <REDACTED_REFRESH_TOKEN> -u <REDACTED_APP_KEY>:<REDACTED_APP_SECRET>". Expecting "Bearer <oauth2-access-token>".

 

pardon If my understanding is wrong , could you please guide me with the exact steps to be followed? 

I have taken the below reference to create dropbox client. instead of access token I have used refresh token as per your suggestion

GitHub - dropbox/dropbox-sdk-java: A Java library for the Dropbox Core API.

Re: is there any Java sdk method to generate access token on the run by taking app key and app secre

Здравко
Super Collaborator | Level 20

Hi again @Reshma ,

Seems you have misunderstood me. You can't just place one type of token where other type is expected! In Java SDK a DbxCredential object should be used as a proxy (don't ask me why) for refresh token.

Hope it's a bit more clear now.

Re: is there any Java sdk method to generate access token on the run by taking app key and app secre

Greg-DB
Dropboxer

@Reshma As Здравко indicated, you cannot use a refresh token as an access token. Refresh tokens and access tokens serve different purposes and are not interchangeable. You can find examples of using the authorization flow in the Java SDK here. You can find an example of using a credential with a client to make call here.

 

Also, for future reference, do not publicly post your refresh token or app secret. I've redacted them from your post. You may want to revoke it for the sake of security.

Re: is there any Java sdk method to generate access token on the run by taking app key and app secre

Reshma
Explorer | Level 3
Thanks. This helps.
Poll
Which Dropbox Plan do you have?
Who's talking

Top contributors to this post

  • User avatar
    Reshma Explorer | Level 3
  • User avatar
    Greg-DB Dropboxer
  • User avatar
    Здравко Super Collaborator | Level 20
What do Dropbox user levels mean?
Need more support?