Ironclad ACTION
Update Record
Updates properties on an existing Ironclad record. Provide
properties as a JSON object where each key maps to a {type, value} wrapper — the same shape as Create Record. Run Search Records first to find the recordId, and Describe Workspace to discover valid property keys and their exact required type (record property types are snake_case, e.g. string, number, monetary_amount, address, date, duration, boolean — do not guess). Only the properties you include are changed; omitted properties are left as-is. Example: set recordId to "rec_abc123" and properties to {"contractValue": {"type": "monetary_amount", "value": {"currency": "USD", "amount": 75000}}}; returns the updated record. See the documentation- Action
- Writes data
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Ironclad account once, then configure and run Update Record 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-record",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
ironclad: { authProvisionId: "apn_xxxxxxx" },
recordId: "Record ID",
properties: "Properties",
},
})
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-record",
"configured_props": {
"ironclad": { "authProvisionId": "apn_xxxxxxx" },
"recordId": "Record ID",
"properties": "Properties"
}
}'// 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-record",
arguments: {
recordId: "Record ID",
properties: "Properties",
},
})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 |
|---|---|---|
recordId Record ID | string | The identifier of a record. Obtain via Search Records. Required Dynamic |
properties Properties | string | JSON object of property key to {type, value} wrapper pairs to update. Run Describe Workspace first to discover valid keys and their exact required type — do not guess the type. Example: {"contractValue": {"type": "monetary_amount", "value": {"currency": "USD", "amount": 75000}}}. Required |
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-record
- Version
- 0.0.2
- App
- Ironclad
- Authentication
- OAuth
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗