|
| 1 | +--- |
| 2 | +title: Ironclad |
| 3 | +description: Contract lifecycle management with Ironclad |
| 4 | +--- |
| 5 | + |
| 6 | +import { BlockInfoCard } from "@/components/ui/block-info-card" |
| 7 | + |
| 8 | +<BlockInfoCard |
| 9 | + type="ironclad" |
| 10 | + color="#FFFFFF" |
| 11 | +/> |
| 12 | + |
| 13 | +{/* MANUAL-CONTENT-START:intro */} |
| 14 | +[Ironclad](https://ironcladapp.com/) is a leading contract lifecycle management (CLM) platform that helps legal teams streamline contract creation, negotiation, approval, and storage. It enables organizations to manage the entire contract process from start to finish in a single, unified platform. |
| 15 | + |
| 16 | +With Ironclad, you can: |
| 17 | + |
| 18 | +- **Automate contract workflows**: Create and manage contract workflows using configurable templates with built-in approval routing |
| 19 | +- **Manage records**: Store and organize contract records with custom metadata, properties, and linked relationships |
| 20 | +- **Track approvals**: Monitor approval status across workflows with conditional approval groups |
| 21 | +- **Collaborate with comments**: Add and view comments on workflows for team communication and audit trails |
| 22 | + |
| 23 | +In Sim, the Ironclad integration enables your agents to interact with Ironclad's workflow and records APIs programmatically. This allows for seamless contract operations like creating new workflows from templates, updating contract metadata, managing records, and tracking approvals - all within your agent workflows. Use Ironclad to automate contract lifecycle processes, keep records in sync, and enable your agents to participate in contract management decisions. |
| 24 | +{/* MANUAL-CONTENT-END */} |
| 25 | + |
| 26 | +## Usage Instructions |
| 27 | + |
| 28 | +Manage workflows and records in Ironclad. Create and track contract workflows, manage records, view approvals, add comments, and update metadata. Requires an Ironclad OAuth connection. |
| 29 | + |
| 30 | + |
| 31 | + |
| 32 | +## Tools |
| 33 | + |
| 34 | +### `ironclad_create_workflow` |
| 35 | + |
| 36 | +Create a new workflow in Ironclad using a specified template and attributes. |
| 37 | + |
| 38 | +#### Input |
| 39 | + |
| 40 | +| Parameter | Type | Required | Description | |
| 41 | +| --------- | ---- | -------- | ----------- | |
| 42 | +| `template` | string | Yes | The template ID to use for the workflow | |
| 43 | +| `attributes` | string | No | JSON object of workflow attributes | |
| 44 | + |
| 45 | +#### Output |
| 46 | + |
| 47 | +| Parameter | Type | Description | |
| 48 | +| --------- | ---- | ----------- | |
| 49 | +| `id` | string | The ID of the created workflow | |
| 50 | +| `status` | string | The status of the workflow | |
| 51 | +| `template` | string | The template used for the workflow | |
| 52 | +| `creator` | string | The creator of the workflow | |
| 53 | + |
| 54 | +### `ironclad_list_workflows` |
| 55 | + |
| 56 | +List all workflows in Ironclad with pagination support. |
| 57 | + |
| 58 | +#### Input |
| 59 | + |
| 60 | +| Parameter | Type | Required | Description | |
| 61 | +| --------- | ---- | -------- | ----------- | |
| 62 | +| `page` | number | No | Page number \(starting from 0\) | |
| 63 | +| `perPage` | number | No | Number of results per page \(max 100\) | |
| 64 | + |
| 65 | +#### Output |
| 66 | + |
| 67 | +| Parameter | Type | Description | |
| 68 | +| --------- | ---- | ----------- | |
| 69 | +| `workflows` | json | List of workflows | |
| 70 | +| `page` | number | Current page number | |
| 71 | +| `pageSize` | number | Number of results per page | |
| 72 | +| `count` | number | Total number of workflows | |
| 73 | + |
| 74 | +### `ironclad_get_workflow` |
| 75 | + |
| 76 | +Retrieve details of a specific workflow by its ID. |
| 77 | + |
| 78 | +#### Input |
| 79 | + |
| 80 | +| Parameter | Type | Required | Description | |
| 81 | +| --------- | ---- | -------- | ----------- | |
| 82 | +| `workflowId` | string | Yes | The unique identifier of the workflow | |
| 83 | + |
| 84 | +#### Output |
| 85 | + |
| 86 | +| Parameter | Type | Description | |
| 87 | +| --------- | ---- | ----------- | |
| 88 | +| `id` | string | The workflow ID | |
| 89 | +| `status` | string | The workflow status | |
| 90 | +| `template` | string | The template used for the workflow | |
| 91 | +| `creator` | string | The creator of the workflow | |
| 92 | +| `step` | string | The current step of the workflow | |
| 93 | +| `attributes` | json | The workflow attributes | |
| 94 | + |
| 95 | +### `ironclad_update_workflow_metadata` |
| 96 | + |
| 97 | +Update attributes on a workflow. The workflow must be in the Review step. Supports set and remove actions. |
| 98 | + |
| 99 | +#### Input |
| 100 | + |
| 101 | +| Parameter | Type | Required | Description | |
| 102 | +| --------- | ---- | -------- | ----------- | |
| 103 | +| `workflowId` | string | Yes | The unique identifier of the workflow | |
| 104 | +| `actions` | string | Yes | JSON array of actions. Each action has "action" \(set/remove\), "field", and optionally "value". | |
| 105 | + |
| 106 | +#### Output |
| 107 | + |
| 108 | +| Parameter | Type | Description | |
| 109 | +| --------- | ---- | ----------- | |
| 110 | +| `success` | boolean | Whether the update was successful | |
| 111 | + |
| 112 | +### `ironclad_cancel_workflow` |
| 113 | + |
| 114 | +Cancel a workflow instance by its ID. |
| 115 | + |
| 116 | +#### Input |
| 117 | + |
| 118 | +| Parameter | Type | Required | Description | |
| 119 | +| --------- | ---- | -------- | ----------- | |
| 120 | +| `workflowId` | string | Yes | The unique identifier of the workflow to cancel | |
| 121 | + |
| 122 | +#### Output |
| 123 | + |
| 124 | +| Parameter | Type | Description | |
| 125 | +| --------- | ---- | ----------- | |
| 126 | +| `success` | boolean | Whether the cancellation was successful | |
| 127 | + |
| 128 | +### `ironclad_list_workflow_approvals` |
| 129 | + |
| 130 | +List all triggered approvals for a specific workflow. Conditional approvals that have not been triggered will not appear. |
| 131 | + |
| 132 | +#### Input |
| 133 | + |
| 134 | +| Parameter | Type | Required | Description | |
| 135 | +| --------- | ---- | -------- | ----------- | |
| 136 | +| `workflowId` | string | Yes | The unique identifier of the workflow | |
| 137 | + |
| 138 | +#### Output |
| 139 | + |
| 140 | +| Parameter | Type | Description | |
| 141 | +| --------- | ---- | ----------- | |
| 142 | +| `approvals` | json | List of triggered approval groups for the workflow | |
| 143 | + |
| 144 | +### `ironclad_add_comment` |
| 145 | + |
| 146 | +Add a comment to a workflow. |
| 147 | + |
| 148 | +#### Input |
| 149 | + |
| 150 | +| Parameter | Type | Required | Description | |
| 151 | +| --------- | ---- | -------- | ----------- | |
| 152 | +| `workflowId` | string | Yes | The unique identifier of the workflow | |
| 153 | +| `comment` | string | Yes | The comment text to add | |
| 154 | + |
| 155 | +#### Output |
| 156 | + |
| 157 | +| Parameter | Type | Description | |
| 158 | +| --------- | ---- | ----------- | |
| 159 | +| `success` | boolean | Whether the comment was added successfully | |
| 160 | + |
| 161 | +### `ironclad_list_workflow_comments` |
| 162 | + |
| 163 | +List all comments on a workflow. |
| 164 | + |
| 165 | +#### Input |
| 166 | + |
| 167 | +| Parameter | Type | Required | Description | |
| 168 | +| --------- | ---- | -------- | ----------- | |
| 169 | +| `workflowId` | string | Yes | The unique identifier of the workflow | |
| 170 | + |
| 171 | +#### Output |
| 172 | + |
| 173 | +| Parameter | Type | Description | |
| 174 | +| --------- | ---- | ----------- | |
| 175 | +| `comments` | json | List of comments on the workflow | |
| 176 | + |
| 177 | +### `ironclad_create_record` |
| 178 | + |
| 179 | +Create a new record in Ironclad with a specified type, name, and properties. |
| 180 | + |
| 181 | +#### Input |
| 182 | + |
| 183 | +| Parameter | Type | Required | Description | |
| 184 | +| --------- | ---- | -------- | ----------- | |
| 185 | +| `recordType` | string | Yes | The record type \(e.g., "contract", "Statement of Work"\) | |
| 186 | +| `name` | string | Yes | A human-readable name for the record | |
| 187 | +| `properties` | string | No | JSON object of properties. Each property has a "type" \(string/number/email/date/monetary_amount\) and "value". | |
| 188 | +| `links` | string | No | JSON array of linked record objects, each with a "recordId" field | |
| 189 | + |
| 190 | +#### Output |
| 191 | + |
| 192 | +| Parameter | Type | Description | |
| 193 | +| --------- | ---- | ----------- | |
| 194 | +| `id` | string | The ID of the created record | |
| 195 | +| `name` | string | The name of the record | |
| 196 | +| `type` | string | The type of the record | |
| 197 | + |
| 198 | +### `ironclad_list_records` |
| 199 | + |
| 200 | +List all records in Ironclad with pagination and optional filtering by last updated time. |
| 201 | + |
| 202 | +#### Input |
| 203 | + |
| 204 | +| Parameter | Type | Required | Description | |
| 205 | +| --------- | ---- | -------- | ----------- | |
| 206 | +| `page` | number | No | Page number \(starting from 0\) | |
| 207 | +| `pageSize` | number | No | Number of results per page \(max 100\) | |
| 208 | +| `lastUpdated` | string | No | Filter records updated on or after this ISO 8601 timestamp | |
| 209 | + |
| 210 | +#### Output |
| 211 | + |
| 212 | +| Parameter | Type | Description | |
| 213 | +| --------- | ---- | ----------- | |
| 214 | +| `records` | json | List of records | |
| 215 | +| `page` | number | Current page number | |
| 216 | +| `pageSize` | number | Number of results per page | |
| 217 | +| `count` | number | Total number of records | |
| 218 | + |
| 219 | +### `ironclad_get_record` |
| 220 | + |
| 221 | +Retrieve details of a specific record by its ID. |
| 222 | + |
| 223 | +#### Input |
| 224 | + |
| 225 | +| Parameter | Type | Required | Description | |
| 226 | +| --------- | ---- | -------- | ----------- | |
| 227 | +| `recordId` | string | Yes | The unique identifier of the record | |
| 228 | + |
| 229 | +#### Output |
| 230 | + |
| 231 | +| Parameter | Type | Description | |
| 232 | +| --------- | ---- | ----------- | |
| 233 | +| `id` | string | The record ID | |
| 234 | +| `name` | string | The record name | |
| 235 | +| `type` | string | The record type | |
| 236 | +| `properties` | json | The record properties | |
| 237 | +| `createdAt` | string | When the record was created | |
| 238 | +| `updatedAt` | string | When the record was last updated | |
| 239 | + |
| 240 | +### `ironclad_update_record` |
| 241 | + |
| 242 | +Update metadata fields on an existing record. |
| 243 | + |
| 244 | +#### Input |
| 245 | + |
| 246 | +| Parameter | Type | Required | Description | |
| 247 | +| --------- | ---- | -------- | ----------- | |
| 248 | +| `recordId` | string | Yes | The unique identifier of the record to update | |
| 249 | +| `properties` | string | Yes | JSON object of fields to update \(e.g., \{"fieldName": "newValue"\}\) | |
| 250 | + |
| 251 | +#### Output |
| 252 | + |
| 253 | +| Parameter | Type | Description | |
| 254 | +| --------- | ---- | ----------- | |
| 255 | +| `id` | string | The record ID | |
| 256 | +| `name` | string | The record name | |
| 257 | +| `type` | string | The record type | |
| 258 | + |
| 259 | + |
0 commit comments