Greg-DB Dropbox Community Moderator

Comments

  • Thanks for the additional information! To try to isolate whether this is a general networking issue, or if this is related to the Python environment/code in particular, can you try making an upload call outside of Python? You can use the API v2 Explorer to make a call directly, or to get the curl code for running it bash.…
  • I'll be happy to try to get some more clarity on this issue for you, but it would be helpful to get some more information so I can be sure I understand exactly what parameters you're using and what behavior you're seeing. Can you share the actual HTTP requests and responses for the API calls you're making, including the…
  • In order to use the batch upload finish endpoint, you do need to use upload sessions. The relevant endpoints are: * https://www.dropbox.com/developers/documentation/http/documentation#files-upload_session-start * https://www.dropbox.com/developers/documentation/http/documentation#files-upload_session-append *…
  • This can happen when attempting to upload multiple files at once. The 'too_many_write_operations' error indicates "lock contention". That's not explicit rate limiting, but rather a result of how Dropbox works on the backend. This is a technical inability to make a modification in the account or shared folder at the time of…
  • Retrieving the metadata for the root folder ('') is not supported. It doesn't have any specific metadata to return, but you can list its contents, as you found. Accordingly, attempting 'files_get_metadata' will fail. You can get the metadata for a non-root folder by specifying the path, e.g., like "/FolderName".
  • @"florianCH" Can you check the network request, e.g., using the developer tools in your browser, to see what error/response you're getting for the larger file?
  • 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. Unfortunately there isn't a way to increase the speed of the connection. Dropbox does not offer a way for API clients to peer with its servers. I'll send this along as a feature…
  • Thanks! The work to fix the API error reporting is in progress. Please work with support on your ticket for help with checking on the files themselves.
  • You can list files and folders using SwiftyDropbox via the listFolder and listFolderContinue methods. There's an example here. (That's showing some queue functionality, but that's optional.) You can download specific files using the paths to the files, e.g., as retrieved using the above, via the download method. There's an…
  • I don't believe we have any specific sample code for this, but you can construct a DropboxClient with a custom HttpClient which can include proxy settings: https://dropbox.github.io/dropbox-sdk-dotnet/html/M_Dropbox_Api_DropboxClient__ctor_1.htm…
  • Yes, you can still use Dropbox Business API apps with the "team member file access" permission via the "member file access" feature to access any team-owned content, e.g., via /2/files/list_folder[/continue], etc., even without specifying a particular member with access. You should use the "Dropbox-API-Select-Admin" header…
  • If you mean you want to be able to get a zip download for a folder on Dropbox (like the /2/files/download_zip endpoint offers), but via a temporary link (like how the /2/files/get_temporary_link endpoint offers for files), no, unfortunately the Dropbox API doesn't offer that. I'll pass this along as a feature request, but…
  • If the file does get uploaded, fileUrlsToBatchResultEntries shouldn't be nil, so we'll be happy to help look into it. Is this is actual code you're running though, or was it edited for the post? I ask because it looks like you may be missing some curly brackets. Also, it looks like you're not using the propertyGroupArray…
  • @"Thomasbackdrops" Thanks for the feedback! I'll pass it along.
  • If the "entries" value is an empty list like you've shown here, it just means that there are no new entries to return for the cursor you supplied. (If the token or cursor were invalid, the API would respond with a specific error accordingly.) Note that if you go through the /2/files/list_folder results and save the cursor…
  • There isn't a single cursor for each user. A cursor is way to keep track of "where" you are in the file listing, so it is expected to change over time (and even just for each call) for each user. You should continuously update the latest cursor you received for each user. The first time you want to list the files and…
  • When you "create" a Dropbox API app on the Dropbox App Console, you're essentially just registering an app with us so that you can access the Dropbox API. Exactly where and how you write the code that does so is up to you, as is the UI for your app. For instance, if you're writing a project in .NET (say, in Visual Studio),…
  • You can find an example of setting a timeout with the .NET SDK here: https://github.com/dropbox/dropbox-sdk-dotnet/blob/master/dropbox-sdk-dotnet/Examples/SimpleTest/Program.cs#L64
  • The Dropbox OAuth app authorization flow supports the "token" and "code" flows. You can find the documentation here: https://www.dropbox.com/developers/documentation/http/documentation#authorization A redirect URI is required for the token flow, but not the code flow, so if you need to process the app authorization without…
  • Thanks for the additional information. From your description, it sounds like your web host would be your network administrator this case. It does sound like there's an issue with that particular web host, since your other ones are working, or at least a networking issue on the path between that particular web host and…
  • No, the Dropbox API only supports the "token" and "code" OAuth 2 flows, both of which require user interaction in the browser. So in your case, given the interaction is with a remote machine, it sounds like having the user copy/paste the token may be the most reasonable option. You can use this page as your redirect URI…
  • Thanks for the report! Are you still seeing this now? I just tried uploading a file named ".empfs1.xml" and I was able to find it by searching via the API with a query ".empfs1.xml", so it could have been a transient issue. If you are still seeing this problem though, please open an API ticket with the following additional…
  • The Dropbox API itself wouldn't refuse your connections like this; rejected calls would receive an explicit error, such as a 429 rate limiting response. Further, I just tried and the Dropbox API servers are currently responding successfully. It's possible you're seeing a network-level issue though. Is there any software,…
  • You should store the cursor for each user from your previous use of the API for each user. That might be from when the user first set up your app, or whenever they last used it, for instance. Specifically, it can be from the last time you called /2/files/list_folder or /2/files/list_folder/continue for that user. Each of…
  • The API was designed with the intention that each user would link their own Dropbox account, in order to interact with their own files. It is technically possible to connect to just one account. The SDKs don't offer explicit support for it and we don't recommend doing so, for various technical and security reasons. However…
  • You should keep track of the offset client-side, while uploading the data, so that you can specify the value when sending the next piece of the file, or when finishing the file. There's a sample implementation here. It looks like your usage is a little different though, in that you're not using filesUploadSessionAppendV2.…
  • That's correct, using the "token" flow is preferred for client-side applications like this, as it doesn't require the use of the app secret. As you mentioned though, the access token is returned on the URL fragment of the required redirect URI, so it's not acessible to the server. So, to get the access token back to a…
  • The Dropbox API does not offer a way to directly determine which cursor is for which user ID, or vice versa, based on just the cursors or tokens themselves. Instead, you need to store the asociation between the cursor and the user itself on your side. That is, when you receive a cursor and want to store it for later, key…
  • No, unfortunately the file properties are only accessible to the user who owns them, and won't be visible to other members of the shared folder, for instance. I'll pass this along as a feature request, but I can't promise if or when that might be implemented.