Skip to content

Commit 638063c

Browse files
waleedlatif1claude
andauthored
feat(docusign): add docusign integration (#3661)
* feat(docusign): add DocuSign e-signature integration * fix(docusign): add base_uri null check and move file normalization to params * fix(docusign): use canonical param documentFile instead of raw subBlock IDs * fix(docusign): validate document file is present before sending envelope * fix(docusign): rename tool files from kebab-case to snake_case for docs generation Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 5f7a980 commit 638063c

File tree

24 files changed

+2222
-0
lines changed

24 files changed

+2222
-0
lines changed

apps/docs/components/icons.tsx

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1146,6 +1146,25 @@ export function DevinIcon(props: SVGProps<SVGSVGElement>) {
11461146
)
11471147
}
11481148

1149+
export function DocuSignIcon(props: SVGProps<SVGSVGElement>) {
1150+
return (
1151+
<svg {...props} viewBox='0 0 1547 1549' xmlns='http://www.w3.org/2000/svg'>
1152+
<path
1153+
d='m1113.4 1114.9v395.6c0 20.8-16.7 37.6-37.5 37.6h-1038.4c-20.7 0-37.5-16.8-37.5-37.6v-1039c0-20.7 16.8-37.5 37.5-37.5h394.3v643.4c0 20.7 16.8 37.5 37.5 37.5z'
1154+
fill='#4c00ff'
1155+
/>
1156+
<path
1157+
d='m1546 557.1c0 332.4-193.9 557-432.6 557.8v-418.8c0-12-4.8-24-13.5-31.9l-217.1-217.4c-8.8-8.8-20-13.6-32-13.6h-418.2v-394.8c0-20.8 16.8-37.6 37.5-37.6h585.1c277.7-0.8 490.8 223 490.8 556.3z'
1158+
fill='#ff5252'
1159+
/>
1160+
<path
1161+
d='m1099.9 663.4c8.7 8.7 13.5 19.9 13.5 31.9v418.8h-643.3c-20.7 0-37.5-16.8-37.5-37.5v-643.4h418.2c12 0 24 4.8 32 13.6z'
1162+
fill='#000000'
1163+
/>
1164+
</svg>
1165+
)
1166+
}
1167+
11491168
export function DiscordIcon(props: SVGProps<SVGSVGElement>) {
11501169
return (
11511170
<svg

apps/docs/components/ui/icon-mapping.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import {
3232
DevinIcon,
3333
DiscordIcon,
3434
DocumentIcon,
35+
DocuSignIcon,
3536
DropboxIcon,
3637
DsPyIcon,
3738
DubIcon,
@@ -198,6 +199,7 @@ export const blockTypeToIconMap: Record<string, IconComponent> = {
198199
datadog: DatadogIcon,
199200
devin: DevinIcon,
200201
discord: DiscordIcon,
202+
docusign: DocuSignIcon,
201203
dropbox: DropboxIcon,
202204
dspy: DsPyIcon,
203205
dub: DubIcon,
Lines changed: 229 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
---
2+
title: DocuSign
3+
description: Send documents for e-signature via DocuSign
4+
---
5+
6+
import { BlockInfoCard } from "@/components/ui/block-info-card"
7+
8+
<BlockInfoCard
9+
type="docusign"
10+
color="#4C00FF"
11+
/>
12+
13+
{/* MANUAL-CONTENT-START:intro */}
14+
[DocuSign](https://www.docusign.com) is the world's leading e-signature platform, enabling businesses to send, sign, and manage agreements digitally. With its powerful eSignature REST API, DocuSign supports the full document lifecycle from creation through completion.
15+
16+
With the DocuSign integration in Sim, you can:
17+
18+
- **Send envelopes**: Create and send documents for e-signature with custom recipients and signing tabs
19+
- **Use templates**: Send envelopes from pre-configured DocuSign templates with role assignments
20+
- **Track status**: Get envelope details including signing progress, timestamps, and recipient status
21+
- **List envelopes**: Search and filter envelopes by date range, status, and text
22+
- **Download documents**: Retrieve signed documents as base64-encoded files
23+
- **Manage recipients**: View signer and CC recipient details and signing status
24+
- **Void envelopes**: Cancel in-progress envelopes with a reason
25+
26+
In Sim, the DocuSign integration enables your agents to automate document workflows end-to-end. Agents can generate agreements, send them for signature, monitor completion, and retrieve signed copies—powering contract management, HR onboarding, sales closings, and compliance processes.
27+
{/* MANUAL-CONTENT-END */}
28+
29+
## Usage Instructions
30+
31+
Create and send envelopes for e-signature, use templates, check signing status, download signed documents, and manage recipients with DocuSign.
32+
33+
34+
35+
## Tools
36+
37+
### `docusign_send_envelope`
38+
39+
#### Input
40+
41+
| Parameter | Type | Required | Description |
42+
| --------- | ---- | -------- | ----------- |
43+
44+
#### Output
45+
46+
| Parameter | Type | Description |
47+
| --------- | ---- | ----------- |
48+
| `envelopeId` | string | Envelope ID |
49+
| `status` | string | Envelope or operation status |
50+
| `envelopes` | json | Array of envelopes |
51+
| `templates` | json | Array of templates |
52+
| `signers` | json | Array of signer recipients |
53+
| `carbonCopies` | json | Array of CC recipients |
54+
| `base64Content` | string | Base64-encoded document content |
55+
| `mimeType` | string | Document MIME type |
56+
| `fileName` | string | Document file name |
57+
| `emailSubject` | string | Envelope email subject |
58+
| `totalSetSize` | number | Total matching results |
59+
| `resultSetSize` | number | Results returned |
60+
61+
### `docusign_create_from_template`
62+
63+
#### Input
64+
65+
| Parameter | Type | Required | Description |
66+
| --------- | ---- | -------- | ----------- |
67+
68+
#### Output
69+
70+
| Parameter | Type | Description |
71+
| --------- | ---- | ----------- |
72+
| `envelopeId` | string | Envelope ID |
73+
| `status` | string | Envelope or operation status |
74+
| `envelopes` | json | Array of envelopes |
75+
| `templates` | json | Array of templates |
76+
| `signers` | json | Array of signer recipients |
77+
| `carbonCopies` | json | Array of CC recipients |
78+
| `base64Content` | string | Base64-encoded document content |
79+
| `mimeType` | string | Document MIME type |
80+
| `fileName` | string | Document file name |
81+
| `emailSubject` | string | Envelope email subject |
82+
| `totalSetSize` | number | Total matching results |
83+
| `resultSetSize` | number | Results returned |
84+
85+
### `docusign_get_envelope`
86+
87+
#### Input
88+
89+
| Parameter | Type | Required | Description |
90+
| --------- | ---- | -------- | ----------- |
91+
92+
#### Output
93+
94+
| Parameter | Type | Description |
95+
| --------- | ---- | ----------- |
96+
| `envelopeId` | string | Envelope ID |
97+
| `status` | string | Envelope or operation status |
98+
| `envelopes` | json | Array of envelopes |
99+
| `templates` | json | Array of templates |
100+
| `signers` | json | Array of signer recipients |
101+
| `carbonCopies` | json | Array of CC recipients |
102+
| `base64Content` | string | Base64-encoded document content |
103+
| `mimeType` | string | Document MIME type |
104+
| `fileName` | string | Document file name |
105+
| `emailSubject` | string | Envelope email subject |
106+
| `totalSetSize` | number | Total matching results |
107+
| `resultSetSize` | number | Results returned |
108+
109+
### `docusign_list_envelopes`
110+
111+
#### Input
112+
113+
| Parameter | Type | Required | Description |
114+
| --------- | ---- | -------- | ----------- |
115+
116+
#### Output
117+
118+
| Parameter | Type | Description |
119+
| --------- | ---- | ----------- |
120+
| `envelopeId` | string | Envelope ID |
121+
| `status` | string | Envelope or operation status |
122+
| `envelopes` | json | Array of envelopes |
123+
| `templates` | json | Array of templates |
124+
| `signers` | json | Array of signer recipients |
125+
| `carbonCopies` | json | Array of CC recipients |
126+
| `base64Content` | string | Base64-encoded document content |
127+
| `mimeType` | string | Document MIME type |
128+
| `fileName` | string | Document file name |
129+
| `emailSubject` | string | Envelope email subject |
130+
| `totalSetSize` | number | Total matching results |
131+
| `resultSetSize` | number | Results returned |
132+
133+
### `docusign_void_envelope`
134+
135+
#### Input
136+
137+
| Parameter | Type | Required | Description |
138+
| --------- | ---- | -------- | ----------- |
139+
140+
#### Output
141+
142+
| Parameter | Type | Description |
143+
| --------- | ---- | ----------- |
144+
| `envelopeId` | string | Envelope ID |
145+
| `status` | string | Envelope or operation status |
146+
| `envelopes` | json | Array of envelopes |
147+
| `templates` | json | Array of templates |
148+
| `signers` | json | Array of signer recipients |
149+
| `carbonCopies` | json | Array of CC recipients |
150+
| `base64Content` | string | Base64-encoded document content |
151+
| `mimeType` | string | Document MIME type |
152+
| `fileName` | string | Document file name |
153+
| `emailSubject` | string | Envelope email subject |
154+
| `totalSetSize` | number | Total matching results |
155+
| `resultSetSize` | number | Results returned |
156+
157+
### `docusign_download_document`
158+
159+
#### Input
160+
161+
| Parameter | Type | Required | Description |
162+
| --------- | ---- | -------- | ----------- |
163+
164+
#### Output
165+
166+
| Parameter | Type | Description |
167+
| --------- | ---- | ----------- |
168+
| `envelopeId` | string | Envelope ID |
169+
| `status` | string | Envelope or operation status |
170+
| `envelopes` | json | Array of envelopes |
171+
| `templates` | json | Array of templates |
172+
| `signers` | json | Array of signer recipients |
173+
| `carbonCopies` | json | Array of CC recipients |
174+
| `base64Content` | string | Base64-encoded document content |
175+
| `mimeType` | string | Document MIME type |
176+
| `fileName` | string | Document file name |
177+
| `emailSubject` | string | Envelope email subject |
178+
| `totalSetSize` | number | Total matching results |
179+
| `resultSetSize` | number | Results returned |
180+
181+
### `docusign_list_templates`
182+
183+
#### Input
184+
185+
| Parameter | Type | Required | Description |
186+
| --------- | ---- | -------- | ----------- |
187+
188+
#### Output
189+
190+
| Parameter | Type | Description |
191+
| --------- | ---- | ----------- |
192+
| `envelopeId` | string | Envelope ID |
193+
| `status` | string | Envelope or operation status |
194+
| `envelopes` | json | Array of envelopes |
195+
| `templates` | json | Array of templates |
196+
| `signers` | json | Array of signer recipients |
197+
| `carbonCopies` | json | Array of CC recipients |
198+
| `base64Content` | string | Base64-encoded document content |
199+
| `mimeType` | string | Document MIME type |
200+
| `fileName` | string | Document file name |
201+
| `emailSubject` | string | Envelope email subject |
202+
| `totalSetSize` | number | Total matching results |
203+
| `resultSetSize` | number | Results returned |
204+
205+
### `docusign_list_recipients`
206+
207+
#### Input
208+
209+
| Parameter | Type | Required | Description |
210+
| --------- | ---- | -------- | ----------- |
211+
212+
#### Output
213+
214+
| Parameter | Type | Description |
215+
| --------- | ---- | ----------- |
216+
| `envelopeId` | string | Envelope ID |
217+
| `status` | string | Envelope or operation status |
218+
| `envelopes` | json | Array of envelopes |
219+
| `templates` | json | Array of templates |
220+
| `signers` | json | Array of signer recipients |
221+
| `carbonCopies` | json | Array of CC recipients |
222+
| `base64Content` | string | Base64-encoded document content |
223+
| `mimeType` | string | Document MIME type |
224+
| `fileName` | string | Document file name |
225+
| `emailSubject` | string | Envelope email subject |
226+
| `totalSetSize` | number | Total matching results |
227+
| `resultSetSize` | number | Results returned |
228+
229+

apps/docs/content/docs/en/tools/meta.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
"datadog",
2828
"devin",
2929
"discord",
30+
"docusign",
3031
"dropbox",
3132
"dspy",
3233
"dub",

0 commit comments

Comments
 (0)