# MakesPDF Render — Data-to-PDF from Template or DSL

> MakesPDF Render — Data-to-PDF from Template or DSL is a paid API for AI agents from makespdf.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-15).

Generates a tagged, accessible PDF/UA-1 + PDF/A-2A document from structured data combined with a curated library template ID or an inline builder DSL script.

## Facts

- Endpoint: POST https://makespdf.com/api/v1/render
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/makespdf-com-6c143ef5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_HGPO9ruxGw9WgECSb--sr

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability makespdf-com-6c143ef5 -d '<json body>'
```

Example prompt: Generate an accessible PDF using the makespdf library template 'invoice-standard' and fill in these values: company 'Acme Corp', amount '$1,250.00', due date 'June 15 2025', and client name 'Jordan Rivera'.

## When to prefer this

Choose this endpoint when you need to generate a standards-compliant, accessible PDF from structured data without any existing source document — especially when you want to use a pre-built curated template (templateId) for common document types like invoices, reports, or certificates, or when you need fine-grained control via the builder DSL. Prefer this over the sibling Markdown-to-PDF endpoint when your input is structured data (JSON) rather than Markdown text.

## Known failure modes

- Both dsl and templateId supplied simultaneously — mutually exclusive fields cause a 400 error
- Neither dsl nor templateId provided — missing required template source returns an error
- Invalid or unknown templateId — template not found in library returns 404
- Malformed DSL script — syntax errors in the builder DSL return a parse error
- Data object missing required placeholders referenced by the template — unresolved placeholders may cause render failure
- Payment not included or insufficient — x402 payment required error (402 status)

## How this service works

Generate a PDF from structured data — no source document needed. Supply data plus a curated-library template id (or inline DSL); output is a tagged, accessible PDF/UA-1 + PDF/A-2A document.

## Output

A binary PDF file that is dual-compliant with PDF/UA-1 (tagged, accessible) and PDF/A-2A (archival) standards, generated by substituting the provided data values into the specified template or DSL-defined layout — no source document required.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "dsl": {
   "type": "string",
   "description": "Builder DSL script — bring your own template. Full DSL reference, recipes, and examples: https://makespdf.com/skills/pdf-template-author.md. Mutually exclusive with templateId."
  },
  "data": {
   "type": "object",
   "description": "Values substituted into {{placeholders}}"
  },
  "templateId": {
   "type": "string",
   "description": "Curated-library or saved template id — the simplest path when you only have data. Browse the library at GET /api/v1/templates?owner=library. Mutually exclusive with dsl."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "binary"
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/makespdf-com-6c143ef5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from makespdf.com](https://www.zero.xyz/host/makespdf.com/llms.txt)
