cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
We are making some updates so the Community might be down for a few hours on Monday the 11th of November. Apologies for the inconvenience and thank you for your patience. You can find out more 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: 

Non expiring token kept on changing

Non expiring token kept on changing

cfishere
Explorer | Level 3

So i tried following this article about obtaining my perm app token. I did the exact steps. but it always gives me a different Token when i try to access the link
https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Tokens-only-valid-for-4-hours-from-app-...
am I doing something wrong here? it feels very confusing.

27 Replies 27

Greg-DB
Dropbox Staff

If you are referring to processing the OAuth app authorization flow, note that each time you do so, you will get a different access token (and refresh token, if you're requesting one). These values are expected to be different each time. You only need to process this flow when needed though. For instance, if you are requesting "offline" access, and so are receiving a refresh token, you should store and re-use the resulting refresh token, without processing the app authorization flow again.

 

If you haven't already, I recommend reading the following resources for more information on this:

If something isn't working as expected or if you're still stuck on something, please show us what the problem is and we'll be happy to help however possible.

cfishere
Explorer | Level 3

Hey there, this still isn't really working. the problem is the call for token just always expires so I cannot be able to get the code running for longer than 4 hours. please help 

Greg-DB
Dropbox Staff

Dropbox is switching to issuing short-lived access tokens (and optional refresh tokens) instead of long-lived access tokens, so this is expected. You can find more information on this migration here. That being the case, you will get a short-lived access token by default. (You can identify a short-lived access token by the "sl." prefix.)

 

Apps can still get long-term access by requesting "offline" access though, in which case the app receives a "refresh token" that can be used to retrieve new short-lived access tokens as needed, without further manual user intervention. You can find more information in the OAuth Guide and authorization documentation.

 

While the change to only issue short-lived access tokens began on September 30th, we're releasing it gradually, so you may not have seen your app(s) affected until now. Once it applies to your app, it would apply regardless of the "Access token expiration" setting for your app, and that setting may no longer be available for your app.

 

Note that if you are not the programmer responsible for this integration, you may need to get an update from them to support this.

cfishere
Explorer | Level 3

So is it no way other than that to get a perm token? I don't think offline mode work and I need the old way to function. I think that's the only thing stopping the code to work now which is a perm token that does not expire after 4 hours

cfishere
Explorer | Level 3

As the title says, I am trying to generate a refresh token, and then I would like to use the refresh token to get short lived Access tokens.

There is a problem though, in that I'm not smart enough to understand the docs on the dropbox site, and all the other information I've found hasn't worked for me (A, B, C) or is in a language I don't understand.

I have tried out all three examples from the github page, as well as user code from other questions on this site.

I haven't got anything to work.

The most I got was

Error: 400 Client Error: Bad Request for url: api.dropboxapi.com/oauth2/token

and

dropbox.rest.RESTSocketError: Error connecting to "api.dropbox.com": [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1123)

Greg-DB
Dropbox Staff

To clarify, are you the programmer or an end-user of the app in question? If you are not the programmer of the app, you'll need to reach out to them for help.

 

For reference, the "offline" flow itself works, but it is something that would need to be implemented by the programmer of the app. In any case, the creation of new long-lived access tokens is being phased out and so may not be available for any given app.

cfishere
Explorer | Level 3

I'm not the programmer, and the programmer is struggling to understand the dropbox document so i'm sort of asking on behalf of him. the above question was raised by the developer so I'm simply dropped it here. 

Greg-DB
Dropbox Staff

Thanks for clarifying. In that case, please have the developer contact us directly if they need help implementing this. The specifics will depend on their existing code, platform, language, etc. They can contact us privately here if they prefer.

pablorgz
New member | Level 2

Please these is urgent, I need non expiration tokens... this change its a delay...
if i don't have non expirations tokens, i should change to other server like google drive... please change it again... think about it

Need more support?
Who's talking

Top contributors to this post

  • User avatar
    tahsini Dropbox Staff
  • User avatar
    simatec1976 Explorer | Level 3
  • User avatar
    Greg-DB Dropbox Staff
What do Dropbox user levels mean?