Move files in and out of Box
Box is now a transfer source and destination: copy Box files and folders anywhere Beam reaches, or write into Box folders, from Studio or the TypeScript and Python SDKs, with your Box tokens kept on your side.
Box in every Studio workflow
Each Studio connects to Box through a Box app of its own, registered once by the organization that owns it. Members connect their Box accounts under Credentials, then pick a Box file or folder as a source, or a Box folder as a destination, in any workflow. An AI agent can do the same through Studio's MCP server. Box tokens stay in Studio: workers get a download link, or a token that can upload to one file only.
Large files, committed with their SHA-1
Workers upload files of 20 MiB or more straight into Box upload sessions, and Box commits each one only when given the SHA-1 of the whole file. A Box file, or an S3 or R2 object stored with a SHA-1 checksum, already has one, and only that value is passed on. For any other source, independent operators read the source to compute it; Beam's servers never read the file.
- Box connections in Studio: the owning organization registers its Box app under Settings, Access, Box app, and members connect Box accounts under Credentials.Studio
- Box endpoints in workflows: a Box file or folder as a source, a Box folder as the destination. The Beam Transfer action 1.8.0 writes one transfer per file.Studio
- Studio's MCP server adds beam.list_box_folder and beam.start_box_transfer.Studio
- TypeScript SDK 0.11.0 and Python SDK 0.15.0: Box sources, including whole folders, and Box folder destinations.SDK
How it works
Box is now a transfer source and a transfer destination. Box addresses items by ID, so a source is a Box file or folder and a destination is a Box folder. Your Box access token stays with you, in your Studio or in your SDK process, and workers never receive it.
Get started
- In Studio, update to v1.0.23 and update the Beam Transfer action to 1.8.0 on the Registry page. The organization that owns the Studio registers a Box app once, under Settings, Access, Box app.
- Connect a Box account under Credentials, then choose it in any source or destination endpoint to pick a Box file or folder.
- An AI agent can list a Box folder and start a Box transfer through Studio's MCP server, using the connections already in Studio.
- In code, update to @beam-network/sdk 0.11.0 or beam-network-sdk 0.15.0, and use the Box source and destination configs with a Box access token from your own Box app.
Costs and limits
- A Box transfer is priced like any other transfer. Studio starts one transfer per file, so a folder of many small files pays the per-transfer price for each file.
- Computing a SHA-1 reads the source two or three more times, which your storage provider may bill as egress, and works for files up to about 13.8 GiB. Storing the SHA-1 with the object avoids both.
- Box's free plan caps files at 250 MB, and Box allows about 240 upload requests per minute per user. Beam runs at most two upload sessions per Box user at a time; further transfers wait rather than fail.
What it does not do
- A Box destination is its transfer's only destination: a step that writes to Box writes nowhere else.
- A Hugging Face or plain-HTTP source of 20 MiB or more has no SHA-1 Beam can use, and is refused before anything is written.
- In Studio, a storage source other than Box names one object; copy several objects with one source per object.
- The Go and Rust SDKs and the CLI do not support Box. The SDKs never refresh your Box token; that stays with your own Box app.