Greg-DB Dropbox Community Moderator

Comments

  • In the "restore file1" step, you're only restoring the file itself, not the original folder. When adding or restoring a file, if a parent path component (the folder, in this case) doesn't already exist, it will be automatically created. That automatically created folder is a new folder, not a restored folder (and it may or…
  • @"Alex_Ch" As Здравко said, you shouldn't be embedding and re-using the 'code'. The 'code' value is the "authorization code", which can only be used once. You should instead store and re-use the "refresh token" once you have it.
  • I've tried your sample code and the issue doesn't reproduce for me, so it may be specific to some aspect of your environment or account. That being the case, to help us track down these specific failures, please open an API ticket here and share the following: * Have you made any modifications to the Dropbox SDK? If so,…
  • @"Hchauhan" You'd need to use the /2/files/restore endpoint (or corresponding method in an SDK) to restore each file as needed.
  • @"Hchauhan" No, unfortunately there isn't an update on this.
  • I see some of your messages got caught by an automated spam filter. I've recovered them. Anyway, thanks for the additional information; that's helpful. We'll look into it.
  • Dropbox is no longer offering the option for creating new long-lived access tokens. Dropbox is now issuing short-lived access tokens, which do expire after a short period of time, and optional refresh tokens, which don't expire, instead of long-lived access tokens. You can find more information on this migration here. Apps…
  • Thanks for the note, I'll add that to the request as well.
  • Update: using the /2/sharing/create_shared_link_with_settings endpoint to create a link with the "no_one" audience should work now.
  • The Dropbox search backend may apply some tokenization and rewriting to queries, e.g., to try to handle typos, exclude potentially extraneous results, include potentially relevant results, etc. That being the case, you won't always see only exact matches. For instance, for the cases you have shown here, it may remove stop…
  • @"HairyWombat" The "zsh: no matches found" error you're getting is because the URL contains the "?" character which has a special meaning in that shell. To avoid that, quote the URL, like this: curl -L "https://www.dropbox.com/s/fzv989hz5mazhqw/ReplacementDatabase.dbf?dl=1" > Test1.dbf I also put together your C# code and…
  • @"Alex_Ch" Здравко is correct, the official Dropbox SDKs, such as the Dropbox JavaScript SDK, will handle the refresh for you automatically as long as you supply the necessary credentials (refresh token, app key, etc.). You can find an example of that for the Dropbox JavaScript SDK here.
  • @"Alex_Ch" I see Здравко already offered some helpful guidance. For more information on the OAuth flow, for retrieving a refresh token, refer to the following resources: * https://developers.dropbox.com/oauth-guide * https://www.dropbox.com/developers/documentation/http/documentation#authorization *…
  • Thanks for the report. Issues like that can be a temporary service availability issue. I just tried the endpoint and it is working for me currently. If you're still seeing this, please share the following so we can look into it: * Does it only affect a particular account? If so, please open an API ticket here and share the…
  • Dropbox offers the Dropbox Saver, which can be used to save file(s) from a web app to the end-user's Dropbox account. You can find information on using that here. It does not offer a way to convert an HTML page to a PDF file though. The web app would need to produce and supply the particular file data it wants to offer to…
  • In your original sample code here, you already have access to the parent folder's ID (not the same as the shared folder ID), in folderMetadata.Id. In cases where you don't already have that parent folder metadata object though, you can retrieve the parent folder ID, given the metadata of a file (or folder), like this: var…
  • @"abhinav-gogoi-clairvoyant" Yes, as Здравко helpfully linked to, you can use ListSharedLinksBuilder to specify a path. In particular, you would use ListSharedLinksBuilder.withPath. (The Java SDK uses this "builder" pattern to support passing parameters on many calls like this.) Working from your sample code, that would…
  • To clarify, FolderMetadata.Id and Metadata.ParentSharedFolderId are different types of identifiers. Shared folder IDs (such as in ParentSharedFolderId) are only created once a folder is shared. They can't always be returned since they may not exist yet. File and folder IDs (such as in FileMetadata.Id and FolderMetadata.Id)…
  • The parent shared folder ID is only returned if the item is contained inside a shared folder. (Note that new folders in your home folder are not shared by default.) If the item is not in a shared folder, then ParentSharedFolderId will not be set. The output you shared indicates that the file you're checking is not in a…
  • Receiving a 'Content-Type: application/octet-stream' response header on a successful /2/files/download call is the expected behavior. The Dropbox API doesn't return specific mime types for files, but you can get the file extension from the file name and keep your own file extension to mime type mapping as desired.
  • @"Skyfay" Your connection speed to Dropbox depends on the routing you get between your ISP and our servers, and may be slower than your ISP's rated speeds, and may vary over time. Sometimes resetting or retrying your connection gets you a different route and better speeds, but that is outside of our control. Some ISPs also…
  • @"BartVD" Thanks for your message. As you found, Dropbox changed the certificate for api.dropboxapi.com from DigiCert High Assurance EV Root CA and it is currently being served with a valid certificate using DigiCert Global Root CA. (You can find the details on the transition in my previous messages from 2021 in this…
  • No, regardless of app status, Dropbox refresh tokens do not expire. They can be revoked on demand by the app or user though. Dropbox short-lived access tokens themselves do expire after a short period of time. Please refer to the OAuth Guide and authorization documentation for more information on how this process works.
  • To upload large files, you should use the "upload sessions" functionality instead. You can find an example of doing so with the Dropbox Java SDK here.
  • @"urvisheth" I see you want to upload a file to a shared folder in your team space, not your own folder. By default, API calls operate in the "member folder" of the connected account, not the "team space". You can configure API calls to operate in the "team space" instead though. To do so, you'll need to set the…
  • This response indicates that nothing was found for that particular query for the specified member under the specified namespace. Please check that your query, member ID, and namespace ID are correct. If your values are correct but you are missing search results, feel free to open an API ticket here and we'll look into it.…
  • Thanks for following up. I'm glad to hear that helped. Yes, this is open with the team to update the exception to surface the message in the .NET SDK, but I can't promise a timeline on that being done.
  • There are a number of scenarios that can cause the refresh to fail like this, such as: * missing/incorrect/malformed refresh token * revoked refresh token (e.g., when the user unlinks the app via https://www.dropbox.com/account/connected_apps , etc.) * missing/incorrect/malformed app key * incorrect/malformed app secret *…
  • @"Alan Hsiao" Здравко is correct; there isn't a concept of a "download session", but you can download files in pieces across multiple requests if needed. Content-download style endpoints, such as /2/files/download, support Range requests for downloading only a portion of a file.
  • @"ram4444" Thanks for following up and sharing that, and apologies for the delay. (It appears your latest message may have initially been caught in a spam filter.) Anyway, I see your client is sending a "TE" header in the request, but no "Connection" header. According to the specification, the corresponding "Connection"…