> This page is for Agent Handler.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# Smartsheet

**Authentication:** OAuth or personal access token. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow, or [Application credentials](/merge-agent-handler/admin-setup/add-oauth-credentials) to bring your own OAuth app.

## Sample use cases

* List rows in the `Q2 Roadmap` sheet where status is `At risk` and the due date is within 7 days.
* Add a row to the `Intake` sheet for each new ticket from this morning.
* Pull the rollup of completed tasks per workstream for last week.

## Available Tools

#### list\_attachments

List all attachments on a sheet with pagination. Includes file attachments and URL links.

#### attach\_url

Attach a URL to a sheet. Supported types: LINK, BOX\_COM, DROPBOX, EGNYTE, EVERNOTE, GOOGLE\_DRIVE, ONEDRIVE.

#### get\_attachment

Get attachment details including download URL for file attachments. Use list\_attachments to find IDs.

#### delete\_attachment

Delete an attachment from a sheet. This cannot be undone. Use list\_attachments to find IDs.

#### list\_columns

List all columns in a sheet with pagination. Returns column IDs, titles, types, and indices.

#### add\_column

Add a column to a sheet. Specify title, type, and optional index for position. Use PICKLIST type with options for...

#### get\_column

Get a single column by ID. Returns column title, type, options, and other properties.

#### update\_column

Update a column's title, type, or position. Use list\_columns to find column IDs.

#### delete\_column

Delete a column from a sheet. This cannot be undone. Cannot delete the primary column.

#### list\_discussions

List all discussions on a sheet with pagination. Includes discussion titles and comment counts.

#### create\_discussion

Create a discussion on a sheet with an initial comment. Optionally provide a title.

#### create\_row\_discussion

Create a discussion on a specific row with an initial comment. Use get\_sheet to find row IDs.

#### get\_discussion

Get a discussion with all its comments. Use list\_discussions to find valid discussion IDs.

#### delete\_discussion

Delete a discussion and all its comments. This cannot be undone.

#### add\_comment

Add a comment to an existing discussion. Use list\_discussions to find discussion IDs.

#### update\_comment

Update a comment's text. Use get\_discussion to find comment IDs.

#### delete\_comment

Delete a comment. This cannot be undone. Use get\_discussion to find comment IDs.

#### list\_home\_folders

List folders at the home level with pagination. Does not include workspace folders.

#### create\_folder

Create a folder at home, inside another folder, or in a workspace. Set parent\_folder\_id for subfolder, workspace\_id for...

#### get\_folder

Get a folder with its contents (sheets, subfolders, reports). Use list\_home\_folders to find valid IDs.

#### update\_folder

Update a folder name. Use list\_home\_folders or get\_workspace to find folder IDs.

#### delete\_folder

Permanently delete a folder and all its contents. This cannot be undone.

#### list\_groups

List all groups in the organization with pagination. Groups can be used for sharing sheets.

#### create\_group

Create a new group with optional description and initial members (by email). Requires admin privileges.

#### get\_group

Get a group with its members. Use list\_groups to find valid group IDs.

#### update\_group

Update a group's name or description. Use list\_groups to find valid group IDs.

#### delete\_group

Delete a group. This cannot be undone. Members are not deleted.

#### add\_group\_members

Add members to a group by email address. Use get\_group to see current members.

#### remove\_group\_member

Remove a member from a group by user ID. Use get\_group to find member user IDs.

#### list\_reports

List all reports accessible to the user with pagination. Reports aggregate data from multiple sheets.

#### add\_rows

Add rows to a sheet. Each row has cells with column\_id and value. Use to\_top/to\_bottom/parent\_id/sibling\_id for...

#### get\_row

Get a single row from a sheet by row ID. Use include parameter for additional data like discussions and attachments.

#### update\_rows

Update existing rows in a sheet. Each row must have id and cells to update. Can also reposition rows with...

#### delete\_rows

Delete rows from a sheet by row IDs. This cannot be undone.

#### move\_rows

Move rows from one sheet to another. Rows are removed from the source sheet. Use list\_sheets to find sheet IDs.

#### copy\_rows

Copy rows from one sheet to another. Original rows remain in the source sheet. Use list\_sheets to find sheet IDs.

#### search

Search across all sheets, rows, and other objects. Returns matching items with context data and parent references.

#### search\_sheet

Search within a specific sheet. Returns matching rows and cells with context. Use list\_sheets to find sheet IDs.

#### list\_sheet\_shares

List all shares on a sheet with pagination. Shows who has access and their access level.

#### share\_sheet

Share a sheet with users by email. Set access\_level to VIEWER, EDITOR, EDITOR\_SHARE, ADMIN, or OWNER.

#### update\_share

Update a share's access level. Use list\_sheet\_shares to find share IDs.

#### delete\_share

Remove a share from a sheet. The user will lose access. Use list\_sheet\_shares to find share IDs.

#### list\_sheets

List all sheets accessible to the user with pagination. Use page and page\_size to navigate results.

#### create\_sheet

Create a new sheet with specified columns. At least one column must have primary=true. Use TEXT\_NUMBER type for general...

#### get\_sheet

Get a sheet with its columns and rows. Use include parameter for attachments, discussions, etc. Supports pagination for...

#### update\_sheet

Update sheet properties like name. Use list\_sheets to find valid sheet IDs.

#### delete\_sheet

Permanently delete a sheet. This cannot be undone. Use list\_sheets to find valid sheet IDs.

#### copy\_sheet

Copy a sheet to home, a workspace, or a folder. Specify destination\_type and destination\_id for non-home destinations.

#### sort\_sheet

Sort a sheet by one or more columns. Each criterion needs column\_id and direction (ASCENDING or DESCENDING).

#### get\_current\_user

Get the current authenticated user's profile including email, name, locale, and account info.

#### list\_users

List all users in the organization with pagination. Requires admin privileges.

#### get\_user

Get a user by ID. Requires admin privileges. Use list\_users to find valid user IDs.

#### list\_webhooks

List all webhooks for the authenticated user with pagination.

#### create\_webhook

Create a webhook to receive callbacks when a sheet changes. Use '*.*' for events to subscribe to all events.

#### get\_webhook

Get a webhook's details including status, events, and callback URL. Use list\_webhooks to find valid IDs.

#### update\_webhook

Update a webhook's enabled status or event subscriptions. Use list\_webhooks to find valid IDs.

#### delete\_webhook

Delete a webhook. It will stop receiving callbacks. This cannot be undone.

#### list\_workspaces

List all workspaces with pagination. Returns workspace IDs, names, and access levels.

#### create\_workspace

Create a new workspace. Workspaces organize sheets, reports, and dashboards.

#### get\_workspace

Get a workspace with its contents (sheets, folders, reports, dashboards). Use list\_workspaces to find valid IDs.

#### update\_workspace

Update a workspace name. Use list\_workspaces to find valid IDs.

#### delete\_workspace

Permanently delete a workspace and all its contents. This cannot be undone.