Comments
-
I can't say exactly what may have changed recently. The need to encode these values in HTTP headers has existed for a long time, so perhaps the path value itself was changed or the client network stack changed to expose this issue. The issue was not immediately apparent based on your initial report, but I was sure to refer…
-
I was referring to using something like JSONSerialization.data to build the JSON string from a dictionary for you, like in our example. Regarding the remotePath value, while that may be a constant in your code (though you did not share where that is defined), is it possible you've changed what you assign to it in your code…
-
For reference, the documentation for /2/files/upload includes a basic example of how you might call curl in a shell to perform an upload. The API Explorer can also be useful for prototyping and testing calls. (Click "Show Code" to see an example of what the code would look like.) Anyway, the /2/files/upload endpoint is a…
-
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 steps to reproduce the issue, including relevant code snippet(s), but don't include any access or refresh token(s) * the full text of any error or unexpected output
-
@"donaldp" Здравко is correct, in order to receive a refresh token, you need to specify "offline" access. With the .NET SDK, you would do so in your GetAuthorizeUri call, by setting tokenAccessType: TokenAccessType.Offline, like in the example here. It looks like that's missing in the GetAuthorizeUri call in the latest…
-
@"ingconti" Thanks for the feedback! While we're not able to provide support for using third party platforms, we're happy to help however we can with the Dropbox API itself. If you have any specific question or issue regarding the Dropbox API, please feel free to share the details so we can take a look.
-
Yes, you would use the export functionality to download any items with files with exportInfo.exportAs set, such as Google docs. The Dropbox API unfortunately doesn't offer the ability to list or read comments on Dropbox Paper docs, but I'll pass this along as a feature request. There isn't a separate call for downloading…
-
Can you clarify where/how the initial value of previousDeltaLink is being set though? In this code, it only seems to be set after each ListFolderContinueAsync call. I don't see where you're setting it from the initial call. It looks like you are correctly setting the recursive parameter to true on the ListFolderAsync call,…
-
Can you share the steps/code necessary to reproduce the issue so we can look into it? It may also be helpful if you use the "-v" flag on curl to enable verbose output and share the output showing the issue.
-
Thanks for following up. Just to clarify, do you still need help on the Dropbox API side of things? (If so, please show us what currently isn't working.)
-
@"Melisek" Thanks for following up. As Здравко said, please make sure the environment has a default web browser set. Otherwise, it looks like you may be using Windows Forms, so please refer to this post for options, as it appears you may need to use something other than System.Diagnostics.Process.Start in that environment.
-
It looks like the sharing_list_shared_links error should have been a transient issue. Does that still occur for you if you retry that?
-
The "preview" links are typically meant for manual use, where CORS wouldn't be relevant. Dropbox does also support those "dl" and "raw" parameters on preview/shared links, but that would only work in non-CORS environments, e.g., downloading a file on a server, not in a browser. As for a workaround, you would need to…
-
To clarify, are you seeing the NullReferenceException in addition to the "Can't find specified file" error, or are you no longer getting a NullReferenceException? Either way, is that the entirety of the error/output you're getting? Please be sure to share the whole error/output and whatever details you can if not, as it's…
-
For the sharing_list_folders error, it looks like may be due to the account having a very large amount of shared folders. We're going to look into what we may be able to do about that, but as a potential workaround, please try calling with a lower 'limit' value (the default/maximum is 1000).
-
The PKCE flow is the right choice for a client-side app, such as a desktop app. The PKCE flow can be used with or without a redirect URI. The PKCE flow eliminates the need for the app secret by instead using a code challenge/verifier. That's essentially a temporary secret generated by the app. A redirect URI can be used to…
-
Refresh tokens do not expire automatically, but they can be revoked by the app or user on demand. That means by default you do not need to get a new refresh token for an account that is already connected (unless it is explicitly revoked by the app or user). Short-lived access tokens do expire after four hours. A refresh…
-
If you use the official Dropbox API v2 .NET SDK in C#, you do not need to perform the refresh yourself. The SDK will perform the refresh automatically for you as long as you supply the credentials (the refresh token, etc.). You can find an example of getting and supplying a refresh token in the OauthBasic example…
-
That's correct, Dropbox retired support for TLS 1.0 and 1.1 earlier this year, so that may be the cause of this error. The Dropbox API servers now only support connections using TLS 1.2. You'll need to update your app/network client/environment to use TLS 1.2 in order to continue making Dropbox API calls. It looks like…
-
No, there's no particular limit on that.
-
Unfortunately there isn't a way to use recursive mode when listing via a shared link, but I'll pass this along as a feature request. I can't promise if or when that might be implemented though. You'd need to perform the recursion via your own code, by calling /2/files/list_folder[/continue] with each relevant sub-path, if…
-
The same applies if it's the same app. A single app-account pair can have multiple different refresh tokens. Creating a new refresh token for an app on an account does not affect existing refresh tokens for that app on that account.
-
When uploading a file to Dropbox using the Dropbox API, the resulting file name is set by the third party app using the "path' parameter, e.g., on the /2/files/upload endpoint. I see you're using a third party library to perform the upload. I can't offer support for that as it's not made by Dropbox, so please refer to the…
-
Authorizing a new application does not affect existing app authorizations. If you get a refresh token for a particular app on an account, existing refresh tokens for other apps on that same account will not be affected. Accounts can have multiple apps connected at the same time.
-
I can't offer help on the Firefox side of things, but in case you can't use a redirect URI, it is worth noting that a redirect URI is actually optional on the Dropbox OAuth app authorization flow. That is, the use of a redirect_uri on /oauth2/authorize is not actually required; it's optional when using the code flow. If it…
-
@"ariod" The Dropbox website may be using different options/capabilities. If something on the API isn't working as expected for you, please share the specific steps/code to reproduce the issue and the unexpected output, as well as an example of what you do expect, so we can take a look. Feel free to open a ticket here if…
-
As Здравко said, as long as you provide the required credentials, the Dropbox .NET SDK will handle the refresh process for you automatically. I see you've already mentioned the example of getting and using a refresh token in the OauthBasic example (non-PKCE, meant for server-side apps); there's also the OAuthPKCE example…
-
Make sure you're retrieving and processing all of the pages from ListFolderAsync and ListFolderContinueAsync. You're not guaranteed to get everything back by just calling each one once. You need to keep calling ListFolderContinueAsync with the latest cursor until ListFolderResult.hasMore is false to be sure you've…
-
I see you've also posted this in a new thread, so I'll follow up with you there. For future reference, please note it is not necessary to post the same question in multiple threads.
-
As discussed in the other thread, for non-downloadable files like this, you should use the "export" functionality instead. In the .NET SDK, that's available as ExportAsync.