The Community is undergoing a major upgrade. Find out more, ask us questions or share your thoughts here.
Forum Discussion
Esikhoob
2 years agoHelpful | Level 5
What path argument should I pass to .NET CreateSharedLinkWithSettingsAsync()
Hi
In our Website, written with ASP.NET and C#, we want to use .NET API to get shared link for a file. I found the method for this purpose named: CreateSharedLinkWithSettingsAsync() but all my tries in passing path argument, result in these errors:
System.ArgumentOutOfRangeException: Value should match pattern '\A(?:(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?))\z'
[Dropbox.Api.Sharing.CreateSharedLinkWithSettingsError]: path/not_found/
[Dropbox.Api.Sharing.CreateSharedLinkWithSettingsError]:path/malformed_path/
I understood from the first error that I should put an '/' at the beginning of the path, but canot solve other errors.
please help me
Esikhoob A 'path/malformed_path' error would indicate that the path value is invalid due to not being formed correctly; for example, this can occur if there is whitespace at the end of the path value.
A 'path/not_found' error would indicate that the path value is properly formed, but nothing was found at the specified path in the connected account/root.
Apps with the "app folder" access type are automatically rooted in the special app folder created for the app in the connected account, so yes, if you have a file named "Iran4K.mp4" directly in the app folder in the connected account, you would use a path value of "/Iran4K.mp4".
To list the contents of whatever root your app is accessing, such as the app folder, you can use ListFolderAsync/ListFolderContinueAsync starting with 'path' set to the empty string "'.
- ЗдравкоLegendary | Level 20
Hi Esikhoob,
If you try to list your account content, is there such entry which path match to the path you're passing during link creation (take in mind root namespace has to be the same for business accounts)? 🧐 If no, that's why the path can't be found. 😉 If you're trying to pass local path, it won't work, both as format and as pointed file/folder location.
Good luck.
- EsikhoobHelpful | Level 5
Hi
I can see the path I have passed during link creation, in my Dropbox`s account. I have successfully created shared links with equivalent javascript SDK`s function; I am using the same path that was successful there.
One question is: shouldn`t I enter path of files which exist in this App folder?
. . . (take in mind root namespace has to be the same for business accounts)? 🧐What is root namespace?
. . . If you're trying to pass local path, it won't work, . . .What you mean by local path. If I have a file named "Iran4K.mp4" in this App folder, should n`t I enter like this:
CreateSharedLinkWithSettingsAsync("/Iran4K.mp4")
Thanks in advance
- Greg-DBDropbox Staff
Esikhoob A 'path/malformed_path' error would indicate that the path value is invalid due to not being formed correctly; for example, this can occur if there is whitespace at the end of the path value.
A 'path/not_found' error would indicate that the path value is properly formed, but nothing was found at the specified path in the connected account/root.
Apps with the "app folder" access type are automatically rooted in the special app folder created for the app in the connected account, so yes, if you have a file named "Iran4K.mp4" directly in the app folder in the connected account, you would use a path value of "/Iran4K.mp4".
To list the contents of whatever root your app is accessing, such as the app folder, you can use ListFolderAsync/ListFolderContinueAsync starting with 'path' set to the empty string "'.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,875 PostsLatest Activity: 42 minutes agoIf you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!