Documentos
Generar un documento
POST/templates/{id}/generations
Crea un documento inmutable: la versión guardada de la plantilla con values aplicados. Responde 201 con el documento, incluido su Markdown, la URL de su página y el estado de su PDF. El PDF empieza a generarse en nuestros servidores en cuanto existe el documento; suele estar listo en segundos.
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
idobligatorio | uuid | El id de la plantilla. |
values | object | Clave del campo a valor; clave del grupo a un array de objetos de instancia. Ver Rellenar campos. |
title | string | Un nombre para el documento. Por defecto: el título de la plantilla seguido de su número. |
Petición
curl -X POST https://usepaperclerk.com/api/v1/templates/4d1f0c2e-7b3a-4c1e-9d2f-1a2b3c4d5e6f/generations \
-H "Authorization: Bearer pc_YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Invoice — Maple & Fern, September",
"values": {
"client_name": "Maple & Fern Ltd.",
"payment_terms": "Net 15",
"due_date": "10/15/2026",
"line_items": [
{ "item": "Brand identity system", "quantity": "1", "amount": "4800" },
{ "item": "Brand guidelines document", "quantity": "1", "amount": "1200" }
]
}
}'Respuesta
JSON
HTTP/1.1 201 Created
Location: https://usepaperclerk.com/app/generated/9b8e2f10-5c4d-4e3f-8a7b-6c5d4e3f2a1b
{
"id": "9b8e2f10-5c4d-4e3f-8a7b-6c5d4e3f2a1b",
"template_id": "4d1f0c2e-7b3a-4c1e-9d2f-1a2b3c4d5e6f",
"title": "Invoice — Maple & Fern, September",
"generation_number": 13,
"source": "api",
"source_version": 3,
"created_at": "2026-09-12T14:02:11.480Z",
"markdown": "# Invoice — Maple & Fern, September\n\nInvoice INV-0013 for Maple & Fern Ltd. …",
"html": "<div class=\"doc-page\" …>…</div>",
"html_truncated": false,
"url": "https://usepaperclerk.com/app/generated/9b8e2f10-5c4d-4e3f-8a7b-6c5d4e3f2a1b",
"pdf_status": "pending",
"pdf_url": "https://usepaperclerk.com/api/v1/generations/9b8e2f10-5c4d-4e3f-8a7b-6c5d4e3f2a1b/pdf"
}- La cabecera Location lleva la URL de la página del documento.
- Si la misma petición vuelve a llegar en 10 minutos, la respuesta es el documento ya generado: HTTP 200 con replayed: true en lugar de 201.
- pdf_status empieza en pending y pasa a ready cuando termina el renderizado; pdf_url es el endpoint de PDF de abajo.