Greg-DB Dropbox Community Moderator

Comments

  • Thanks, that looks correct. That's the "Property List" view, so Xcode will translate the key names for you. To view the actual XML, where you would see "CFBundleURLTypes", you can right click on your Info.plist and "Open As" > "Source Code". Anyway, I see you redacted your app key from the screenshot, but can you confirm…
  • I don't believe Dropbox offers a pre-built workflow like what you describe, if I understand your description correctly, but Dropbox does offer an API you can use for listing, uploading, and downloading files, among other operations. You could use that to build out your workflow and integrate it with Dropbox. You can find…
  • Yes, that's correct. (Though, to clarify the terminology, the Paper API endpoints have already been "deprecated", and will be "retired" later this year.) You can find the full information in the Paper Migration Guide here: https://www.dropbox.com/lp/developers/reference/paper-migration-guide
  • @"siso" Are you getting any errors in the console when you tap one of these? When you tap either of these buttons, you should get redirected back to your third party app. To clarify, are you saying that that redirect does not occur, or that it does occur but you just don't get any result in the console? If the redirect…
  • No, to download the file data from Dropbox you don't need to apply any special encoding.
  • In this code, you're telling curl (via the 'CURLOPT_FILE' option) to save the downloaded data to the "$fp" file pointer that you provided. That means that the file data should be getting saved to the location specified by "filename" on the local filesystem. So, if you're building a web app where this code is running on…
  • @"Ray F.11" Thanks for following up. I'm not sure I follow what the security issue is, but if you've found a security issue with Dropbox, please report it via our HackerOne account: https://hackerone.com/dropbox In any case, regardless of what browser/control one is using, the user's web session isn't directly connected to…
  • You can access fields like size, etc., via the fields on the FileMetadata type, like this: client.files.listFolder(path: path).response { (result, error) in if let listing = result { for entry in listing.entries { switch entry { case let fileMetadata as Files.FileMetadata: print("File name: \(fileMetadata.name)")…
  • For reference, note that there are two different "metadata" concepts to be aware of when using Dropbox and the Dropbox API: * The standard metadata used by Dropbox, e.g., as returned as the "Metadata" types on the Dropbox API, such as via /2/files/get_metadata. Third party apps can't set arbitrary/custom fields in this…
  • Thanks for following up. In that case, please do please open an API ticket with the relevant app key(s) and webhook URI(s) so we can investigate this failure for you. We can also check our logs for see what happened with the email. Please make sure to open the ticket while signed in to the account that owns the app in…
  • Do you need to build from source for some reason, or would the pre-built package be fine? If you don't need to build from source, it would be easier to just use the pre-built package than to debug why the build is failing for you. For instance, you can replace this 'compile' line in examples/build.gradle with the…
  • The official Dropbox API v2 .NET SDK does implement certificate pinning. You can find information on that in the DropboxCertHelper documentation, and an example of using it here.
  • It sounds like you're probably using access tokens from the API v2 Explorer. That's just meant for prototyping calls, and is currently using early access to a new feature where it only returns short-lived access tokens. To get long-lived tokens, you should retrieve them for your own registered API app, instead of the API…
  • Whether or not you get certificate pinning automatically will depend on how you're calling the API. For example, some of the official Dropbox API SDKs certificate implement pinning for you. If you're not using one of the SDKs, you should refer to the documentation for whatever library you're using, if any. If you're…
  • Yes, you can certainly use the Dropbox API to upload and download files. That's our officially recommended and supported interface, and there are also some SDKs you can use to make that easier. As for the data format, that's up to you, but you could use a SQLite file, or a file containing JSON, or separate individual…
  • @"ags65" We looked into this, and it seems like you may be running in to this issue: https://www.raspberrypi.org/forums/viewtopic.php?t=223026 As noted there, you can try: To stop sending DFs, you can change net.ipv4.ip_no_pmtu_disc value to 1 in sysctl. I would also try reducing the MTU on the interface in order to…
  • The Dropbox desktop client does sync those particular extended attributes/Alternate Data Streams as listed in the help center article you linked to, but I can't recommend relying on those for syncing your own application's metadata with Dropbox. That's not meant as an official programmatic interface (like the Dropbox API…
  • @"bram_l" Thanks for the additional feedback! I'll pass this along as well.
  • Unfortunately I don't know what the issue may be here. We'll try to look into it, but I can't make any promises as it seems to be client-specific, based on the observation that it doesn't occur on your other computer.
  • There's no reason an upload without extra encoding like that should result in a corrupted file. If you can reproduce an issue where correct code and a valid original file results in a corrupted file when uploaded to Dropbox via the API, please share the steps and code to reproduce it so we can look into it.
  • I see you're adding a layer of base64 encoding via your call to base64_encode. You should not base64 encode the file data when uploading it. Try removing that base64_encode call.
  • It sounds like there may be a problem with how you're transmitting or encoding the data for the upload call. Can you share the problematic code?
  • Yes, when making an "RPC" style call, you don't use the "Dropbox-API-Arg" header, and your JSON should go in the request body, e.g., as set by 'CURLOPT_POSTFIELDS'.
  • [ Cross-linking for reference: https://stackoverflow.com/questions/60555529/how-to-get-url-of-images-hosted-in-dropbox-to-use-it-in-debug-mode-django ] From your Stack Overflow post, I see you're using the 'django-storages' project. We can't offer help with that project itself as it's made by a third party, so if you're…
  • There are a few different formats for Dropbox API v2 endpoints, documented here: https://www.dropbox.com/developers/documentation/http/documentation#formats For example, /2/files/get_metadata uses the "RPC" format, so it requires the parameters as JSON in the request body. Exactly how you set that will depend on your HTTPS…
  • Thanks, please let me know if you get any more error information. Also, https://www.dropbox.com/1/connect?... is just a web site and not something you would call programmatically. Anyway, at this point I don't have enough insight on the issue to say exactly it would work in some browsers and not others (and only on some…
  • Great, thanks for confirming that. All Dropbox API v2 endpoints (except OAuth endpoints) expect the parameters as JSON, though there are some different ways of sending them. You can find information about each one in the documentation. For example, the /2/files/create_folder_batch endpoint uses the "RPC" format, so it…
  • Unfortunately there isn't any extra debug option built into the SDK, and anything like that wouldn't really help in this case since the issue is happening in the browser itself. For browser issues, we would look for JavaScript error information, which you already provided in your original message. Nothing in that output…
  • Regarding your first question, yes, the "redirect_uri" value you specified on /oauth2/authorize should be the same "redirect_uri" value you then send to /oauth2/token. I'm not sure I understand your second question though. You can re-use your redirect URI for each authorization, but note that each particular authorization…
  • Is there a way for us to replicate that environment so we can reproduce the issue here?