Render documents from rows
render_documentsRender one PDF per row of data with a built-in template, and return a PNG preview and a PDF download link for each document. Use when the user has a spreadsheet, table, CSV or list and wants a certificate of completion, letter, donation receipt or job offer letter for each row. Get the field keys from list_document_templates, map the user's columns onto them, and pass each row as an object keyed by field key; values must be text, numbers, true/false or null; a text value may hold at most 2000 characters unless list_document_templates gives a different limit for that field. Renders up to 25 rows per call and up to 50 documents per month for each user (in Claude, each conversation); callers the service cannot tell apart, such as all Claude users together, also share one monthly limit. The response says how many documents remain this month (or that the month's limit is shared with other users) and when the count resets. Rows missing a required field are reported in missing_fields. Preview and PDF links expire after one hour. This tool only fills the built-in templates; it does not accept HTML or custom designs.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rows | Yes | One object per document, at most 25 per call. | |
| title | No | Optional name for this set of documents, e.g. "Q3 volunteer certificates". | |
| template | Yes | Template key from list_document_templates. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | ||
| volume | Yes | ||
| message | No | ||
| continue | Yes | ||
| template | Yes | ||
| documents | Yes | ||
| expires_at | Yes | ||
| rows_received | Yes | ||
| rows_rendered | Yes | ||
| template_name | Yes | ||
| missing_fields | Yes |