# PDFMonkey

PDFMonkey is a service that automates the generation of PDF documents from templates, allowing users to create professional PDFs programmatically.

- **Category:** documents
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 18
- **Triggers:** 0
- **Slug:** `PDFMONKEY`
- **Version:** 20260414_00

## Tools

### Create Document

**Slug:** `PDFMONKEY_CREATE_DOCUMENT`

Tool to create a Document. Use when you need to instantiate a PDF from a template; set status='pending' to queue immediate generation. Ensure valid `document_template_id` is provided.

### Create Document Sync

**Slug:** `PDFMONKEY_CREATE_DOCUMENT_SYNC`

Tool to create a document and wait for generation to finish. Use when immediate PDF is needed.

### Create Template

**Slug:** `PDFMONKEY_CREATE_TEMPLATE`

Creates a new PDF document template in PDFMonkey. Use this to define reusable templates with HTML/Liquid content and CSS styles for generating PDF documents. Typical workflow: Create template → Preview with draft content → Publish → Generate documents. The template supports Liquid templating syntax (e.g., {{variable_name}}) for dynamic content injection. Only 'identifier' is required; all other fields have sensible defaults.

### Delete Document

**Slug:** `PDFMONKEY_DELETE_DOCUMENT`

Tool to delete a Document by its ID. Use when you need to permanently remove a document after confirming its ID. Returns 204 No Content on success.

### Delete PDFMonkey Document Template

**Slug:** `PDFMONKEY_DELETE_TEMPLATE`

Tool to delete a document template by ID. Use when you need to remove obsolete templates after validation.

### Download Document File

**Slug:** `PDFMONKEY_DOWNLOAD_DOCUMENT_FILE`

Tool to download a generated PDF file via a presigned URL. Use after obtaining a valid download_url from the Document details endpoint. Verify document status is 'success' (not 'draft' or 'pending') via PDFMONKEY_GET_DOCUMENT before downloading to avoid incomplete files. The URL expires after 1 hour; fetch a new URL upon expiry (403 Forbidden).

### Get Current User

**Slug:** `PDFMONKEY_GET_CURRENT_USER`

Tool to retrieve details about the currently authenticated user. Use when you need account info (quota, plan, email, locale) after authentication.

### Get Document

**Slug:** `PDFMONKEY_GET_DOCUMENT`

Tool to fetch a Document by its ID. Returns the full document record including payload, meta, logs, and download URL. Note: download_url is time-limited; if a download attempt fails, call GetDocument again to obtain a fresh URL. Check the status field for a finalized (non-draft) state before passing the record to downstream processing tools.

### Get DocumentCard

**Slug:** `PDFMONKEY_GET_DOCUMENT_CARD`

Tool to fetch a DocumentCard by ID. Use when you have a DocumentCard ID and need its download URLs, status, and metadata. Use after generating or updating a DocumentCard.

### Get Template by ID

**Slug:** `PDFMONKEY_GET_TEMPLATE`

Tool to fetch a Document Template by ID. Use when you need the template's content, styles, settings, and preview URL.

### List DocumentCards

**Slug:** `PDFMONKEY_LIST_DOCUMENT_CARDS`

Tool to list DocumentCards. Use when you need to retrieve multiple DocumentCards with optional pagination and filtering by template, status, workspace, or update time.

### List PDF Engines

**Slug:** `PDFMONKEY_LIST_PDF_ENGINES`

Lists all available PDF rendering engines in PDFMonkey. Returns engine IDs, version names, numeric versions, and deprecation status. Use this to select a PDF engine when creating templates or generating documents. Recommended: Use the latest non-deprecated engine (e.g., v5 or highest version).

### List Template Cards

**Slug:** `PDFMONKEY_LIST_TEMPLATES`

List all document template cards for a workspace. Use this action to: - Retrieve all templates available in a workspace - Filter templates by folder (or get only root folder templates with folders='none') - Paginate through large template lists - Sort templates by identifier, creation date, or last update date Returns template cards with metadata including IDs, names, auth tokens, and timestamps.

### List Workspaces

**Slug:** `PDFMONKEY_LIST_WORKSPACES`

Tool to list workspaces (applications). Use when you need all available workspaces for the authenticated user after login.

### Preview Template

**Slug:** `PDFMONKEY_PREVIEW_TEMPLATE`

Fetches the template preview viewer page from PDFMonkey's preview_url. Returns an HTML viewer page that displays the rendered template draft. Use this after obtaining a template's preview_url via Get Template or List Templates.

### Update Document

**Slug:** `PDFMONKEY_UPDATE_DOCUMENT`

Updates an existing PDFMonkey document's payload, metadata, template, or status. Common use cases: - Modify document data (payload) before generation - Change the template used for the document - Add or update custom metadata - Trigger PDF regeneration by setting status to 'pending' Note: To regenerate a document with updated data, update the payload and set status='pending'.

### Update Document Template

**Slug:** `PDFMONKEY_UPDATE_TEMPLATE`

Tool to update a document template’s properties. Use when you need to modify an existing template’s content, styles, settings, engine, folder, or TTL.

### View Public Share Link

**Slug:** `PDFMONKEY_VIEW_PUBLIC_SHARE_LINK`

Tool to download a publicly shared PDF via its permanent share link. Use when the document's public_share_link is enabled to fetch the PDF file directly.
