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

icossean's avatar
icossean
New member | Level 2
3 years ago

DropBox Integration / SDK 4.0 connection cutting out

Hi,

 

In the last month we have noticed an issue with the Dropbox API connection from our platform to Dropbox and believe this was caused by a recent policy update by Dropbox.

 

We run software service platform that is using the .NET SDK version 4.0 to connect to the Dropbox API.

 

This allows our clients to upload documents through our platform and then those documents are uploaded onto their own drop Dropbox accounts, which they manage.

 

The issue is that we have noticed a handful of our clients, where the connection breaks from our platform to Dropbox and the clients are unable to upload documents from our platform to then go into their Dropbox accounts... Only after we clear their API Key/Token from our server and then re-authenticate the client's credentials to apply a new API Key/token, the connection is restored and the upload function works again. But this would only last for less than 24 hours and the process would have to be redone.

 

We have other clients we also believe are affected but we have yet to test them or had any feedback relating to the issue.

 

Any help on this would be much appreciated or a direct contact to a Dropbox tech-team member would be awesome to discuss this query further.

 

Cheers


  • icossean wrote:

    ... Only after we clear their API Key/Token from our server and then re-authenticate the client's credentials to apply a new API Key/token, the connection is restored and the upload function works again. ...


    Hi icossean,

    What actually do you mean here with "API Key/Token"? 🧐 Dropbox uses OAuth2 standard features for authentication (not all but...). Dropbox uses basic access token and refresh token. What your token matches to? 🤔

    If I have to bet, you mean access token. Some time ago, long lived access token was issued and used to authenticate applications. Despite existing long lived access tokens can still be used, new long lived token issuing was deprecated and is already dropped. New access token is valid for 4 hours at most. After that it has to be reissued or refreshed. That's what refresh token is directed for. This token doesn't expire, like long lived access token was before. In such a way once user authenticates used application, it doesn't need to reauthenticate it. Seems like you haven't added support for refresh token in your application. Isn't so? Finally it's time!

    Take a look on your SDKs examples, how you can do that. 😉 You may need/want to update it (and it's a good idea to keep everything updated).

    Hope this gives direction.

  • Здравко's avatar
    Здравко
    Legendary | Level 20

    icossean wrote:

    ... Only after we clear their API Key/Token from our server and then re-authenticate the client's credentials to apply a new API Key/token, the connection is restored and the upload function works again. ...


    Hi icossean,

    What actually do you mean here with "API Key/Token"? 🧐 Dropbox uses OAuth2 standard features for authentication (not all but...). Dropbox uses basic access token and refresh token. What your token matches to? 🤔

    If I have to bet, you mean access token. Some time ago, long lived access token was issued and used to authenticate applications. Despite existing long lived access tokens can still be used, new long lived token issuing was deprecated and is already dropped. New access token is valid for 4 hours at most. After that it has to be reissued or refreshed. That's what refresh token is directed for. This token doesn't expire, like long lived access token was before. In such a way once user authenticates used application, it doesn't need to reauthenticate it. Seems like you haven't added support for refresh token in your application. Isn't so? Finally it's time!

    Take a look on your SDKs examples, how you can do that. 😉 You may need/want to update it (and it's a good idea to keep everything updated).

    Hope this gives direction.