PandaDoc
Document automation for contracts, proposals, and e-signatures
PandaDoc
Connect to PandaDoc for document creation, e-signatures, and contract automation.
Overview
PandaDoc is a document automation platform. The integration supports:
- Templates - List and use document templates
- Documents - Create, send, and track documents
- E-signatures - Send for signature and track status
- Folders - Organize documents
- Contacts - Manage recipient contacts
Prerequisites
- PandaDoc account (Free trial, Essentials, Business, or Enterprise)
- API access enabled
- OAuth app or API key configured
Authentication
PandaDoc uses OAuth 2.0 for authentication via Nango.
Available Actions
Template Actions
listTemplates
List available templates.
Parameters:
| Field | Type | Description |
|---|---|---|
q | string | Search query |
tag | string | Filter by tag |
folderId | string | Filter by folder |
count | number | Results per page (default: 50) |
page | number | Page number |
deleted | boolean | Include deleted |
getTemplate
Get template details.
Document Actions
createDocument
Create a document from a template.
Parameters:
| Field | Type | Required | Description |
|---|---|---|---|
templateId | string | Yes | Template UUID |
name | string | Yes | Document name |
recipients | array | No | Document recipients |
recipients[].email | string | Yes | Recipient email |
recipients[].first_name | string | No | First name |
recipients[].last_name | string | No | Last name |
recipients[].role | string | No | Role from template |
recipients[].signing_order | number | No | Signing order |
tokens | array | No | Template variable values |
tokens[].name | string | Yes | Token name |
tokens[].value | string | Yes | Token value |
pricingTables | array | No | Pricing table data |
folderId | string | No | Folder UUID |
tags | array | No | Document tags |
metadata | object | No | Custom metadata |
getDocument
Get document details.
getDocumentStatus
Get document status (lighter endpoint for status checks).
Document Statuses:
| Status | Description |
|---|---|
document.draft | Draft, not yet sent |
document.sent | Sent for signature |
document.completed | All signatures collected |
document.viewed | Viewed by recipient |
document.waiting_approval | Awaiting internal approval |
document.approved | Internally approved |
document.rejected | Rejected |
document.waiting_pay | Awaiting payment |
document.paid | Payment received |
document.voided | Voided |
document.declined | Declined by recipient |
document.external_review | External review in progress |
listDocuments
List documents with filters.
sendDocument
Send a document for signature.
Parameters:
| Field | Type | Description |
|---|---|---|
documentId | string | Document UUID |
subject | string | Email subject |
message | string | Email message |
silent | boolean | Send without email (default: false) |
forwarding_allowed | boolean | Allow forwarding (default: true) |
createDocumentLink
Create a sharing/signing link.
Parameters:
| Field | Type | Description |
|---|---|---|
documentId | string | Document UUID |
recipient | string | Recipient email (for specific recipient link) |
lifetime | number | Link lifetime in seconds (default: 3600) |
Response:
downloadDocument
Get document download URL.
deleteDocument
Delete a document.
updateDocumentStatus
Update document status (void, mark complete, etc.).
Valid Status Transitions:
| From | To |
|---|---|
document.draft | document.sent |
document.sent | document.voided |
document.viewed | document.voided |
document.waiting_approval | document.approved, document.rejected |
Folder Actions
listFolders
List folders.
createFolder
Create a new folder.
renameFolder
Rename a folder.
Contact Actions
listContacts
List contacts.
createContact
Create a new contact.
updateContact
Update a contact.
deleteContact
Delete a contact.
Webhook Triggers
PandaDoc webhooks trigger workflows on document events.
Event Types:
| Event | Description |
|---|---|
document_state_changed | Document status changed |
recipient_completed | Recipient completed their actions |
document_completed | All recipients completed |
document_paid | Payment received |
document_viewed | Document was viewed |
document_deleted | Document was deleted |
Example Workflow
Complete contract workflow:
Rate Limits
| Limit | Value |
|---|---|
| API calls | 50/minute (standard) |
| API calls | 300/minute (enterprise) |
| Document creation | 100/hour |
| Bulk operations | 10 concurrent |
Troubleshooting
Common Errors
| Error | Cause | Solution |
|---|---|---|
document_not_found | Invalid document ID | Verify document exists |
template_not_found | Invalid template ID | Verify template ID |
invalid_recipients | Missing required recipient data | Check email format |
rate_limit_exceeded | Too many requests | Implement backoff |
Document Processing
Documents take time to process after creation:
- Create document (status:
document.draft) - Wait 3-5 seconds for processing
- Send document (status:
document.sent)
Use a wait step between creation and sending.