Greg-DB Dropbox Community Moderator

Comments

  • @"Daniel F" The file properties functionality on the Dropbox API is meant as a way for third party apps to set and get custom information for use by the third party app itself, e.g., to show in its own UI. Dropbox doesn't expose this information in the official Dropbox UI, but I'll pass this along as a feature request. I…
  • I'll be happy to help with any issues you're having with the Dropbox API, but I'll need some more information. Please reply with: * the name and version number of the platform and SDK/library you are using, if any * the steps to reproduce the issue, including relevant code snippet(s), but don't include any access or…
  • @"enpapi" The Dropbox API servers currently support TLS 1.2 and will continue to do so after support for TLS 1.0 and 1.1 is disabled. Dropbox doesn't offer a way to simulate the new server configuration, but I'll pass this along as a feature request. I can't promise if or when that might be implemented though.
  • @"Eric Z.6" Thanks, I’ve sent your feedback along to the team.
  • Dropbox is in the process of switching to only issuing short-lived access tokens (and optional refresh tokens) instead of long-lived access tokens. You can find more information on this migration here. Apps can still get long-term access by requesting "offline" access though, in which case the app receives a "refresh…
  • Based on the "Temporary failure in name resolution" error, it appears this is an issue resolving the "content.dropboxapi.com" hostname. That is resolving successfully for me though, so please check on your DNS server to see what may be causing that failure. You may need to contact your network admin for help.
  • @"simatec1976" I just checked on this, and it looks like you already have an open support ticket for that, so they'll follow up with you there soon.
  • If you're getting "Successfully set up client" from that code, that indicates you've processed the app authorization flow and should now have the necessary credentials, so you can use that dropbox.Dropbox object to make calls. That particular example just shows the authorization flow, but you can save that object like…
  • A "The given OAuth 2 access token is malformed" error should indicate that the string you're passing as the Bearer access token in your request, shown as "<API>" in the code you shared, is not a valid Dropbox API access token. Make sure you're passing in the exact access token as you received it from Dropbox, without any…
  • @"simatec1976" That should be processed within a few business days. If you need help with a production request you can always open a ticket via https://www.dropbox.com/developers/contact .
  • @"nitish166" It looks like you are not using the Dropbox API v2 JavaScript SDK. We highly recommend using an official SDK whenever possible, as it will do much of the work for you. For instance, you can find the Dropbox API v2 JavaScript SDK here, and an example of using refresh tokens with the JavaScript SDK here.…
  • @"OperationsDreaming" Здравко is correct. You'll need to implement support for refresh tokens. You can find example code for for the Python SDK here: * https://github.com/dropbox/dropbox-sdk-python/blob/main/example/oauth/commandline-oauth-scopes.py…
  • @"steve_r" No, the Dropbox API doesn't offer a constant for the root like that, but I'll pass this along as a feature request. I can't promise if or when that might be implemented though. Note that the root namespace ID can change though, so while you can cache the value so you don't have to look it up each time, be aware…
  • You should implement the OAuth app authorization flow to let your end-user(s) (in this case, your client) connect their Dropbox account, rather than have them register their own app. It is not possible to get a refresh token (i.e., for long-term access) without doing so. For reference, we do not recommend having end-users…
  • @"nitish166" Здравко is correct; refresh tokens don't expire by themselves, so you should store and re-use them, instead of starting the app authorization flow each time.
  • This appears to be related to Google's browsing protections, not the Dropbox API itself. Please refer to Google's resources for help, such as: https://developers.google.com/search/docs/advanced/security/social-engineering
  • @"simatec" Whether using the old long-lived access tokens, or new short-lived access tokens/refresh tokens, 'redirect_uri' is optional when you're using 'response_type=code' (such as for the standard code flow for server-side apps, or PKCE flow for client-side apps). When it is omitted, the user is presented with the…
  • Thanks for following up. I'm glad to hear you were able to resolve the exception. I'm not sure I understand your follow up questions though. Can you clarify? Thanks!
  • @"simatec1976" Thanks for the information. I'm sending this along as a feature request for the ability to get a refresh token via the Generate button on the App Console, but I can't promise if or when that might be implemented. For reference, we do not recommend having end-users create/register apps themselves on Dropbox…
  • The Dropbox API offers the ability to programmatically remove members from a team via the /2/team/members/remove endpoint: https://www.dropbox.com/developers/documentation/http/teams#team-members-remove By the way, that's a link to the documentation for the HTTPS endpoints themselves, but we recommend using one of the…
  • A TaskCanceledException can occur if the connection times out. How much data are you attempting to upload in the UploadSessionStartAsync itself? That is, in your "stream" variable? (You mentioned you're attempting to upload a file larger than 150 MB; you should only be sending a part of that in each request though, e.g.,…
  • [Cross-linking for reference: https://stackoverflow.com/questions/71549526/downloading-file-from-dropbox-dropbox-api ] Thanks for sharing the resolution. I'm glad to hear you already got this sorted out.
  • @"simatec" Thanks for the note. You'll need to update your app to use refresh tokens if it needs to maintain long-term access without manual user intervention. You can find more information on this migration here, and you can find more information about this functionality in the OAuth Guide and authorization documentation.
  • Thanks for the report. This doesn't seem to reproduce for me though, so can you share: * the version number of the Python SDK you're using * the rest of the relevant code, e.g., how you're building your 'Dropbox' client object (but don't include your access/refresh token) * a sample 'path' value * several sample request…
  • In this snippet, it looks like you're just passing in an access token string as that ACCESS_TOKEN variable. That constructor is for supplying just an access token. To use a refresh token, you would use the DbxClientV2​(DbxRequestConfig requestConfig, DbxCredential credential) constructor (where the refresh token is in the…
  • Yes, that's correct. The SDK client knows how to use the credentials (refresh token, app key, and for the non-PKCE case, app secret) to automatically perform the refresh process whenever needed, so that calls continue to work.
  • To clarify, once you have a refresh token, the process to get a new short-lived access token when the previous short-lived access token is expired is entirely programmatic and does not require manual user interaction. In fact, the SDK will do it for you automatically in the background. (You can call…
  • It is not possible to fully automate the OAuth process where the user chooses to authorize the app and the app then receives the resulting access token and optional refresh token. This needs to be done manually by the user at least once. If your app needs to maintain long-term access without the user manually…
  • I'm not sure I follow. Dropbox provides these API calls/methods for performing whatever operations the third party app (your app) needs to perform, but it's up to the third party app to build and show its UI to the end-user, allow them to perform actions and provide input, and use its logic to determine what calls to make…
  • Thanks for following up. I'm glad to hear you got this working. Yes, I've asked the team to add that example to the documentation.