canonical: https://jentic.com/apis/pdfmonkey.io/pdfmonkey

# PDFMonkey API

Jentic publishes the only available OpenAPI specification for PDFMonkey API, keeping it validated and agent-ready. PDFMonkey API generates PDF documents programmatically from templates populated with dynamic data. The service supports both synchronous and asynchronous document generation, enabling high-volume workflows where documents are processed in the background and retrieved when ready. It also provides document card management for organizing and tracking generated documents.

## For AI agents

Generate PDF documents from templates with dynamic data, supporting both synchronous and asynchronous generation modes. Manage and retrieve generated documents and document cards.

## Scope

Does not handle HTML-to-PDF conversion, file format transformation, or template visual design via API - use for programmatic document generation from existing templates only.

## Capabilities

- Generate PDF documents synchronously for immediate download
- Queue asynchronous PDF generation for high-volume batch processing
- Retrieve document status and download completed PDFs by ID
- Manage document cards for organizing generated document metadata
- List all generated documents with filtering options
- Track document generation progress for async workflows

## Use cases

### Synchronous Document Generation

Generate a PDF document immediately and receive the file in the API response. PDFMonkey's /documents/sync endpoint accepts template data and returns the completed PDF in a single request-response cycle. This is ideal for interactive workflows where users need their document instantly, such as downloading a receipt after a purchase.

Example prompt: POST to /documents/sync with template ID and dynamic data to generate and immediately retrieve a completed PDF

### High-Volume Async Generation

Queue large batches of PDF documents for background generation. POST to /documents to create a generation job, then poll GET /documents/{id} or use webhooks to retrieve the completed PDF when ready. This approach handles thousands of documents without blocking the calling application.

Example prompt: POST to /documents with template ID and data to queue async generation, then GET /documents/{id} to check status and retrieve the PDF when complete

### Document Lifecycle Management

Track and manage all generated documents through their lifecycle. List documents to audit generation history, retrieve individual document metadata via document cards, and monitor which documents are pending, completed, or failed. This provides full visibility into document generation operations.

Example prompt: GET /documents to list all generated documents, then GET /document_cards/{id} to retrieve metadata for a specific document generation

### AI Agent PDF Workflow via Jentic

AI agents generate PDF documents as part of automated business processes by calling PDFMonkey through Jentic. The agent searches for document generation operations, receives the schema for synchronous or async endpoints, and executes without managing bearer tokens or polling logic manually.

Example prompt: Search Jentic for 'generate PDF document', load the /documents/sync operation schema, and execute with template data to produce a PDF immediately

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /documents | Queue async PDF document generation |
| POST | /documents/sync | Generate a PDF synchronously and return immediately |
| GET | /documents/{id} | Retrieve a document by ID with status and download URL |
| GET | /document_cards/{id} | Retrieve document card metadata |
| GET | /document_cards | List all document cards |

## Key resources

- **Documents** — Create, list, and retrieve generated PDF documents (sync and async)
- **Document Cards** — Manage metadata cards for generated documents

## Why Jentic

- **Setup:** Wiring the PDFMonkey API by hand means managing its secret-key bearer auth and choosing between the synchronous and asynchronous document generation paths yourself. Through Jentic you install once, import PDFMonkey from the API Directory, store the API key once, and your agent calls it.
- **Permission scoping:** PDFMonkey carries its template and payload details in the request body and identifies a document by id in the path, so scope the agent by the operations it needs, such as generating a document synchronously or reading a document by id. You choose that set, so any operation you leave out stays unavailable to the agent.
- **Credential handling:** Your PDFMonkey API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'generate a PDF document', and Jentic returns the matching PDFMonkey operations including /documents and /documents/sync with full schemas so the agent chooses sync or async and calls the right endpoint without reading the reference docs.

## Related APIs

- **CraftMyPDF API** — Template-based PDF generation with a visual editor and component library
- **PDF Generator API** — Template-based PDF generation with workspace multi-tenancy
- **PDF Endpoint API** — Direct HTML-to-PDF conversion without templates

## FAQ

### Why is there no official OpenAPI spec for PDFMonkey API?

PDFMonkey does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call PDFMonkey API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the PDFMonkey API use?

PDFMonkey API uses bearer token authentication. You pass your secret API key from your PDFMonkey account dashboard as a Bearer token in the Authorization header. Through Jentic, this key is stored in the credential vault and agents never see the raw token.

### What is the difference between sync and async document generation?

POST to /documents/sync generates and returns the PDF in a single response. POST to /documents queues the generation in the background - you poll /documents/{id} or receive a webhook when the PDF is ready. Use sync for immediate needs and async for batch processing.

### How do I check the status of an async PDF generation?

GET /documents/{id} returns the current document status including whether generation is pending, processing, completed, or failed. Once complete, the response includes the download URL for the generated PDF.

### How do I generate PDFs through Jentic with PDFMonkey?

Install with pip install jentic, search for 'generate PDF document', and Jentic returns the /documents/sync or /documents operation schemas. Execute the call with your template ID and data payload. Jentic handles bearer auth automatically.

### What are document cards in PDFMonkey?

Document cards store metadata about generated documents, accessible via GET /document_cards/{id} or listed via GET /document_cards. They provide an organizational layer for tracking generation history and document attributes separate from the PDF files themselves.

### Can I limit what my agent is allowed to do with the PDFMonkey API?

Yes. Because you self-host Jentic One, your own rules decide which PDFMonkey operations and credentials the agent may use, so you scope it to only the calls it needs, such as generating a document synchronously through /documents/sync or reading one by id through GET /documents/{id}. If you leave out operations like queuing async jobs on /documents or listing document cards, those stay unavailable to the agent. This lets you grant an agent read-only access to generated documents while withholding the ability to create new ones.
