Description
n8n-nodes-allsign
n8n integration for the AllSign e-signature platform.
Create, send, and manage documents for electronic signature directly from your n8n workflows using the AllSign API v3. The node follows n8n’s Resource + Operation pattern: a single Resource, Document, with eight operations:
- Create Document — a single
POST /v3/documentscall with inline signers and signature validation (no separate add-signer/invite steps). - Send Document —
POST /v3/documents/{documentId}/send, to (re)send the invitation for a document that already exists, optionally overriding who receives it. - Get Document —
GET /v3/documents/{documentId}, to retrieve a document by ID. - List Documents —
GET /v3/documents, with optional filters and pagination. - List Signers —
GET /v3/documents/{documentId}/signers, to list a document’s signers. - Get Evidence —
GET /v3/documents/{documentId}/evidence, to retrieve the signed PDF + NOM-151 constancia (presigned URLs). - Void Document —
POST /v3/documents/{documentId}/void, to annul a document (not a delete — NOM-151 retention keeps the record). - Remind Signer —
POST /v3/documents/{documentId}/signers/{signerId}/remind, to manually resend the invitation to one signer. - ✅ Email-only signers
- ✅ WhatsApp-only signers (phone number, no email required)
- ✅ Optional Role Name per signer
- Binary Input — Use a file from a previous node (e.g. Google Drive, HTTP Request, Dropbox)
- URL — Provide a public URL to a PDF or DOCX file (Google Drive and Dropbox links are auto-converted)
- Activating the workflow registers a webhook endpoint in AllSign pointing at n8n; deactivating it deletes that endpoint. Nothing to configure in the dashboard.
- Every delivery is signature-verified (Standard Webhooks) with the secret AllSign hands over at registration. A delivery with a bad or missing signature is answered
401and never reaches your workflow; AllSign records it under the endpoint’s deliveries. - A delivery AllSign retries (same event id) is acknowledged but the workflow does not run twice.
- If n8n restarts, the existing endpoint is reused — no duplicates. If someone deletes it from the dashboard, the node registers a fresh one on next activation.
- When the node reuses an existing endpoint, it first brings the endpoint’s events in line with the ones selected in the node.
- An AllSign account holds up to 25 webhook endpoints, and disabled ones count toward that limit. Past it, activating fails with the API’s error; delete the endpoints you no longer use from the dashboard.
—
✨ Features
📄 Operation: Create Document
Create a document from an inline File (PDF/DOCX, URL or binary input) or from an existing AllSign Template (by ID + variable values) — signers and signature validation travel inline in the same request.
📱 Signers: Email & WhatsApp
Signers can be reached via email or WhatsApp. Each signer can also carry an optional Role Name, used to auto-assign template variables marked with that role.
🔐 6 Signature Validations
| Validation | Description |
| ——————— | ——————————————————————— |
| Autógrafa | Handwritten digital signature (on by default) |
| NOM-151 | NOM-151-SCFI certified conservation timestamping (Mexico) |
| FEA | Advanced Electronic Signature — Mexico standard |
| Biometric Selfie | Face comparison against the signer’s government ID (anti-deepfake) |
| ID Scan | Government-issued ID scan (INE, passport, etc.) |
| Video Signature | Recorded video of the signer during the signing process |
📥 File Input (Source: File)
📑 Template Input (Source: Template)
Reference an existing AllSign template by Template ID and fill in its variables via Template Values (JSON, natural variable-name keys).
⚙️ Additional Options
| Option | Description |
| ——————- | ———————————————————————— |
| Expires At | Set an expiration deadline — document auto-expires after this date |
| Idempotency Key| Safely retry the create request without creating a duplicate document |
📤 Operation: Send Document
Send (or resend) the signing invitation for a document that already exists.
| Field | Description |
|:—|:—|
| Document ID | The doc_... of the document to send (required) |
| Recipients (optional) | Overrides who receives the invitation — same Delivery Method (Email/WhatsApp) shape as Signers. Leave empty to send to the signers already attached to the document |
| Idempotency Key (optional) | Safely retry the send request without dispatching duplicate invitations |
> Idempotency Key is always sent, even if you leave it empty. The AllSign API requires an Idempotency-Key header on every Create/Send request. If you don’t set one, the node auto-generates a random UUID v4 per item — set your own only if you need a stable key across manual retries.
📄 Operation: Get Document
Retrieve a document by ID — read-only, no body, no Idempotency-Key (doesn’t apply to GET).
| Field | Description |
|:—|:—|
| Document ID | The doc_... of the document to retrieve (required) |
📋 Operation: List Documents
List documents — read-only, no body, no Idempotency-Key.
| Field | Description |
|:—|:—|
| Limit | Max documents to return (1-100, default 50) |
| Filters (optional collection) | Status (lifecycle), Scope (Owner/Organization/Tenant/Accessible), Search (free text), Starting After / Ending Before (pagination cursors), Folder ID, Include Total |
Only the filters you actually set are sent to the API — everything else is omitted so the API applies its own defaults (e.g. scope=owner).
👥 Operation: List Signers
List a document’s signers — read-only, no body, no Idempotency-Key.
| Field | Description |
|:—|:—|
| Document ID | The doc_... whose signers you want to list (required) |
🧾 Operation: Get Evidence
Get a document’s evidence bundle — read-only, no body, no Idempotency-Key.
| Field | Description |
|:—|:—|
| Document ID | The doc_... of the document (required) |
Returns presigned URLs for the fully-signed PDF and the NOM-151 conservation constancia. available is false until every signer has completed — poll until it flips to true.
🚫 Operation: Void Document
Void (annul) a document. Not a delete — NOM-151 retention keeps the voided record for audit purposes.
| Field | Description |
|:—|:—|
| Document ID | The doc_... to void (required) |
| Reason (optional) | Why the document is being voided — kept in the audit log; omitted from the request if left empty |
| Idempotency Key (optional) | Safely retry without double-voiding |
🔔 Operation: Remind Signer
Manually resend the signing invitation to one signer who hasn’t completed yet. Rate-limited by the API (once every 4 hours per signer).
| Field | Description |
|:—|:—|
| Document ID | The doc_... the signer belongs to (required) |
| Signer ID | The sgr_... to remind — get it from List Signers (required) |
| Idempotency Key (optional) | Safely retry without sending a duplicate reminder |
—
⚡ AllSign Trigger
Starts a workflow when something happens in AllSign — a document is sent, completed, signed by someone, expired… Without it a workflow only goes one way (create and send); with it, it can react when the signature actually lands.
| Field | Description |
|:—|:—|
| Events | Which events start the workflow. The list is loaded live from your account (GET /v3/webhooks/events), so it never goes out of date |
| Description (optional) | A label shown next to the URL in the AllSign dashboard, to tell several n8n workflows apart |
How it works:
> Reference: Webhooks and the receive-and-verify recipe.
> If n8n changes address, the endpoint registered under the old URL stays in your AllSign account. The node leaves it alone on purpose: it cannot tell that case apart from a workflow you imported, whose endpoint belongs to the original. It stops receiving once AllSign’s circuit breaker disables it; delete it from the dashboard when you see it.
> Your API key needs three scopes for the Trigger: webhook:read, webhook:write and webhook:delete. Without webhook:delete the node can register the endpoint but not remove it when you deactivate the workflow, and orphan endpoints pile up in your account. Edit the key’s scopes in the AllSign dashboard under Developers → API keys.
—
🚀 Getting Started
1. Configure Credentials
1. In n8n, go to Credentials → Add Credential → AllSign API
2. Enter your API Key — get one from allsign.io/developers/api-keys
3. (Optional) Set the Base URL if using a custom environment (default: https://api.allsign.io)
4. Click Save — the connection test validates your key automatically
2. Use the Node
Resource is always Document — the node only manages documents today, so this field just needs to be left at its default. Operation picks what to do with it.
To create a document:
1. Add the AllSign node to your workflow, leave Operation as Create Document
2. Set the document name and Source (File — URL or Binary — or an existing Template)
3. Add signers (name + email and/or WhatsApp number)
4. Toggle the signature validations you need
5. Execute!
To send an existing document:
1. Add the AllSign node, set Operation to Send Document
2. Set the Document ID (e.g. from a previous Create Document node’s output)
3. Optionally add Recipients to override who gets invited
4. Execute!
To retrieve, list, void, or remind:
1. Add the AllSign node, set Operation to Get Document, List Documents, List Signers, Get Evidence, Void Document, or Remind Signer
2. Fill in the required ID(s) — Document ID (all except List Documents) and, for Remind Signer, the Signer ID
3. Execute!
The signing invitation channel (email or WhatsApp) is auto-detected per signer/recipient based on the contact information provided.
—
🛠️ Development
For contributors and developers who want to modify or extend this node.
Clone & Install
git clone https://github.com/AllSign-io/n8n-nodes-allsign.git
cd n8n-nodes-allsign
npm install
Scripts
| Command | Description |
| ——————— | —————————- |
| npm run dev | Start n8n with hot reload |
| npm run build | Compile TypeScript → dist/ |
| npm run build:watch | Compile in watch mode |
| npm test | Run unit tests |
| npm run lint | Check code style |
Project Structure
n8n-nodes-allsign/
├── credentials/
│ └── AllSignApi.credentials.ts # API Key + Base URL credential
├── nodes/
│ └── Allsign/
│ ├── Allsign.node.ts # Main node (8 operations, v3)
│ ├── Allsign.node.json # Codex metadata & SEO
│ ├── Allsign.node.test.ts # Unit tests
│ └── allsign.svg # Node icon
├── examples/
│ ├── NDAAutomationAllSign_Workflow.json # Example workflow
│ └── NDATemplateAllSign.docx # DOCX template with variables
├── docs/
│ └── template-portal-description.md # n8n template portal description
├── package.json
├── tsconfig.json
└── jest.config.js
—
🐛 Troubleshooting
| Problem | Solution |
| —————————- | —————————————— |
| Connection test fails | Verify API Key and Base URL in credentials |
| “Service refused connection” | Check the Base URL matches your backend |
| TypeScript errors (dev) | Ensure Node.js v22+, run npm install |
—


