We are aware of the issue with the badge emails resending to everyone, we apologise for the inconvenience - learn more here.
Forum Discussion
Babel3d
7 years agoNew member | Level 2
Webhook notification .NET
Hello,
I am working on a .NET app, which is integrated with the dropbox api. I managed to upload, list, delete files without any problems. Now, I am trying to use webhooks for my app. I have a dedicated dropbox account which linked to my app and this account has "full access" to my dropbox storage.
We want Dropbox to notify my app when files are added or deleted. After going through documentation [https://www.dropbox.com/developers/reference/webhooks#tutorial], I am managed to get webhook trigger on file add/delete of a file in my storage using ListFolderContinue API. So far so good.
Here is mode code snippet
//--------------------------------- var cursor = getPreviousCursor( user); // to get previously stored cursor using (var client = new DropboxClient(accessToken)) { ListFolderResult list = await client.Files.ListFolderContinueAsync(cursor); bool bHasMore = true; while (bHasMore) { foreach (var entry in list.Entries) { if (entry.IsDeleted || entry.IsFolder) continue; string fname = entry.Name; } cursor = list.Cursor; bHasMore = list.HasMore; UpdateCursor(user, cursor); // to store latest cursor } } //--------------------------------
Now here comes the problem that I am facing.
Above code works only if I modify files in root folder ("/") folder of the dropbox storage. If I modify a file in a folder e.g. "/Sample/Project/test.txt", I receive webhook trigger but "ListFolderResult list" is always empty.
To sumarize I am not getting information of modified files in the folders except root folder of dropbox storage.
Please help.
- By default, the listFolder/listFolderContinue methods will only return items in the folder you specify, and not in nested folders under that.
If you want nested results, you'll need to set recursive=true when first calling listFolder:
https://dropbox.github.io/dropbox-sdk-dotnet/html/M_Dropbox_Api_Files_Routes_FilesUserRoutes_ListFolderAsync_1.htm
- Greg-DBDropbox StaffBy default, the listFolder/listFolderContinue methods will only return items in the folder you specify, and not in nested folders under that.
If you want nested results, you'll need to set recursive=true when first calling listFolder:
https://dropbox.github.io/dropbox-sdk-dotnet/html/M_Dropbox_Api_Files_Routes_FilesUserRoutes_ListFolderAsync_1.htm- Babel3dNew member | Level 2
Thanks. It worked.
- pcuycsExplorer | Level 3
hi Babel3d , Greg-DB
I'm working with dropbox webhook using asp.net api
I was created 2 uri, one for verify, another for received response message from dropbox and both are successfully.
the response message content
{"list_folder": {"accounts": ["dbid:yyyyyyyyyyyyy"]}, "delta": {"users": [xxxxxxxxxxxx]}}But with above message
1. I don't know what are type of notifications raised? Add, Modified, Moved, Deleted -> at files & folders level ?
2. How do i know what is the file name and who has changed?
3. what does [xxxxxxxxxxxx] mean?
thanks for help!- Greg-DBDropbox Staff
pcuycs I recommend reviewing the webhooks tutorial and documentation (be sure to switch to the "documentation" tab for that) as it covers this in detail:
https://www.dropbox.com/developers/reference/webhooks
To answer your specific questions though:
- Webhook notifications are sent for any kind of file/folder changes.
- The notifications themselves don't indicate what changed, only that something changed. You need to call the list_folder endpoints to determine what changed.
- The "xxxxxxxxxxxx" in your sample is the old API v1 style of user IDs. You do not need to use it. It conveys the same information as the new API v2 style (e.g., "dbid:yyyyyyyyyyyyy" in your sample) which you should use.
- pcuycsExplorer | Level 3
thanks Greg-DB
I read it,
I store the latest cursor and deleted 1,2.. files on the dropbox, but when used postman to call https://api.dropboxapi.com/2/files/list_folder/continue api, i don't see any entries item
What have i done wrong?
image link: http://prntscr.com/mroei2
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,877 PostsLatest Activity: 12 months 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!