Smartsheet ACTION
New Sheet From Template
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
- Action
- Writes data
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Smartsheet account once, then configure and run New Sheet From Template from your backend or agent.
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-new-sheet-from-template",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
smartsheet: { authProvisionId: "apn_xxxxxxx" },
sheetName: "Sheet Name",
templateId: "Template",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "smartsheet-new-sheet-from-template",
"configured_props": {
"smartsheet": { "authProvisionId": "apn_xxxxxxx" },
"sheetName": "Sheet Name",
"templateId": "Template"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{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()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "smartsheet-new-sheet-from-template",
arguments: {
sheetName: "Sheet Name",
templateId: "Template",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
sheetName Sheet Name | string | Name for the new sheet created from the template. Required |
templateId Template | string | Select a template from a workspace. Use the List Workspace Templates action to find template IDs. Example: 1122334455667788. Required Dynamic |
workspaceId Workspace ID | string | Workspace to create the sheet in. Required if Folder ID is not set. Numeric workspace ID (e.g. 1234567890123456). Use List Workspace Options to find one. Optional |
folderId Folder ID | string | Folder to create the sheet in. If set, the sheet goes here and Workspace ID is ignored. Numeric folder ID (e.g. 9876543210987654). Use List Folder Options with a workspace ID to find one. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- smartsheet-new-sheet-from-template
- Version
- 2.0.1
- App
- Smartsheet
- Authentication
- OAuth
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗