Ironclad ACTION
Update Workflow Attributes
Updates attribute values on an in-flight Ironclad workflow. The workflow must be in the Review step; document/file-type attributes are not supported. Provide
updates as a flat JSON object of attribute key to new value — each pair is converted to Ironclad's internal {action: "set", path, value} update format automatically. Run Search Workflows or Get Workflow first to find the workflowId, then run Get Workflow to see current attribute keys and values, or Describe Workflow Template for the attribute format reference (complex types like monetaryAmount, address, date, duration). Example: set workflowId to "wf_xyz789" and updates to {"contractValue": {"currency": "USD", "amount": 75000}, "renewalDate": "2027-01-01"}; the action confirms the update was applied. See the documentation- Action
- Writes data
- Destructive
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Ironclad account once, then configure and run Update Workflow Attributes 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: "ironclad-update-workflow",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
ironclad: { authProvisionId: "apn_xxxxxxx" },
workflowId: "Workflow ID",
updates: "Updates",
},
})
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": "ironclad-update-workflow",
"configured_props": {
"ironclad": { "authProvisionId": "apn_xxxxxxx" },
"workflowId": "Workflow ID",
"updates": "Updates"
}
}'// 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": "ironclad",
},
},
},
)
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: "ironclad-update-workflow",
arguments: {
workflowId: "Workflow ID",
updates: "Updates",
},
})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 |
|---|---|---|
workflowId Workflow ID | string | The identifier of a workflow. Obtain via Search Workflows. Required Dynamic |
updates Updates | string | JSON object of attribute key to new-value pairs to set on the workflow. Run Get Workflow first to discover current attribute keys and types, and Describe Workflow Template for complex-type value shapes. Example: {"contractValue": {"currency": "USD", "amount": 75000}, "renewalDate": "2027-01-01"}. Required |
comment Comment | string | A comment explaining the updates being made to the workflow. 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
- ironclad-update-workflow
- Version
- 1.0.1
- App
- Ironclad
- Authentication
- OAuth
- Read-only
- No
- Destructive
- Yes
- Open world
- Yes
- Source
- View on GitHub ↗