Download File
box.download_file
ActionFiles & storageconnection required
Calls the Box API with the connection's credentials.
Download a file's content and emit it as the shared base64 file envelope, ready to hand to a storage or mail node.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- OAuth 2.0
- Providers
- Box
- Secret shape
- {"client_id": "…", "client_secret": "…", "box_subject_type": "enterprise|user", "box_subject_id": "…"} for a server-authentication app, or {"client_id": "…", "client_secret": "…", "refresh_token": "…"} for OAuth2
- Resolved by
- config.connection_id, else node.connection_id
Configuration
2 fields, 1 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
file_id The id of the file to download. | string | Yes | — | — | — |
version A specific file-version id to download. Leave blank for the current version. | string | No | — | — | — |
Output
One shape.
result
| Field | Type | Example |
|---|---|---|
file_content The file, base64-encoded. | string | — |
content_encoding | string | base64 |
filename | string | app-main.zip |
content_type | string | application/zip |
size Raw size in bytes (before base64). | number | — |
file_id The Box file id that was downloaded. | string | — |
{
"content_encoding": "base64",
"content_type": "application/zip",
"file_content": "",
"file_id": "",
"filename": "app-main.zip",
"size": 0
}Notes
- Uploads go to upload.box.com and everything else to api.box.com; the nodes pick the right host for you.
- Use a Box server-authentication (Client Credentials) app for anything unattended: its credential can be exchanged for a token indefinitely. A plain OAuth2 refresh token is spent by its first use, so that connection needs re-authorising.
- The root folder always has the id '0'.
- The file is held in memory and capped by MANTLE_BINARY_MAX_BYTES; a larger file fails the step instead of exhausting the worker.
See Download File run in a workflow.
In a technical demo we add the Box connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.