workflows.fit
Back to n8n workflows
n8n templateFreeBy David Levesque

Monitor Dropbox folders for new files with DB comparison

Here's the corrected English text: Dropbox Folder Monitoring Workflow As we don't have (yet?) a Dropbox node "Watching new files" or "Watching folder", I created this central workflow to do it. How it works - Triggere...

Data & StorageCore NodesDevelopmentUtilityWebhookSticky NoteDropboxSwitch
Loading interactive preview...

Template notes

Here's the corrected English text:

Dropbox Folder Monitoring Workflow

As we don't have (yet?) a Dropbox node "Watching new files" or "Watching folder", I created this central workflow to do it.

How it works - Triggered by Dropbox webhook - I respond immediately to Dropbox to avoid webhook disabling - Then I add/duplicate one branch per monitored folder, according to my needs

In my case, I need to monitor several folders, like "vocal notes to process", "transcriptions to LinkedIn posts" or "quotes to add".

This workflow shows 2 types of folder monitoring: 1. Way 1: Each file in the monitored folder calls a sub-workflow 2. Way 2: We get all files from the monitored folder and compare them to a database. If the file is not listed in DB, i supposed it's new one.

Way 1 - We get all files from the monitored folder 1. I set a variable foldertowatch to indicate which folder to monitor. This step is here just to be homogeneous and allow setting the folder path only once in this branch. 2. I list the folder files 3. We keep only files (exclude folders) 4. Then I call the specialized sub-workflow

Way 2 - We want only new files from the monitored folder 1. I set a variable foldertowatch to indicate which folder to monitor 2. I list the folder files and keep only files 3. Meanwhile, I query my DB to get known files about this folder (I send the query to NocoDB (foldertowatch,eq,{{ $json.foldertowatch }})) 4. Now I can exclude old files and keep only new ones by merging (I compare from Dropbox file id - as the file could be renamed by the user) 5. I add the new file in DB to be sure to recognize it next time - I save the JSON Dropbox data: