pandadoc-sales-manager

Automate PandaDoc proposal creation, sending, status tracking, and bulk document operations via API scripts.

Updated Dec 4, 2025
One-click install
npx skills add https://github.com/dallascrilley/dowser --skill pandadoc-sales-manager-dallascrilley
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: pandadoc-sales-manager
Source: https://github.com/dallascrilley/dowser/tree/main/skills/pandadoc-sales-manager
Command: npx skills add https://github.com/dallascrilley/dowser --skill pandadoc-sales-manager-dallascrilley

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires requests, python-dotenv, and includes scripts (resource) and references (resource) components.

What problem does it solve? Sales teams waste hours manually creating proposals, sending documents, and checking signature status in PandaDoc, while direct API usage often fails due to async processing race conditions and rate limit errors. ## Core Features & Use Cases - Template-Based Proposal Creation: Generate documents from PandaDoc templates with customer field mapping, automatic status polling until draft, and built-in rate limiting. - Bulk Operations with Recovery: Create hundreds of proposals from CSV or JSON files with progress tracking, resume capability, and error reporting. - Status Tracking & Downloads: Monitor document status in watch mode, export to JSON/CSV, and batch-download completed documents by date range. - Use Case: Export 100 opportunities from your CRM to a CSV file, then bulk-create personalized proposals, send them all, and download the signed PDFs at the end of the quarter. ## Quick Start Set your PANDADOC_API_KEY environment variable and ask the assistant to create a proposal from a template for a specific customer name and email.

Frequently Asked Questions about pandadoc-sales-manager

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a PandaDoc proposal from a template with Python?▼

Use the create_proposal.py script with a template ID, customer name, email, and optional field mappings. The script validates the template, creates the document, and automatically polls until it reaches document.draft status before returning the document ID.

How do I bulk create PandaDoc documents from a CSV file?▼

Run bulk_create_documents.py with a template ID and a CSV containing name, email, company, and amount columns. It handles rate limiting, saves progress to .batch_progress.json, and supports resuming interrupted batches with the --resume flag.

Why does the PandaDoc API return 404 right after creating a document?▼

Document creation is asynchronous, so new documents start in document.uploaded status and are not ready for operations. You must poll the status endpoint until it reaches document.draft, which typically takes 2-5 seconds.

What are the PandaDoc API rate limits?▼

The sandbox environment allows 10 requests per minute, requiring roughly 6-second delays between calls. Production allows 500 requests per minute for creates and 100 per minute for downloads, and the scripts enforce these delays automatically.

Can I track PandaDoc document status in real time?▼

Yes, check_document_status.py supports a watch mode that polls at configurable intervals and displays live updates. You can also export results to JSON or CSV, or configure webhook subscriptions for event-driven notifications.