Description
n8n-nodes-docusign-esign




An n8n community node package for DocuSign — covering eSignature, Web Forms, Monitor, Click (Clickwrap), Maestro (Workflow Builder), Navigator (Agreement Intelligence), and Admin APIs.
Features
- 8 nodes covering DocuSign eSignature, Web Forms, Monitor, Click, Maestro, Navigator, and Admin APIs
- 54 eSignature resources — full envelope lifecycle, templates, bulk send, recipients, tabs, payments, webhooks, and more (see Resources & Operations)
- Embedded signing — generate signing URLs for iframe integration, including cross-origin focused view
- Merge fields — populate document placeholders like
{{FirstName}}dynamically - Webhook triggers — eSignature, Click, and Maestro trigger nodes with HMAC-SHA256 signature verification and replay attack protection
- Multiple auth methods — JWT (token caching + auto-refresh) and OAuth2 Authorization Code Grant
- Security hardened — SSRF-safe URL validation, RFC 5322 email validation, UUID validation, input sanitization
- Rate limit handling — exponential backoff retry on 429/5xx responses
- Regional support — NA, EU, AU, CA for production environments
Requirements
DocuSign Plan Requirements
| Environment | Plan Required |
|————-|—————|
| Development/Testing | Free Developer Account |
| Production | Business Pro or higher |
| Webhooks (DocuSign Connect) | Business Pro+ or Connect add-on |
Start with a free DocuSign Developer Account to test before committing to a paid plan.
Installation
Community Nodes (Recommended)
1. Go to Settings > Community Nodes in your n8n instance
2. Select Install
3. Enter n8n-nodes-docusign-esign
4. Click Install
npm
npm install n8n-nodes-docusign-esign
Credentials
To use this node, you need DocuSign API credentials:
1. Log in to your DocuSign Admin
2. Go to Settings > Apps and Keys
3. Create an Integration Key (Client ID)
4. Generate an RSA Key Pair and save the private key
5. Note your User ID and Account ID
Granting Consent
Before first use, grant consent for your integration:
Demo:
https://account-d.docusign.com/oauth/auth?responsetype=code&scope=signature%20impersonation&clientid=YOURINTEGRATIONKEY&redirecturi=YOURREDIRECT_URI
Production:
https://account.docusign.com/oauth/auth?responsetype=code&scope=signature%20impersonation&clientid=YOURINTEGRATIONKEY&redirecturi=YOURREDIRECT_URI
Nodes
DocuSign
The main node for interacting with the DocuSign eSignature API.
#### Resources & Operations
| Resource | Operations |
|———-|————|
| Envelope | Create, Create From Template, Get, Get Many, Send, Resend, Void, Delete, Download Document, List Documents, Get Recipients, Update Recipients, Get Audit Events, Create Signing URL, Correct, Get Form Data, Create Sender View, Create Edit View |
| Template | Create, Get, Get Many, Update, Delete |
| Bulk Send | Create List, Get List, Get Many Lists, Delete List, Send, Get Batch Status |
| PowerForm | Create, Get, Get Many, Delete, Get Form Data |
| Folder | Get Many, Get Items, Move Envelope, Search |
| Signing Group | Create, Get, Get Many, Update, Delete |
| Brand | Create, Get, Get Many, Update, Delete |
| Document Generation | Get Form Fields, Update Form Fields |
| Envelope Lock | Lock, Get Lock, Update Lock, Unlock |
| Composite Template | Create Envelope |
| Envelope Transfer | Get Rules, Create Rule, Update Rule, Delete Rule |
| Supplemental Document | Create Envelope |
| Scheduled Routing | Get, Update, Delete, Pause Workflow, Resume Workflow |
| Recipient Tabs | Get, Update |
| Payment Tab | Create Envelope |
| Template Recipients | Create, Get Many, Update, Delete |
| ID Verification | Get Workflows, Get Evidence |
| Connect Configuration | Create, Get, Get Many, Update, Delete, Pause, Resume |
| Organization | Get Many, Get |
| Account User | Create, Get, Get Many, Update, Delete |
| Account Group | Create, Get Many, Update, Delete |
| Chunked Upload | Initiate, Upload Chunk, Commit |
| Comments | Create, Get Many |
| Envelope Custom Field | Create, Get, Update, Delete |
| Envelope Attachment | Get Many, Create, Delete |
| Envelope Document Field | Get, Create, Update, Delete |
| Envelope Email Setting | Get, Create, Update, Delete |
| Custom Tab | Create, Get, Get Many, Update, Delete |
| Contact | Create, Get Many, Update, Delete |
| Permission Profile | Create, Get, Get Many, Update, Delete |
| Account Custom Field | Create, Get Many, Update, Delete |
| Connect Event | Get Failures, Get Logs, Retry |
| Envelope Notification | Get, Update |
| Template Document | Add, Get, Get Many, Remove |
| Template Custom Field | Create, Get, Update, Delete |
| Template Lock | Lock, Get Lock, Update Lock, Unlock |
| Template Notification | Get, Update |
| Billing | Get Plan, Get Invoice, Get Many Invoices, Get Payment, Get Many Payments |
| Cloud Storage | List Providers, List Files, Get File |
| Workspace | Create, Get, Get Many, Delete, Create File, Get Files |
| Email Archive | Create, Get Many, Delete |
| Diagnostics | Get Settings, Update Settings, Get Log |
| Notary | Get, Get Jurisdictions, Create |
| Trust Service Provider | Get Seal Providers |
| Envelope Purge | Purge Documents |
| Account Settings | Get, Update |
| Template View | Create Edit View |
| Reporting | Get Product Permission Profiles, Get Account Report |
| Account Signature | Create, Get, Get Many, Update, Delete |
| Account Watermark | Get, Update, Preview |
| Captive Recipient | Create, Delete |
| Consumer Disclosure | Get, Get Default, Update |
| Notary Journal | Get, Get Many |
| Template Bulk Recipient | Upload, Get, Delete |
#### Envelope Create Options
| Option | Description |
|——–|————-|
| Multiple Signers | Add additional signers with routing order |
| Multiple Documents | Attach multiple documents to one envelope |
| Embedded Signing | Enable for iframe integration (adds clientUserId) |
| Merge Fields | Populate placeholders like {{FirstName}} with dynamic values |
| Custom Fields | Add metadata fields for tracking |
| Additional Tabs | Initial, date, text, checkbox, company, title, radio group, dropdown, number, formula, signer attachment |
| Anchor Tags | Position signature fields using text anchors |
| Reminders | Automatic reminder emails with configurable delay and frequency |
| Expiration | Set envelope expiration with warning period |
| SMS Delivery | Send signing notifications via SMS in addition to email |
| Signer Authentication | Access code, phone, or SMS verification before signing |
| Allow Markup | Let signers add comments and annotations |
| Allow Reassign | Let signers reassign to another person |
| Brand ID | Use custom branding for the envelope |
| Enable Wet Sign | Allow print-and-sign option |
| Enforce Signer Visibility | Signers only see their own fields |
| Composite Templates | Combine multiple server templates with inline recipient overrides |
| Payment Collection | Collect payments during signing (USD, EUR, GBP, CAD, AUD, JPY) |
| Supplemental Documents | Attach terms & conditions with configurable acknowledgment |
| Scheduled Send | Schedule envelope delivery for a future date |
#### Additional Envelope Options (v2.0.0)
| Option | Description |
|——–|————-|
| WhatsApp Delivery | Send signing notifications via WhatsApp |
| Focused View | Create embedded signing URL with cross-origin iframe support (frameAncestors, messageOrigins) |
| Routing Rules | Configure conditional workflow routing with expressions |
—
DocuSign Web Forms
Manage DocuSign Web Forms and create signing instances.
Credential: DocuSign Web Forms API
| Resource | Operations |
|———-|————|
| Web Form | Get Many, Get, Delete |
| Web Form Instance | Create, Get |
—
DocuSign Monitor
Stream DocuSign activity events for audit and compliance workflows.
Credential: DocuSign Monitor API
| Resource | Operations |
|———-|————|
| Event Stream | Get Events (cursor-based pagination), List Datasets |
—
DocuSign Click
Manage clickwrap agreements and user agreement records.
Credential: DocuSign Click API
| Resource | Operations |
|———-|————|
| Clickwrap | Create, Get, Get Many, Update, Delete |
| Agreement | Get Many |
DocuSign Click Trigger
Webhook trigger for DocuSign Click events.
Events: agreement-created, agreement-agreed, agreement-declined, agreement-expired
—
DocuSign Maestro
Automate DocuSign Maestro (Workflow Builder) workflows and instances.
Credential: DocuSign Maestro API
| Resource | Operations |
|———-|————|
| Workflow | Get, Get Many, Trigger |
| Workflow Instance | Get, Get Many, Cancel |
DocuSign Maestro Trigger
Webhook trigger for DocuSign Maestro workflow events.
Events: workflow-instance-started, workflow-instance-completed, workflow-instance-failed
—
DocuSign Navigator
Access AI-extracted agreement intelligence data.
Credential: DocuSign Navigator API
| Resource | Operations |
|———-|————|
| Agreement | Get Many, Get, Get Provisions |
—
DocuSign Admin
Manage DocuSign organizations, accounts, and users.
Credential: DocuSign Admin API
| Resource | Operations |
|———-|————|
| Organization | Get Many, Get |
| User | Create, Get, Get Many, Update, Delete |
| Account | Get Many |
—
DocuSign Trigger
Webhook trigger node for receiving real-time events via DocuSign Connect.
#### Supported Events
envelope-sent – Envelope sent to recipientsenvelope-delivered – Envelope delivered to recipientenvelope-completed – All recipients completed signingenvelope-declined – Recipient declined to signenvelope-voided – Envelope voidedrecipient-sent – Recipient received enveloperecipient-delivered – Recipient viewed enveloperecipient-completed – Recipient completed signingrecipient-declined – Recipient declinedrecipient-authenticationfailed – Recipient failed authenticationtemplate-created – Template createdtemplate-modified – Template modifiedtemplate-deleted – Template deletedExample Workflows
Send Contract for Signature
HTTP Request (Get Contract) → DocuSign (Create Envelope) → Slack (Notify Team)
Auto-Save Signed Documents
DocuSign Trigger (envelope-completed) → DocuSign (Download Document) → Google Drive (Upload)
Embedded Signing in Your App
Form Trigger → DocuSign (Create Envelope, Embedded=true) → DocuSign (Create Signing URL) → Redirect User
Dynamic Document with Merge Fields
Form Trigger → DocuSign (Create Envelope with Merge Fields {{FirstName}}, {{Company}}) → Notify User
Bulk Send to Many Recipients
Form Trigger → DocuSign (Bulk Send: Create List) → DocuSign (Bulk Send: Send) → DocuSign (Bulk Send: Get Batch Status)
Monitor & Retry Failed Webhooks
Schedule Trigger → DocuSign (Connect Event: Get Failures) → IF (Has Failures) → DocuSign (Connect Event: Retry) → Slack (Alert)
Filtering
“Get Many” operations support filtering:
| Filter | Description | Available On |
|——–|————-|————–|
| status | Filter by envelope status | Envelopes, Folder Search |
| fromDate | Start date for date range | Envelopes, Folder Search |
| toDate | End date for date range | Envelopes, Folder Search |
| searchText | Search by subject or recipient | Envelopes, Templates, Folder Search |
| folderId | Filter by folder | Templates |
Security
Webhook Security
The webhook trigger includes built-in security features:
Input Validation
– localhost, 127.0.0.1, 0.0.0.0
– Private ranges: 10.x.x.x, 172.16-31.x.x, 192.168.x.x
– Link-local: 169.254.x.x (AWS metadata endpoint)
Token Security
Error Handling
The node includes built-in error handling with detailed messages:
Error Code Reference
| Status Code | Description |
|————-|————-|
| 400 | Bad Request – Invalid or malformed request |
| 401 | Unauthorized – Invalid credentials or expired token |
| 403 | Forbidden – No permission to access resource |
| 404 | Not Found – Envelope or template does not exist |
| 429 | Rate Limited – Too many requests (auto-retry) |
| 500+ | Server Error – DocuSign server issue (auto-retry) |
Troubleshooting
“consent_required” Error
1. Visit the consent URL for your environment (demo or production)
2. Log in with the user account specified in credentials
3. Grant access to the integration
“Invalid JWT” Error
1. Verify your RSA private key is complete (including BEGIN/END lines)
2. Check Integration Key (Client ID) is correct
3. Ensure User ID matches the account granting consent
Webhook Not Receiving Events
1. Verify the webhook URL is publicly accessible
2. Check DocuSign Connect configuration matches n8n URL
3. Verify HMAC secret matches (if using signature verification)
4. Check event types are enabled in Connect settings
Rate Limiting Issues
If you encounter rate limiting (429 errors):
1. The node automatically retries with backoff
2. Reduce frequency of API calls
3. Use “Return All” sparingly for large datasets
4. Consider caching responses where appropriate
Development
Install dependencies
npm installBuild the node
npm run buildWatch mode (rebuild on changes)
npm run devRun tests
npm testRun tests with coverage
npm run test:coverageRun linter
npm run lintFix linting issues
npm run lintfixCheck formatting
npm run format:checkFormat code
npm run formatType check
npm run typecheck
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
1. Fork the repository
2. Create your feature branch (git checkout -b feature/amazing-feature)
3. Commit your changes (git commit -m 'feat: add amazing feature')
4. Push to the branch (git push origin feature/amazing-feature)
5. Open a Pull Request
Resources
Changelog
v2.0.0
6 New Product API Nodes:
9 eSignature Quick Wins (existing node):
New credentials: DocuSignWebFormsApi, DocuSignMonitorApi, DocuSignClickApi, DocuSignMaestroApi, DocuSignNavigatorApi, DocuSignAdminApi — each with least-privilege OAuth2 scopes
604 total tests, 54 resource definitions (eSignature), ~200+ operations
v1.0.0
Production-Ready Release:
v0.11.0
Envelope & Template Sub-Resources:
Account & Administration:
External Services:
v0.10.0
Envelope Enhancements:
Account Management:
PowerForm Enhancements:
Advanced Features:
v0.9.0
Envelope Enhancements:
Recipient & Tab Management:
Administration:
Advanced Features:
v0.8.0
Advanced Features:
v0.7.0
Power Features:
v0.6.0
New Features:
v0.5.0
Quality & Verification:
setTimeout global)validateRequired/validateEmail functionsv0.4.1
Maintenance:
n8n-nodes-docusign-esign for n8n Community Nodes compatibilityv0.4.0
New Features:
– Allow Markup – Let signers annotate documents
– Allow Reassign – Let signers reassign to others
– Brand ID – Use custom branding
– Enable Wet Sign – Allow print-and-sign
– Enforce Signer Visibility – Signers only see their fields
v0.3.0
New Features:
– Add placeholder/value pairs like {{FirstName}} → John
– Configurable font size (Size 7-72)
– Automatically converts to anchored text tabs
v0.2.0
New Features:
v0.1.0
New Features:
v0.0.4
Initial Release:
License
—
Made with ✍️ by Jan Marc Coloma