Import from Dropbox
import_from_dropboxImport Dropbox folders into a board. Use this for files that live in the user's Dropbox, including private and team folders — upload_from_url cannot reach those. Google Drive and Dropbox are connected ONCE, by a person, in the Playbook web app — there is no tool that connects them. Connections belong to a Playbook user: this server only sees connections made by the same Playbook account it is signed in as. When list_import_sources has no source with the needed provider, its connect_url is where a person connects that service; the source is listed once they have. FOLDERS: pass the folder URL from the Dropbox address bar (https://www.dropbox.com/home/… on a personal account, /work/… for a team member), its path (/Clients/Acme), or an id: key. Shared links (dropbox.com/scl/…) are refused; the address-bar URL or the path is required. Every folder is checked against the connected Dropbox account first; one it cannot find is refused with the account's email. RE-SYNC: importing the same folder into the same board_token skips files already there unchanged (compared by Dropbox content hash), so a recurring sync should reuse the board. A file changed in Dropbox is added as a SECOND asset next to the old one, and renaming the Dropbox folder or its sub-board imports that folder again in full. Files that were first imported before this skipping shipped are downloaded again on every re-sync; the copies are usually merged away, but a workspace with duplicate merging turned off, or an asset kept in a group, ends up with real duplicates. Import into a new board to get skipping for them. WHERE FILES LAND: each folder becomes a sub-board NAMED AFTER THE FOLDER inside the target board, with its sub-folders nested below — not the target board itself. Find it with list_board_children on board_token, or list_assets with nested_assets. The import is ASYNCHRONOUS: this returns a run in pending; poll get_import until status is completed or canceled. Plans without unrestricted imports allow one active import per workspace; the refusal names the active import's token, so poll that instead of retrying. Storage overage cannot be agreed to here: the call is refused when the workspace has no storage left before overage it has not agreed to, and the import is canceled (overlimit) before storing a file that would cross it. A rate-limit error carries a retry delay — wait that long. Requires a write-scope token and workspace owner/admin permission.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| folders | Yes | 1–20 Dropbox folders: address-bar URLs (https://www.dropbox.com/home/… or /work/…), paths (/Clients/Acme) or `id:` keys. Folders only — a file, a shared link or the Dropbox root is refused. | |
| board_token | No | Board to import into; each folder lands in a sub-board of it. Omit to create a new top-level board named 'Dropbox import (date)'; pass the board from an earlier run to re-sync it. A deleted board is not found. | |
| organization | No | Workspace slug, as returned by list_organizations. Omit it when the account has a single workspace — it is then resolved from your token. Pass it only when the account has several, or when you mean a workspace other than the obvious one. | |
| source_token | Yes | Token of a `dropbox` source from list_import_sources |