# Smartsheet — Pipedream Connect

> Dynamic work & collaboration software

- API slug: `smartsheet` (use in MCP headers and tool keys)
- Auth: OAuth (Pipedream-managed)
- Categories: Productivity
- Website: https://smartsheet.com
- Managed OAuth scopes: `ADMIN_SHEETS` · `ADMIN_SIGHTS` · `ADMIN_USERS` · `ADMIN_WEBHOOKS` · `ADMIN_WORKSPACES` · `CREATE_SHEETS` · `CREATE_SIGHTS` · `DELETE_SHEETS` · `DELETE_SIGHTS` · `READ_CONTACTS` · `READ_SHEETS` · `READ_SIGHTS` · `READ_USERS` · `SHARE_SHEETS` · `SHARE_SIGHTS` · `WRITE_SHEETS`
- This page (HTML): https://pipedream.com/apps/smartsheet
- Tools: 35 actions · 4 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: smartsheet`

```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": "smartsheet",
      },
    },
  },
)

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

const { tools } = await mcp.listTools()

// e.g. run Add Column:
const result = await mcp.callTool({
  name: "smartsheet-add-column",
  arguments: {
    sheetId: "Sheet ID or URL",
    title: "Column Title",
  },
})
```

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

## API proxy

For a Smartsheet 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.smartsheet.com/2.0/users/me

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9hcGkuc21hcnRzaGVldC5jb20vMi4wL3VzZXJzL21l?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: "smartsheet-add-column",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    smartsheet: { authProvisionId: "apn_xxxxxxx" },
    sheetId: "Sheet ID or URL",
    title: "Column Title",
  },
})
```

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

## Actions (35)

### `smartsheet-add-column` — Add Column (Write)

Add a single column to an existing sheet, at the end or at a chosen position. Returns the created column under result, including its ID. Use List Columns to see the existing columns and their positions first. To change a column that already exists, use Update Column. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/add-column.md

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

Adds a comment to an existing discussion on a Smartsheet sheet (POST /sheets/{sheetId}/discussions/{discussionId}/comments). Use List Discussions to find a Discussion ID. See the documentation.

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

### `smartsheet-add-row-to-sheet` — Add Row to Sheet (Write)

Add one or more rows to a sheet, addressing cells by column NAME rather than column ID. Returns the created rows under result, each with its new row ID. Call Get Sheet or List Columns first to learn the column names. To change rows that already exist, use Update Row. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/add-row-to-sheet.md

### `smartsheet-copy-rows` — Copy Rows (Write)

Copy rows from one sheet to another. The rows stay in the source sheet and are duplicated in the destination. Cell values and formatting always come across; attachments and comments only if you ask for them via Include. Columns the destination sheet is missing are created automatically, so it does…

Full schema: https://pipedream.com/apps/smartsheet/actions/copy-rows.md

### `smartsheet-copy-sheet` — Copy Sheet (Write)

Copy an existing sheet to a new location. Creates a complete duplicate including all rows, columns, formatting, and attachments. Specify a destination workspace or folder, or omit both to copy to the user's home (Sheets folder). Returns the new sheet's ID and permalink. Use List Sheets to find the…

Full schema: https://pipedream.com/apps/smartsheet/actions/copy-sheet.md

### `smartsheet-create-discussion` — Create Discussion (Write)

Creates a discussion on a Smartsheet sheet. If a Row ID is provided the discussion is attached to that row (POST /sheets/{sheetId}/rows/{rowId}/discussions); otherwise it is created at the sheet level (POST /sheets/{sheetId}/discussions). Use List Sheets to find a Sheet ID, and Get Sheet or Search…

Full schema: https://pipedream.com/apps/smartsheet/actions/create-discussion.md

### `smartsheet-create-sheet` — Create Sheet (Write)

Create a new blank sheet with its column schema defined up front, inside a workspace or a folder. Returns the new sheet under result, including its ID and permalink. To create a sheet from an existing template instead of defining columns, use New Sheet From Template. To load a sheet from a CSV or…

Full schema: https://pipedream.com/apps/smartsheet/actions/create-sheet.md

### `smartsheet-delete-column` — Delete Column (Write)

Permanently delete a column from a sheet. WARNING: This is irreversible - all cell data in the column is permanently destroyed. Use List Columns to find the column ID before deleting. Consider using Get Sheet to review the column's data before deletion. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/delete-column.md

### `smartsheet-delete-comment` — Delete Comment (Write)

Permanently deletes a comment from a Smartsheet sheet (DELETE /sheets/{sheetId}/comments/{commentId}). This action is irreversible. Use Get Discussion to find a Comment ID. Example: {sheetId: "1234567890123456", commentId: "4068136276365188"} deletes that comment and returns a confirmation. See the…

Full schema: https://pipedream.com/apps/smartsheet/actions/delete-comment.md

### `smartsheet-delete-discussion` — Delete Discussion (Write)

Permanently deletes a discussion (and its comments) from a Smartsheet sheet. This action is irreversible. Use List Discussions to find a Discussion ID. Example: {sheetId: "1234567890123456", discussionId: "3728427551461252"} deletes that discussion (and all its comments) and returns a confirmation…

Full schema: https://pipedream.com/apps/smartsheet/actions/delete-discussion.md

### `smartsheet-delete-rows` — Delete Rows (Write)

Delete one or more rows from a sheet by row ID. This is permanent and cannot be undone. Use Get Sheet or Search to find row IDs first. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/delete-rows.md

### `smartsheet-delete-sheet` — Delete Sheet (Write)

Permanently delete a sheet. This is irreversible - all data, rows, and columns are destroyed. Use List Sheets to find the sheet ID first. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/delete-sheet.md

### `smartsheet-email-sheet` — Email Sheet (Write)

Send a sheet as an email attachment to one or more recipients. The sheet can be sent as PDF, Excel, or PDF Gantt format. Use List Sheets to find the sheet ID. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/email-sheet.md

### `smartsheet-get-comment` — Get Comment (Read-only)

Retrieves a single comment from a Smartsheet sheet (GET /sheets/{sheetId}/comments/{commentId}), returning fields such as text, createdAt, and createdBy. Use List Discussions or Get Discussion to find a Comment ID. Example: {sheetId: "1234567890123456", commentId: "4068136276365188"} returns…

Full schema: https://pipedream.com/apps/smartsheet/actions/get-comment.md

### `smartsheet-get-current-user` — Get Current User (Read-only)

Get the authenticated user's identity - returns user ID, email, first/last name, and account details. Use this when the user says 'my sheets' or 'my account' to identify the owner. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/get-current-user.md

### `smartsheet-get-discussion` — Get Discussion (Read-only)

Retrieves a single discussion from a Smartsheet sheet, including its embedded comments array (requested via include=comments). Use List Discussions to find a Discussion ID. Example: {sheetId: "1234567890123456", discussionId: "3728427551461252"} returns {"title": "Velociraptor containment breach"…

Full schema: https://pipedream.com/apps/smartsheet/actions/get-discussion.md

### `smartsheet-get-row` — Get Row (Read-only)

Retrieve a single row from a sheet by row ID, with cell values keyed by column name instead of column ID. Returns a human-readable object like {"Species": "Velociraptor", "Status": "Monitoring"} plus row metadata. When a cell has a displayValue (formatted date, contact name), that is returned…

Full schema: https://pipedream.com/apps/smartsheet/actions/get-row.md

### `smartsheet-get-sheet` — Get Sheet (Read-only)

Get a sheet's full structure: column definitions (name, type, options, ID), all rows with cell values, and sheet metadata. This is the primary schema discovery tool - call it BEFORE Add Row to Sheet or Update Row to learn column names, types, and IDs. Returns rows with cell values keyed by column…

Full schema: https://pipedream.com/apps/smartsheet/actions/get-sheet.md

### `smartsheet-import-sheet` — Import Sheet (Write)

Import a CSV or XLSX file as a brand new Smartsheet sheet inside a workspace or a folder. Returns the new sheet under result, including its ID and permalink. To create a sheet by defining columns yourself instead, use Create Sheet. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/import-sheet.md

### `smartsheet-list-columns` — List Columns (Read-only)

List all columns in a sheet, returning each column's ID, title, type, options (for PICKLIST/CONTACT_LIST), validation, and position index. This is lighter-weight than Get Sheet when you only need the column schema and not row data. Use this before Add Row to Sheet or Update Row to discover column…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-columns.md

### `smartsheet-list-discussions` — List Discussions (Read-only)

Lists discussions on a Smartsheet sheet (GET /sheets/{sheetId}/discussions). If a Row ID is supplied, lists discussions scoped to that row instead (GET /sheets/{sheetId}/rows/{rowId}/discussions), since the sheet-level endpoint does not accept a row filter. Supports pagination and optional…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-discussions.md

### `smartsheet-list-folder-id-options` — List Folder Options (Read-only)

Retrieves { label, value } pairs for populating a Folder dropdown, for one workspace. This is a form helper, not a Smartsheet capability: it returns only folder names and IDs. Requires a Workspace ID - use List Workspace Options to find one first. Use the folder IDs it returns with Create Sheet…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-folder-id-options.md

### `smartsheet-list-sheet-id-options` — List Sheet Options (Read-only)

Retrieves a single page of label/value pairs used to populate a Sheet dropdown field. This is a form helper, not a Smartsheet capability: it returns only names and IDs, one page at a time. Prefer List Sheets, which returns the same sheets with full metadata (owner, permalink, modified date) and can…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-sheet-id-options.md

### `smartsheet-list-sheets` — List Sheets (Read-only)

List all sheets the authenticated user can access, with name, ID, creation/modification dates, owner, and permalink. Always returns the complete list in a single call (no pagination to manage). Use this to find sheet IDs before calling Get Sheet, Add Row to Sheet, Update Row, Delete Rows, Copy…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-sheets.md

### `smartsheet-list-template-id-options` — List Template ID Options (Read-only)

Retrieves { label, value } pairs for populating a Template dropdown, across every workspace. This is a form helper, not a Smartsheet capability: each label is template name (workspace name) and each value is the template ID. Prefer List Workspace Templates, which returns the same templates with…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-template-id-options.md

### `smartsheet-list-workspace-id-options` — List Workspace Options (Read-only)

Retrieves { label, value } pairs for populating a Workspace dropdown, following token-based pagination to the end. This is a form helper, not a Smartsheet capability: it returns only workspace names and IDs. Use the workspace IDs it returns with Create Sheet, Import Sheet, Copy Sheet, Move Sheet…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-workspace-id-options.md

### `smartsheet-list-workspace-templates` — List Workspace Templates (Read-only)

Lists the templates available across your workspaces, returning each template ID, name, and workspace. Use this to find a template ID for New Sheet From Template. When no workspace is set, a workspace that fails to traverse is skipped rather than failing the call, so a successful response can be…

Full schema: https://pipedream.com/apps/smartsheet/actions/list-workspace-templates.md

### `smartsheet-move-rows` — Move Rows (Write)

Move rows from one sheet to another. WARNING: the rows are permanently removed from the source sheet. Cell values and formatting always come across; attachments and comments only if you ask for them via Include. Columns the destination sheet is missing are created automatically, so it does not have…

Full schema: https://pipedream.com/apps/smartsheet/actions/move-rows.md

### `smartsheet-move-sheet` — Move Sheet (Write)

Move a sheet to a different workspace, folder, or home. The sheet is removed from its current location. Use List Sheets to find the sheet ID. To copy a sheet instead (keeping the original), use Copy Sheet. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/move-sheet.md

### `smartsheet-new-sheet-from-template` — New Sheet From Template (Write)

Creates a new sheet from a template. Requires either a workspace or folder destination. Use List Workspace Templates to find template IDs. Use List Workspace Options to find workspace IDs. Use List Folder Options to find folder IDs. See the documentation: Create in folder, Create in workspace

Full schema: https://pipedream.com/apps/smartsheet/actions/new-sheet-from-template.md

### `smartsheet-search` — Search (Read-only)

Full-text search across everything the account can see, or within a single sheet. This is the fastest way to find a sheet by name: results include whole objects, not just cell contents - each result carries an objectType of sheet, row, folder, workspace, report, template, attachment, discussion…

Full schema: https://pipedream.com/apps/smartsheet/actions/search.md

### `smartsheet-update-column` — Update Column (Write)

Update a column's title, type, or position in a sheet. Use List Columns to find the column ID and current properties before updating. Note: some type conversions may cause data loss. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/update-column.md

### `smartsheet-update-comment` — Update Comment (Write)

Updates the text of an existing comment on a Smartsheet sheet (PUT /sheets/{sheetId}/comments/{commentId}). Use Get Discussion to find a Comment ID. See the documentation.

Full schema: https://pipedream.com/apps/smartsheet/actions/update-comment.md

### `smartsheet-update-row` — Update Row (Write)

Update one or more rows in a sheet by row ID, addressing cells by column NAME rather than column ID. Returns the updated rows under result. Call Get Sheet to find row IDs and column names first. To add new rows instead of changing existing ones, use Add Row to Sheet. See the documentation

Full schema: https://pipedream.com/apps/smartsheet/actions/update-row.md

### `smartsheet-update-sheet` — Update Sheet (Write)

Rename an existing sheet, leaving its rows, columns, attachments, and sharing untouched. Only the properties you supply are changed, and at least one must be supplied. Returns the updated sheet under result. To change a sheet's location instead, use Move Sheet; to change its columns, use Update…

Full schema: https://pipedream.com/apps/smartsheet/actions/update-sheet.md

## Triggers (4)

### `smartsheet-new-comment-added` — New Comment Added (Instant) (Instant)

Emit new event when a comment is added in a sheet.

Full schema: https://pipedream.com/apps/smartsheet/triggers/new-comment-added.md

### `smartsheet-new-row-added` — New Row Added (Instant) (Instant)

Emit new event when a row is added to a sheet.

Full schema: https://pipedream.com/apps/smartsheet/triggers/new-row-added.md

### `smartsheet-new-row-deleted` — New Row Deleted (Instant) (Instant)

Emit new event when a row is deleted from a sheet.

Full schema: https://pipedream.com/apps/smartsheet/triggers/new-row-deleted.md

### `smartsheet-new-row-updated` — New Row Updated (Instant) (Instant)

Emit new event when a row is updated in a sheet.

Full schema: https://pipedream.com/apps/smartsheet/triggers/new-row-updated.md

---

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