canonical: https://jentic.com/apis/pdfgeneratorapi.com/pdfgeneratorapi

# PDF Generator API

PDF Generator API turns reusable templates into finished PDF documents through a REST interface. You design a template once, then merge it with your own data to render invoices, reports, contracts, and other documents on demand. Templates live inside workspaces, so a product can keep each customer's designs separate, and a browser-based editor endpoint lets end users adjust a template without leaving your application. It suits SaaS products and back-office tools that need document output driven by data rather than hand-built files.

## For AI agents

Generate PDF documents from templates with PDF Generator API: list and manage templates, merge them with data, and render output within a workspace.

## Scope

Renders PDF documents from templates and manages those templates and workspaces. Does not store your business records, send the finished documents, or extract data from existing PDFs.

## Capabilities

- List, read, create, update, and delete document templates
- Render a PDF by merging a stored template with supplied data
- Render a PDF from an inline template passed in the request
- Copy an existing template to start a new variant
- Open a template in the browser-based editor for end-user changes
- Read and delete workspaces that group a customer's templates

## Use cases

### Render documents from stored templates

Produce finished PDFs on demand from templates a team maintains. The agent reads the available templates, then merges the chosen one with the supplied data and returns the rendered document, so a product can issue invoices or reports without assembling files by hand.

Example prompt: List the templates, then render the selected template with the provided data and return the resulting PDF.

### Manage a template library

Keep a product's document templates current. The agent creates, updates, copies, and removes templates so the library reflects the documents the product needs, and a new variant can start from a copy of a proven design.

Example prompt: Create or update a template, or copy an existing one, so the template library matches the product's current document set.

### Offer template editing to end users

Let a product's own users adjust their document designs. The agent opens a template in the browser-based editor so a customer can change layout or content, keeping design self-service without shipping a separate editor.

Example prompt: Open the chosen template in the editor so an end user can adjust it, then confirm the editor session for that template.

### Separate templates per customer

Keep each customer's document designs isolated. The agent reads and removes workspaces so a multi-tenant product can manage template groups per customer and clean up when an account closes.

Example prompt: Read a workspace to see its templates, or delete a workspace when its customer account closes.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/templates` | List the templates in the workspace |
| POST | `/templates` | Create a new template |
| POST | `/templates/output` | Render a PDF from an inline template and data |
| GET | `/templates/templateId` | Read a single template by its identifier |
| DELETE | `/workspaces/workspaceId` | Delete a workspace and its grouping |

## Key resources

- **Template** — A reusable document design that is merged with data to render a PDF.
- **Workspace** — A grouping that keeps one customer's templates separate from another's.
- **Output** — The rendered document produced when a template is merged with supplied data.

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 77 / 100
- **Maturity:** AI-Ready
- **Dimensions:**
  - Foundational Compliance: 87 / 100
  - Developer Experience & Jentic Compatibility: 82 / 100
  - AI-Readiness & Agent Experience: 56 / 100
  - Agent Usability: 94 / 100
  - Security: 75 / 100
  - AI Discoverability: 100 / 100
- **View full report:** https://jentic.com/apis/pdfgeneratorapi.com/pdfgeneratorapi/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring PDF Generator API by hand means signing JWT bearer tokens from your key and secret, learning how templates and workspaces relate, and choosing between stored and inline rendering. Through Jentic you install once, import PDF Generator API from the Jentic API Directory, configure your credentials, and your agent calls it.
- **Permission scoping:** Rendering and template management sit behind the same key, and because Jentic One is self-hosted, your own rules decide which operations the agent may call. You can allow document rendering while withholding operations that delete templates or workspaces, so the agent reaches only what you approved.
- **Credential handling:** Your PDF Generator API key and secret are held encrypted by your own Jentic One instance, which produces the bearer token and attaches it to each request only at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent, such as rendering a PDF from a template, and Jentic returns the matching operation with typed inputs, so the agent calls the right one without reading the whole template and workspace surface.

## Related APIs

- **CraftMyPDF API** — Generate PDFs and images from drag-and-drop templates
- **PDFMonkey API** — Render PDFs from HTML templates managed in a dashboard
- **Cloudmersive OCR API** — Extract text and data from scanned documents and images

## FAQ

### What authentication does PDF Generator API use?

PDF Generator API authenticates requests with a JWT bearer token that your integration signs from its API key and secret. Through Jentic, the credentials you configure are held encrypted by your own Jentic One instance and used to produce that bearer token at execution time. Check PDF Generator API's developer documentation for how the token is constructed.

### Can PDF Generator API render a document without saving a template first?

Yes. Alongside rendering from stored templates, there is an output operation that accepts an inline template and data in the request, so you can produce a one-off PDF without creating a persisted template.

### What are the rate limits for PDF Generator API?

The OpenAPI description does not specify rate limits. Check PDF Generator API's developer documentation for the limits on your plan before rendering documents in bulk.

### Is there an MCP server for PDF Generator API?

You don't need an MCP server to use PDF Generator API with your agent. Through Jentic, your agent finds the template and rendering operations by intent and calls them directly, with your credentials injected at run time by your own Jentic One instance.

### How do I connect PDF Generator API to my agent through Jentic?

To run it on your own infrastructure, install Jentic One from its GitHub repo, then import PDF Generator API from the Jentic API Directory and configure your API key and secret. Your agent can then manage templates and render documents with the bearer token produced at execution time.

### Can I limit what my agent is allowed to do with PDF Generator API?

Yes. Because Jentic One is self-hosted, your own rules decide which PDF Generator API operations the agent may call, so you can allow rendering documents while withholding operations that delete templates or workspaces. Your credentials stay encrypted on your own instance and are used only when a permitted request runs.
