Greg-DB Dropbox Community Moderator

Comments

  • Yes, this was a legitimate email from Dropbox. API v1 is deprecated and being retired in June. You can find more information here: https://blogs.dropbox.com/developers/2016/06/api-v1-deprecated/
  • We recommend using GetMetadataAsync to check if any particular file or folder already exists. It will return the metadata if so, or raise an exception you can catch if not. GetMetadataAsync would also be better than SearchAsync as searching is subject to an indexing delay. In either case though, there's going to be a race…
  • Apologies, I thought you wanted a general way to detect the Safari restriction for use in your app code. I've also reported this to the team to see if we can detect this on our side. The authorizeFromController method is designed to use either the official Dropbox app or Safari to process the authorization flow. Lacking…
  • HI Robert, I'm afraid I don't know if there's a way to detect the Safari restriction. That question may be better suited for Apple's forum or support channel. I suspect it would be similar to the way we check for the official Dropbox app though, which you can see here:…
  • I'm not sure I fully follow your question. Are the users uploading to their own Dropbox accounts? Do you need individual links for each uploaded file, or just each folder? In any case, the /2/sharing/create_shared_link_with_settings endpoint is the right way to create a shared link for any specific file or folder:…
  • 1. Yes, API v1 is being retired in June. You can find more information here: https://blogs.dropbox.com/developers/2016/06/api-v1-deprecated/ 2. No, unfortunately I don't have anything like this for API v1 to reccomend. If it helps, this example app for the Python API v2 SDK may be close to what you're looking for, but note…
  • No, the Dropbox API doesn't currently offer a batch thumbnail endpoint, but I'll be sure to pass this along as a feature request.
  • Yes, the user would use whichever email address is currently registered to their account to sign in.
  • Thanks for checking in, thedeck. I don't have an update on that one yet. I'll follow up here once I do. And thanks for the information, jackolicious. For reference though, while the errors from different people on this thread are reported the same way to the API clients (i.e., a 500 error), they may be caused by different…
  • The "tag" is the way the API describes which member of the union the object is. The SDK uses it to determine what the "is" methods return. So, you don't need to access tag directly, as long as you use the "is" methods. To get the actual error information, use the respective field. For example,…
  • You can use the "is" methods to check which member of the error union a particular instance of the error is, then you can access the respective property for the specific error value, as shown here: https://github.com/dropbox/dropbox-sdk-obj-c#route-specific-errors The documentation details which methods/properties are…
  • For reference, that second parameter to the response block for any given API call is referred to as a "route error", because it is specific to the route. (Whereas the DBRequestError is not specific to the route.) Each of these errors are a "union" meaning any particular instance of them will be one of a set of values…
  • Are you using the SwiftyDropbox SDK? If so, yes, you can register a progress callback, as shown here: https://stackoverflow.com/documentation/dropbox-api/408/downloading-a-file/1349/downloading-a-file-with-progress-information-using-the-swiftydropbox-library#t=201702082051521729303 That sample is for downloading, but it…
  • You can retrieve an access token from the OAuth flow either using or not using a redirect URL, as you saw, but we recommend using a redirect URL when you can, as it streamlines the process. (For reference, if you do copy/paste the code, note that that's an "authorization code" and not an "access token". You need to…
  • We don't have a pre-built sync client that uses API v2 like that, but I'll be sure to pass this along as a feature request. If you want to implement one, you can use the API to list, upload, and download files as necessary.
  • Hi Mark, I'm not aware of any particular resources like that, beyond the sample code included with the new SDKs, but I'll send this along as a request to the team. I'll be happy to help with any particular issues or questions you have with API v2. Please feel free to reply here with details.
  • 1. You're not supposed to be able to update the email address for a pending (invited) user, so I can't promise a behavior here. We're looking into this issue per your other forum thread though. 2. No, since the user has already joined, there won't be another invitation sent for them.
  • How exactly is it failing? What error/output are you getting? By the way, it looks like you're using the old PHP Core SDK, which uses Dropbox API v1, which is deprecated. You should migrate to API v2 whenever possible.
  • (By the way, you should switch back to the original authorizeUri line to test the desired redirect flow.)
  • Where does it fail exactly? You mentioned it doesn't get to the try/catch, so a good next step in debugging that would be to check if the Browser_Navigating method gets called at all. If it does, check what's happening with that if condition at the beginning of it.
  • The authorization flow is documented here: https://github.com/dropbox/dropbox-sdk-obj-c#handling-the-authorization-flow And implemented in the sample app here: https://github.com/dropbox/dropbox-sdk-obj-c/blob/master/Examples/DBRoulette/CocoaPods/DBRoulette/DBRoulette/ViewController.m#L24 Does that cover what you need?
  • We recommend using a package control system, as it helps developers stay up to date with updates of the SDK. I'll send this along as a feature request for support for installing from a framework file though.
  • That is the right way to get a direct link to a file using the API. I'll be happy to pass along as feedback or feature requests though. What specifically would be more useful? Thanks in advance!
  • Great, I'm glad to hear that helps. You can find more information on the design of API v2 on the blog: https://blogs.dropbox.com/developers/2015/04/a-preview-of-the-new-dropbox-api-v2/ https://blogs.dropbox.com/developers/2015/04/how-many-http-status-codes-should-your-api-use/
  • You can't upload to the Dropbox API without using an API app. In order to upload to Dropbox via the Dropbox API, you need a Dropbox API access token, and you can only get an access token via an API app. Note though that if the app is going to be distributed to end users, they don't need to register their own API apps. They…
  • I'm not sure I understand your request. What endpoint are you using? For example, /2/team/members/list doesn't support filtering for a particular email address, but if you have a specific email address, you can look up the member using /2/team/members/get_info.
  • You don't need to call getMetadata for each entry. You can perform the as? Files.FolderMetadata or Files.FileMetadata check on each Metadata object in the entries list returned by listFolder itself.
  • Which of the three supported installation methods are you trying to use exactly? It sounds like you want to use the "manually add subproject" method. If so, make sure you follow all of those steps. For example, make sure you add it to "Embedded Binaries".