Reference · Tools
Dropbox
Manage files and folders in Dropbox cloud storage. Upload, download, copy, move, delete files and folders, list folder contents, and search.
The Dropbox node lets you read, write, and organize files in Dropbox directly from a BusyBot workflow. It covers three resource types — File, Folder, and Search — so you can do things like pull a report from an upstream step and upload it straight to a shared Dropbox folder without manual intervention. A typical use case is automatically archiving processed data files or syncing generated documents to a client-facing Dropbox location.
- Node type
- Action (binary)
- Parameters
- 28
- Outputs
- Output, Error
- Credentials
- Dropbox OAuth2
Dropbox
Manage files and folders in Dropbox cloud storage
Overview
The Dropbox tool provides full file and folder management for Dropbox cloud storage. Supports three resources: (1) File — copy, delete, download (binary), move, upload (binary or text); (2) Folder — copy, create, delete, list (with cursor-based pagination), move; (3) Search — query files/folders with filters. Download produces binary data via binaryStore. Upload reads binary data from upstream items or accepts text content. Uses Dropbox API v2 with OAuth2 authentication and automatic token refresh. Supports root namespace resolution for full Dropbox access.
Category: Data & Storage
Tool Name: dropbox
Version: 1
Appearance: Icon: si-dropbox | Color: #0061FE
Node Type
Action (Binary) — handles file/binary data operations
Input / Output
| Direction | Port(s) |
|---|---|
| Input | Input |
| Output | Output, Error |
Credentials
This tool requires Dropbox OAuth2 credentials. See the Credentials Guide for setup instructions.
Resources
| Resource | Value |
|---|---|
| File | file |
| Folder | folder |
| Search | search |
Operations
Operations for the file resource:
| Operation | Value | Description |
|---|---|---|
| Copy | copy | Copy a file |
| Delete | delete | Delete a file |
| Download | download | Download a file |
| Move | move | Move a file |
| Upload | upload | Upload a file |
Operations for the folder resource:
| Operation | Value | Description |
|---|---|---|
| Copy | copy | Copy a folder |
| Create | create | Create a folder |
| Delete | delete | Delete a folder |
| List | list | List folder contents |
| Move | move | Move a folder |
Operations for the search resource:
| Operation | Value | Description |
|---|---|---|
| Query | query | Search for files and folders |
Parameters
File: Copy
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| From Path | string | Yes | — | The path of the file or folder to copy. |
| To Path | string | Yes | — | The destination path for the copy. |
File: Delete
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Path | string | Yes | — | The path to delete. Can be a single file or a whole folder. |
File: Download
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| File Path | string | Yes | — | The full file path to download. |
| Binary Property | string | Yes | data | The name of the output binary field to put the downloaded file in. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. |
File: Move
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| From Path | string | Yes | — | The path of the file or folder to move. |
| To Path | string | Yes | — | The new path for the file or folder. |
File: Upload
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| File Path | string | Yes | — | The destination file path on Dropbox. The parent folder must exist. Existing files get overwritten. |
| Binary File | boolean | No | false | Whether to upload data from a binary field (true) or text content (false). |
| Binary Property | string | Yes | data | The name of the input binary field containing the file to upload. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. (shown when Binary File is true) |
| File Content | string | No | — | The text content of the file to upload. (shown when Binary File is false) |
Folder: Copy
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| From Path | string | Yes | — | The path of the file or folder to copy. |
| To Path | string | Yes | — | The destination path for the copy. |
Folder: Create
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Folder Path | string | Yes | — | The folder to create. The parent folder must exist. |
Folder: Delete
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Path | string | Yes | — | The path to delete. Can be a single file or a whole folder. |
Folder: List
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Folder Path | string | No | — | The path of the folder to list. Leave empty for root. |
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. |
| Limit | number | No | 100 | Max number of results to return. (shown when Return All is false) |
| Filters | collection | No | {} | What the listing includes. |
| — Include Deleted | boolean | No | false | Whether to include deleted entries in results. |
| — Include Shared Members | boolean | No | false | Whether to flag files with explicit shared members. |
| — Include Mounted Folders | boolean | No | true | Whether to include mounted (shared/team) folders. |
| — Include Non-Downloadable Files | boolean | No | true | Whether to include non-downloadable files (e.g., Google Docs). |
| — Recursive | boolean | No | false | Whether to recursively list all subfolders. |
Folder: Move
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| From Path | string | Yes | — | The path of the file or folder to move. |
| To Path | string | Yes | — | The new path for the file or folder. |
Search: Query
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Query | string | Yes | — | The string to search for. May match across multiple fields. |
| File Status | options | No | active | Filter by file status (active or deleted). |
Options: active, deleted | ||||
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. |
| Limit | number | No | 100 | Max number of results to return. (shown when Return All is false) |
| Simplify | boolean | No | true | Whether to return a simplified version of the response instead of the raw data. |
| Filters | collection | No | {} | Narrow the search. |
| — File Categories | multiOptions | No | [] | Filter results by file category. |
Options: audio (mp3, wav, mid, etc.), document (doc, docx, txt, etc.), paper (Dropbox Paper), folder, image (jpg, png, gif, etc.), other, pdf, presentation (ppt, pptx, key, etc.), spreadsheet (xlsx, xls, csv, etc.), video (avi, wmv, mp4, etc.) | ||||
| — File Extensions | string | No | — | Filter by file extensions. Comma-separated (e.g., jpg,pdf). |
| — Folder | string | No | — | Restrict search to a specific folder path. If empty, searches entire Dropbox. |
All Operations
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Dropbox Account | credential | No | — | Connect your Dropbox account via OAuth2. |
| Max Concurrency | number | No | 10 | Maximum number of items to process concurrently. Accepts 1–100. |
Output Data
Every operation produces exactly one output item per input item — nothing fans out, including list and query. Results are merged onto the input item’s JSON, so the properties you started with remain available. Binary data on the input item is forwarded, and download adds the file to it.
| Resource / Operation | Output |
|---|---|
File copy, File move, File delete, File upload | The Dropbox metadata for the affected file — name, id, path_lower, path_display, size and the rest of the fields Dropbox returns. |
File download | The item JSON unchanged, with the file attached as binary under the property named in Binary Property. |
Folder create, Folder copy, Folder move, Folder delete | The Dropbox metadata for the affected folder. |
Folder list | entries — an array of the folder’s contents — plus totalCount. |
Search query | matches — an array of search hits — plus totalCount. |
Listings and searches arrive as one array, not one item per hit. Add a Split Out node on entries or matches when you want to process each result separately.
Each entries element is normalised to camelCase:
{
"entries": [
{
"type": "file",
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"name": "invoice_1.pdf",
"pathLower": "/invoices/2019/invoice_1.pdf",
"pathDisplay": "/invoices/2019/invoice_1.pdf",
"rev": "015f8f2f1c1b0000000",
"contentSize": 24601,
"contentHash": "…",
"lastModifiedClient": "2026-01-14T10:00:00Z",
"lastModifiedServer": "2026-01-14T10:00:02Z",
"hasExplicitSharedMembers": false,
"isDownloadable": true
}
],
"totalCount": 1
}
typeis Dropbox’s own tag —file,folderordeleted.contentSize,contentHash,lastModifiedClientandlastModifiedServerare present only on files.
Search results. With Simplify on (the default), each match is flattened — the nested metadata object is lifted onto the match itself and match_type is reduced to its plain tag, so a hit reads much like a listing entry. Turn Simplify off to receive Dropbox’s raw match objects.
Uploads always overwrite an existing file at the destination path, and the parent folder has to exist already — create it with a Folder create step first if it might not.
Reference results downstream by expression, e.g. {{ $json.entries[0].pathDisplay }} or {{ $json.totalCount }}.
Usage Examples
- Download a file from Dropbox
- Upload a binary file to Dropbox
- List all files in a Dropbox folder
- Search for PDFs in Dropbox
- Copy a file to another Dropbox folder
- Create a new folder in Dropbox
- Move a file within Dropbox
Example Configuration
Download a file into the data binary property:
{
"type": "dropbox",
"parameters": {
"resource": "file",
"operation": "download",
"path": "{{ $json.pathDisplay }}",
"binaryPropertyName": "data"
}
}
Upload a binary file, overwriting whatever is at the path:
{
"type": "dropbox",
"parameters": {
"resource": "file",
"operation": "upload",
"path": "/invoices/2026/{{ $json.invoiceId }}.pdf",
"binaryData": true,
"binaryPropertyName": "data"
}
}
Upload plain text without any binary input:
{
"type": "dropbox",
"parameters": {
"resource": "file",
"operation": "upload",
"path": "/reports/summary.txt",
"binaryData": false,
"fileContent": "{{ $json.summary }}"
}
}
Copy a file, then move another:
{
"type": "dropbox",
"parameters": {
"resource": "file",
"operation": "copy",
"path": "/invoices/original.txt",
"toPath": "/invoices/archive/original.txt"
}
}
{
"type": "dropbox",
"parameters": {
"resource": "file",
"operation": "move",
"path": "{{ $json.pathDisplay }}",
"toPath": "/processed/{{ $json.name }}"
}
}
Create a folder:
{
"type": "dropbox",
"parameters": {
"resource": "folder",
"operation": "create",
"path": "/invoices/{{ $json.year }}"
}
}
List a folder recursively, including subfolders:
{
"type": "dropbox",
"parameters": {
"resource": "folder",
"operation": "list",
"path": "/invoices/2026",
"returnAll": true,
"filters": {
"recursive": true,
"include_deleted": false,
"include_mounted_folders": true
}
}
}
Search for active PDFs inside one folder:
{
"type": "dropbox",
"parameters": {
"resource": "search",
"operation": "query",
"query": "{{ $json.term }}",
"fileStatus": "active",
"returnAll": false,
"limit": 50,
"simple": true,
"filters": {
"file_categories": ["pdf"],
"file_extensions": "pdf",
"path": "/invoices"
}
}
}
Delete a path — a single file or a whole folder:
{
"type": "dropbox",
"parameters": {
"resource": "folder",
"operation": "delete",
"path": "/invoices/temp"
}
}
Error Handling
| Mode | Behavior |
|---|---|
| stop | Halts workflow on first error |
| continue | Skips failed items, passes successful ones through |
| errorPort | Routes failed items to Error output port |
Tips
Manage Dropbox files and folders — upload, download, copy, move, delete, list, and search with binary data support.
Frequently asked questions
How does uploading a binary file work — can I pipe a file from an earlier step directly into this node?
Yes. The Upload operation reads binary data from the output of an upstream node, so if a previous step produces a file (an image, PDF, CSV, etc.), the Dropbox node can consume it directly without writing to disk first. You can also upload plain text content if you don't have a binary source. The node handles both modes through the same File > Upload operation.
What does the Download operation actually return — a URL or the file itself?
Download returns the actual binary file data via the node's binaryStore output, not a URL or a reference. That means the file contents are available as binary data to the next node in your workflow, so you can pass it immediately into something like an email attachment, a document parser, or another storage node.
What credentials does this node require, and do I need to re-authenticate when tokens expire?
The node uses Dropbox OAuth2 credentials (the dropboxOAuth2 credential type in BusyBot). Token refresh is handled automatically, so you authenticate once during setup and the node manages renewal in the background without requiring you to re-authorize on a schedule.
Can I list a large folder that has hundreds or thousands of files?
Yes. The Folder > List operation supports cursor-based pagination, which means it can work through large directories in multiple pages rather than returning everything in a single call or silently truncating results. You'll want to account for this in your workflow design if you're processing each file individually downstream.
Does the Search operation search only filenames, or can I filter results further?
The Search resource lets you query files and folders by a text string and supports filters on top of that query. The node uses Dropbox API v2 under the hood and also supports root namespace resolution, which gives you access to the full Dropbox including team folders — not just the authenticated user's personal files.
Build with the Dropbox node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Dropbox OAuth2 credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.