Reference · Tools

Box

Manage files and folders in Box cloud content management. Download, upload, copy, delete, search, share files, and create, delete, get, search, share, update folders.

Action (binary) Data & Storage v1 Binary data

The Box node lets you manage files and folders in Box cloud storage directly from a BusyBot workflow. You can download binary files, upload content, copy, delete, search, and create Box collaborations with specific permission roles. A typical use case is automatically archiving processed reports to a Box folder and sharing them with a team member in one workflow run.

Node type
Action (binary)
Parameters
50
Outputs
Output, Error
Credentials
Box OAuth2

Box

Manage files and folders in Box cloud content management

Overview

The Box tool provides comprehensive file and folder management for Box cloud content management. It supports file operations (copy, delete, download, get metadata, search, share via collaboration, upload) and folder operations (create, delete, get metadata, search, share via collaboration, update properties). File download fetches binary content from Box and stores it in the binary store. File upload reads binary data from the item and uploads it to Box via multipart form data. Sharing creates Box collaborations with granular permission roles. Search supports both file and folder types with extensive filtering options. Uses OAuth2 authentication with automatic token refresh.

Category: Data & Storage
Tool Name: box
Version: 1

Appearance: Icon: si-box | Color: #0061D5

Node Type

Action (Binary) — handles file/binary data operations

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires Box OAuth2 credentials. See the Credentials Guide for setup instructions.

Resources

ResourceValue
Filefile
Folderfolder

Operations

Operations for the file resource:

OperationValueDescription
CopycopyCopy a file
DeletedeleteDelete a file
DownloaddownloadDownload a file
GetgetGet file metadata
SearchsearchSearch files
ShareshareShare a file via collaboration
UploaduploadUpload a file

Operations for the folder resource:

OperationValueDescription
CreatecreateCreate a folder
DeletedeleteDelete a folder
GetgetGet folder metadata
SearchsearchSearch folders
ShareshareShare a folder via collaboration
UpdateupdateUpdate folder properties

Parameters

File: Copy

ParameterTypeRequiredDefaultDescription
File IDstringYesThe ID of the file to copy.
Parent IDstringNoID of the destination folder. If not defined, the file is copied to the root folder (0).
Additional FieldscollectionNo{}Optional settings for the copy.
— FieldsstringNoComma-separated list of attributes to include in the response.
— NamestringNoAn optional new name for the copied file.
— VersionstringNoAn optional ID of the specific file version to copy.

File: Delete

ParameterTypeRequiredDefaultDescription
File IDstringNoThe ID of the file to delete.

File: Download

ParameterTypeRequiredDefaultDescription
File IDstringNoThe ID of the file to download.
Binary PropertystringYesdataName of the binary property to write the downloaded file to. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use.

File: Get

ParameterTypeRequiredDefaultDescription
File IDstringNoThe ID of the file to retrieve metadata for.
Additional FieldscollectionNo{}Optional settings for the lookup.
— FieldsstringNoComma-separated list of attributes to include in the response.
ParameterTypeRequiredDefaultDescription
QuerystringNoThe search query. Matched against item names, descriptions, text content, and other fields.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. Accepts 1–500. (shown when Return All is false)
Additional FieldscollectionNo{}Filters and sorting for the search.
— Content TypesstringNoComma-separated list of Box recognized content types.
— Created At RangefixedCollectionNo{}Restrict results to items created between two dates. Both ends must be set.
— — FromstringNoISO 8601 date string for range start.
— — TostringNoISO 8601 date string for range end.
— DirectionoptionsNoSort direction.
Options: ASC, DESC
— FieldsstringNoComma-separated list of response attributes.
— File ExtensionsstringNoComma-separated list of file extensions (e.g., pdf,png,gif).
— Folder IDsstringNoComma-separated folder IDs to limit search scope.
— ScopeoptionsNoLimits search results to a scope.
Options: user_content, enterprise_content
— Size RangestringNoComma-separated byte size range (e.g., 1000000,5000000).
— SortoptionsNorelevanceSort order for results.
Options: relevance, modified_at
— Trash ContentoptionsNonon_trashed_onlyControls if search results include trashed items.
Options: non_trashed_only, trashed_only
— Updated At RangefixedCollectionNo{}Restrict results to items updated between two dates. Both ends must be set.
— — FromstringNoISO 8601 date string for range start.
— — TostringNoISO 8601 date string for range end.
— User IDsstringNoComma-separated owner user IDs to filter results.

File: Share

ParameterTypeRequiredDefaultDescription
File IDstringNoThe ID of the file to share.
Accessible ByoptionsNoThe type of entity the file will be shared with.
Options: group, user
Use EmailbooleanNotrueWhether to identify the user by email or ID. (shown when Accessible By is user)
EmailstringNoThe email address of the user to share the file with. (shown when Accessible By is user and Use Email is true)
User IDstringNoThe ID of the user to share the file with. (shown when Accessible By is user and Use Email is false)
Group IDstringNoThe ID of the group to share the file with. (shown when Accessible By is group)
RoleoptionsNoeditorThe level of access granted.
Options: coOwner (all functional read/write access an editor has), editor (full read/write access), previewer (limited read access), previewerUploader, uploader (limited write access), viewer (read access), viewerUploader
OptionscollectionNo{}Optional settings for the collaboration.
— Can View PathbooleanNofalseWhether invited users can see the entire parent path to the associated folder.
— Expires AtstringNoExpiration date for the collaboration (ISO 8601).
— FieldsstringNoComma-separated list of response attributes.
— NotifybooleanNofalseWhether to send email notification for the action.

File: Upload

ParameterTypeRequiredDefaultDescription
File NamestringNoThe name the file should be saved as in Box.
Binary FilebooleanYesfalseWhether the data to upload should be taken from the binary field.
Binary PropertystringYesdataName of the binary property 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 ContentstringNoThe text content of the file to upload. (shown when Binary File is false)
Parent IDstringNoID of the parent folder to upload the file to. If not defined, it will be uploaded to the root folder.

Folder: Create

ParameterTypeRequiredDefaultDescription
NamestringYesName for the new folder.
Parent IDstringNoID of the parent folder. If not defined, the folder is created in the root folder (0).
OptionscollectionNo{}Optional settings applied when the folder is created.
— AccessoptionsNoEmail upload access level for the folder.
Options: collaborators (only emails from registered collaborator addresses are accepted), open (accepts emails from any address)
— FieldsstringNoComma-separated list of response attributes.

Folder: Delete

ParameterTypeRequiredDefaultDescription
Folder IDstringNoThe ID of the folder to delete.
RecursivebooleanNofalseWhether to recursively delete a non-empty folder and all of its content.

Folder: Get

ParameterTypeRequiredDefaultDescription
Folder IDstringNoThe ID of the folder to retrieve.
ParameterTypeRequiredDefaultDescription
QuerystringNoThe search query. Matched against item names, descriptions, text content, and other fields.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. Accepts 1–500. (shown when Return All is false)
Additional FieldscollectionNo{}Filters and sorting for the search.
— Content TypesstringNoComma-separated list of Box recognized content types.
— Created At RangefixedCollectionNo{}Restrict results to items created between two dates. Both ends must be set.
— — FromstringNoISO 8601 date string.
— — TostringNoISO 8601 date string.
— DirectionoptionsNoSort direction.
Options: ASC, DESC
— FieldsstringNoComma-separated list of response attributes.
— File ExtensionsstringNoComma-separated list of file extensions.
— Folder IDsstringNoComma-separated folder IDs to limit search scope.
— ScopeoptionsNoLimits search results to a scope.
Options: user_content, enterprise_content
— Size RangestringNoComma-separated byte size range.
— SortoptionsNorelevanceSort order.
Options: relevance, modified_at
— Trash ContentoptionsNonon_trashed_onlyControls if search results include trashed items.
Options: non_trashed_only, trashed_only
— Updated At RangefixedCollectionNo{}Restrict results to items updated between two dates. Both ends must be set.
— — FromstringNoISO 8601 date string.
— — TostringNoISO 8601 date string.
— User IDsstringNoComma-separated owner user IDs.

Folder: Share

ParameterTypeRequiredDefaultDescription
Folder IDstringNoThe ID of the folder to share.
Accessible ByoptionsNouserThe type of entity the folder will be shared with.
Options: user, group
Use EmailbooleanNotrueWhether to identify the user by email or ID. (shown when Accessible By is user)
EmailstringNoThe email address of the user to share the folder with. (shown when Accessible By is user and Use Email is true)
User IDstringNoThe ID of the user to share the folder with. (shown when Accessible By is user and Use Email is false)
Group IDstringNoThe ID of the group to share the folder with. (shown when Accessible By is group)
RoleoptionsNoeditorThe level of access granted.
Options: coOwner (all functional read/write access an editor has), editor (full read/write access), previewer (limited read access), previewerUploader, uploader (limited write access), viewer (read access), viewerUploader
OptionscollectionNo{}Optional settings for the collaboration.
— Can View PathbooleanNofalseWhether invited users can see the entire parent path.
— Expires AtstringNoExpiration date for the collaboration (ISO 8601).
— FieldsstringNoComma-separated list of response attributes.
— NotifybooleanNofalseWhether to send email notification.

Folder: Update

ParameterTypeRequiredDefaultDescription
Folder IDstringYesThe ID of the folder to update.
Update FieldscollectionNo{}Properties to change on the folder.
— Can Non-Owners InvitebooleanNofalseWhether users who are not the owner can invite new collaborators.
— Can Non-Owners View CollaboratorsbooleanNofalseWhether non-owners can view other collaborations.
— DescriptionstringNoThe description of this folder.
— FieldsstringNoComma-separated list of response attributes.
— Is Collaboration Restricted To EnterprisebooleanNofalseWhether new invites are restricted to enterprise users.
— NamestringNoThe new name for this folder.
— Parent IDstringNoMove the folder to a new parent folder by providing its ID.
— Shared LinkcollectionNo{}Shared link configuration.
— — AccessoptionsNoopenWho can open the shared link.
Options: collaborators (only those invited to the folder), company (only people within the company), open (anyone with the link)
— — PasswordstringNoPassword required to access the shared link.
— — PermissionscollectionNo{}What the shared link allows.
— — — Can DownloadbooleanNofalseWhether the shared link allows downloading.
— — — Unshared AtstringNoTimestamp at which the shared link expires (ISO 8601).
— — — Vanity NamestringNoCustom vanity name for the shared link URL.
— — TagsstringNoComma-separated tags for the folder.

All Operations

ParameterTypeRequiredDefaultDescription
Box AccountcredentialNoConnect your Box account via OAuth2.
Max ConcurrencynumberNo10Maximum 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 the two search operations. The Box API response is merged onto the input item’s JSON, so the properties you started with remain available. Binary data on the input item is forwarded.

Resource / OperationOutput
File copy, File get, File uploadThe Box file object — id, name, size, parent, and the rest of the fields Box returns.
File downloadThe item JSON unchanged, with the file attached as binary under the property named in Binary Property.
File share, Folder shareThe Box collaboration object created for the invitation.
File delete, Folder deletesuccess: true.
File search, Folder searchAn array of matching Box objects under results on a single item.
Folder create, Folder get, Folder updateThe Box folder object.

Search results arrive as one array, not one item per hit. Add a Split Out node on results when you want to process each match separately:

{
  "results": [
    { "id": "12345", "type": "file", "name": "report.pdf" }
  ]
}

Downloads. The node reads the file’s metadata first so the binary property carries Box’s own file name, and takes the MIME type from the download response. Because the JSON is untouched, address the file through the binary property rather than the item JSON.

Uploads. With Binary File on, the bytes come from the named binary property; with it off, the text in File Content is uploaded instead. File Name sets the name in Box, and Parent ID the destination folder — leave it empty for the root folder.

Reference results downstream by expression, e.g. {{ $json.id }} or {{ $json.results[0].name }}.

Usage Examples

  • Download a file from Box by ID
  • Upload a binary file to a Box folder
  • Copy a file to another Box folder
  • Search for files matching a query
  • Share a folder with a user by email
  • Create a new folder in Box
  • Update folder properties including shared links

Example Configuration

Download a file into the data binary property:

{
  "type": "box",
  "parameters": {
    "resource": "file",
    "operation": "download",
    "fileId": "{{ $json.fileId }}",
    "binaryPropertyName": "data"
  }
}

Upload a binary file into a folder:

{
  "type": "box",
  "parameters": {
    "resource": "file",
    "operation": "upload",
    "fileName": "{{ $json.title }}.pdf",
    "binaryData": true,
    "binaryPropertyName": "data",
    "parentId": "0"
  }
}

Upload plain text without any binary input:

{
  "type": "box",
  "parameters": {
    "resource": "file",
    "operation": "upload",
    "fileName": "summary.txt",
    "binaryData": false,
    "fileContent": "{{ $json.summary }}",
    "parentId": "{{ $json.folderId }}"
  }
}

Search for recent PDFs inside a folder tree:

{
  "type": "box",
  "parameters": {
    "resource": "file",
    "operation": "search",
    "query": "{{ $json.term }}",
    "returnAll": false,
    "limit": 50,
    "additionalFields": {
      "file_extensions": "pdf",
      "ancestor_folder_ids": "12345",
      "sort": "modified_at",
      "direction": "DESC",
      "trash_content": "non_trashed_only",
      "updatedRangeUi": {
        "updatedRangeValuesUi": {
          "from": "2026-01-01T00:00:00Z",
          "to": "2026-01-31T23:59:59Z"
        }
      }
    }
  }
}

Copy a file into another folder under a new name:

{
  "type": "box",
  "parameters": {
    "resource": "file",
    "operation": "copy",
    "fileId": "{{ $json.id }}",
    "parentId": "67890",
    "additionalFields": {
      "name": "{{ $json.name }} (archive)"
    }
  }
}

Share a file with a user by email as a viewer:

{
  "type": "box",
  "parameters": {
    "resource": "file",
    "operation": "share",
    "fileId": "{{ $json.id }}",
    "accessibleBy": "user",
    "useEmail": true,
    "email": "{{ $json.email }}",
    "role": "viewer",
    "options": {
      "notify": true,
      "expires_at": "2026-12-31T00:00:00Z"
    }
  }
}

Create a folder, then publish a password-protected shared link on it:

{
  "type": "box",
  "parameters": {
    "resource": "folder",
    "operation": "create",
    "name": "{{ $json.projectName }}",
    "parentId": "0",
    "options": {
      "access": "collaborators"
    }
  }
}
{
  "type": "box",
  "parameters": {
    "resource": "folder",
    "operation": "update",
    "folderId": "{{ $json.id }}",
    "updateFields": {
      "description": "Deliverables for {{ $json.projectName }}",
      "shared_link": {
        "access": "company",
        "password": "{{ $json.linkPassword }}",
        "permissions": {
          "can_download": true,
          "unshared_at": "2026-12-31T00:00:00Z"
        }
      }
    }
  }
}

Delete a folder and everything inside it:

{
  "type": "box",
  "parameters": {
    "resource": "folder",
    "operation": "delete",
    "folderId": "{{ $json.id }}",
    "recursive": true
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

Manage Box files and folders — download, upload, copy, delete, search, share, and update via the Box API.

Frequently asked questions

What credentials do I need to connect the Box node?

The Box node uses Box OAuth2 credentials (credential type: boxOAuth2). You'll need to create an OAuth2 app in the Box Developer Console, then configure the client ID and client secret in BusyBot. The node handles token refresh automatically, so your workflows won't break when access tokens expire.

How does file download work — where does the downloaded content go?

When you use the Download operation, the node fetches the file's binary content from Box and stores it in BusyBot's binary store, not as a JSON field. This means the result is available as binary data on the item, ready to be passed to another node that handles binary files — such as a node that writes to disk or sends the file as an email attachment.

How does file upload work — what format does the node expect?

File upload reads binary data already present on the BusyBot item and sends it to Box using multipart form data, which is what the Box API requires for uploads. Your workflow needs to have loaded the binary content into the item before reaching the Box node — for example, using a Read Binary File node or a Download node earlier in the flow.

What does 'share' actually do — does it generate a shared link or invite someone?

The Share operation for both files and folders creates a Box collaboration, not a public shared link. A collaboration in Box is a formal invite that grants a specific user or group access with a defined permission role (such as viewer, editor, or co-owner). If you need a public URL instead, that is a different Box API feature not covered by this node.

What happens if a Box API call fails — how do I handle errors in my workflow?

The Box node has two separate outputs: Output and Error. Successful operations route through Output; failed operations — such as a file not found or an authorization problem — route through the Error output. This lets you branch your workflow to handle failures explicitly, such as logging the error or retrying, without the entire workflow stopping.

Build with the Box node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Box OAuth2 credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.