# Box — Pipedream Connect

> Platform for secure content management, workflow, and collaboration

- API slug: `box` (use in MCP headers and tool keys)
- Auth: OAuth (Pipedream-managed)
- Categories: File Storage
- Website: https://www.box.com
- This page (HTML): https://pipedream.com/apps/box
- Tools: 19 actions · 3 triggers

## Connect via MCP (recommended)

- Endpoint: `https://remote.mcp.pipedream.net/v3`
- Headers: `Authorization: Bearer <token>` · `x-pd-project-id` · `x-pd-environment` · `x-pd-external-user-id` · `x-pd-app-slug: box`

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "box",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// e.g. run Add Comment:
const result = await mcp.callTool({
  name: "box-add-comment",
  arguments: {
    folderId: "Parent Folder",
    fileId: "File",
  },
})
```

Docs: [MCP guide](https://pipedream.com/docs/connect/mcp/developers.md)

## API proxy

For a Box endpoint with no pre-built tool, the proxy forwards your request with the connected user's credentials attached.

```bash
# The path segment is the target URL, URL-safe base64 encoded:
# https://api.box.com/2.0/users/me

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9hcGkuYm94LmNvbS8yLjAvdXNlcnMvbWU?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
  -H "Authorization: Bearer {access_token}" \
  -H "x-pd-environment: production"
```

Docs: [API proxy guide](https://pipedream.com/docs/connect/api-proxy.md)

## SDK

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "box-add-comment",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    box: { authProvisionId: "apn_xxxxxxx" },
    folderId: "Parent Folder",
    fileId: "File",
  },
})
```

Docs: [Managed auth guide](https://pipedream.com/docs/connect/managed-auth/quickstart.md) · [Tools guide](https://pipedream.com/docs/connect/components.md)

## Actions (19)

### `box-add-comment` — Add Comment (Write)

Adds a comment to a Box file. To mention a user, include @[user_id:name] in the message and Box will notify them by email. Use Get Comments to read existing comments on a file. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/add-comment.md

### `box-create-sign-request` — Create Box Sign Request (Write)

Creates a Box Sign signature request and sends it to the listed signers. Requires at least one signer, plus the document(s) to sign passed via Additional Options — either source_files (e.g. [{"id": "123456789", "type": "file"}]) or a template_id; Box rejects requests with no document source. The…

Full schema: https://pipedream.com/apps/box/actions/create-sign-request.md

### `box-create-collaboration` — Create Collaboration (Write)

Adds a collaboration for a user or group on a file or folder, granting them access with a role (editor, viewer, previewer, uploader, previewer uploader, viewer uploader, or co-owner). Item Type must be file or folder. Invite users by email or user ID; groups must be invited by group ID only. Can…

Full schema: https://pipedream.com/apps/box/actions/create-collaboration.md

### `box-create-folder` — Create Folder (Write)

Creates a new empty folder within the specified parent folder. Parent folder ID 0 is the root (All Files). Folder names must be 1-255 characters, use only Unicode Basic Multilingual Plane (BMP) characters, and cannot contain non-printable characters, / or \, leading or trailing spaces, or be . or…

Full schema: https://pipedream.com/apps/box/actions/create-folder.md

### `box-create-shared-link` — Create Shared Link (Write)

Creates or updates a shared link for a file or folder. Access levels: open, company, or collaborators. A password can only be set when access is open; download permission applies only when access is open or company. A resource can have only one shared link at a time. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/create-shared-link.md

### `box-delete-collaboration` — Delete Collaboration (Write)

Removes a collaboration, revoking a user's or group's access to a file or folder. Use Create Collaboration to grant access first and obtain a collaboration ID from its response. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/delete-collaboration.md

### `box-delete-folder` — Delete Folder (Write)

Deletes a folder by moving it to trash (or permanently when enterprise settings require). Set Recursive to true to delete non-empty folders and all contents; without it, deleting a non-empty folder fails. Deleting a large folder can take longer than Box's request timeout — Box then returns HTTP 503…

Full schema: https://pipedream.com/apps/box/actions/delete-folder.md

### `box-download-file` — Download File (Write)

Downloads a file from Box to your workflow's /tmp directory and returns the saved file path. Use Get File Metadata to check the file's name and size first, or Get File Text to extract text content without downloading. See the documentation

Full schema: https://pipedream.com/apps/box/actions/download-file.md

### `box-get-comments` — Get Comments (Read-only)

Fetches all comments on a Box file, paginating through every page and returning the full list. Use Add Comment to create a new comment on the file. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/get-comments.md

### `box-get-file-metadata` — Get File Metadata (Read-only)

Retrieves metadata for a file (name, size, timestamps, path, and more). Optionally request specific fields. Use List File Versions for version history, or Download File for content. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/get-file-metadata.md

### `box-get-file-text` — Get File Text (Read-only)

Extracts the text content of a Box file using its extracted_text representation. Works for office documents, presentations, spreadsheets, PDFs, and plain-text or code files. Box does not generate this representation for images (they have no text layer) or for files larger than 500 MB, and the…

Full schema: https://pipedream.com/apps/box/actions/get-file-text.md

### `box-list-collaborations` — List Collaborations (Read-only)

Lists the collaborations (users and groups with access, and their roles) on a Box file or folder. Use this to find a collaboration ID before calling Delete Collaboration, or to audit who has access to an item. Item Type must be file or folder. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/list-collaborations.md

### `box-list-file-versions` — List File Versions (Read-only)

Lists prior versions of a file (does not include the current version). Box only tracks file versions for users with premium accounts, so this returns an empty list on free accounts. Use Get File Metadata for current file details, or Upload File Version to create a new version. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/list-file-versions.md

### `box-list-folder-items` — List Folder Items (Read-only)

Lists files, folders, and web links in a Box folder. Use 0 for the root folder. Returns one page of results (default 100, max 1000). To find items by name or metadata across all folders, use Search Content instead. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/list-folder-items.md

### `box-list-folders` — List Folders (Read-only)

Lists the subfolders directly inside a Box folder. Use 0 for the root folder. Returns one page of results (default 100, max 1000). Use List Folder Items instead to also include files and web links. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/list-folders.md

### `box-move-folder` — Move Folder (Write)

Moves a folder to a new parent folder. Optionally rename the folder while moving. Provide the source folder ID and destination parent folder ID (0 for root). Cannot move a folder into itself or one of its descendants. When renaming, the new name must be 1-255 characters, use only Unicode Basic…

Full schema: https://pipedream.com/apps/box/actions/move-folder.md

### `box-search-content` — Search Content (Read-only)

Searches for files, folders, and web links across the user's Box content by keyword and/or metadata filters — at least one of Query or Metadata Filters is required. Matches item names, descriptions, and file text content; trashed items are excluded. Paginates through and returns all matching…

Full schema: https://pipedream.com/apps/box/actions/search-content.md

### `box-upload-file` — Upload a File (Write)

Uploads a file (max 50MB — Box's limit for direct uploads) to a Box folder. The file name must be unique within the parent folder (case-insensitive). Provide either a file URL or a path to a file in the /tmp directory. Use Upload File Version to update an existing file's content instead. See the…

Full schema: https://pipedream.com/apps/box/actions/upload-file.md

### `box-upload-file-version` — Upload File Version (Write)

Uploads a new version of an existing Box file (max 50MB), replacing its current content; prior versions are kept in version history on premium accounts. Optionally rename the file at the same time. Use List File Versions to review version history afterward. See the documentation.

Full schema: https://pipedream.com/apps/box/actions/upload-file-version.md

## Triggers (3)

### `box-new-event` — New Event (Instant)

Emit new event when any of the selected event types occurs on the target file or folder, via a Box webhook. See the documentation

Full schema: https://pipedream.com/apps/box/triggers/new-event.md

### `box-new-file` — New File Event (Instant)

Emit new event when a file is uploaded to, or moved into, the target folder (FILE.UPLOADED), via a Box webhook. Box fires this trigger for both cases, so moving an existing file into the folder also emits an event. See the documentation

Full schema: https://pipedream.com/apps/box/triggers/new-file.md

### `box-new-folder` — New Folder Event (Instant)

Emit new event when a folder is created within the target folder (FOLDER.CREATED), via a Box webhook. See the documentation

Full schema: https://pipedream.com/apps/box/triggers/new-folder.md

---

- All apps: https://pipedream.com/apps — index: https://pipedream.com/llms.txt
- Pipedream docs for agents: https://pipedream.com/docs/llms.txt
