Skip to main content
Lumin templates are documents built in the Lumin application that contain placeholders (merge tags, form fields, and variables), which you can populate with dynamic data to produce customized PDF documents on demand. The same template can serve two purposes:
  • Generate a standalone PDF — produce a filled document without a signing workflow.
  • Send as a signature request — use the template as the document in a signature request via the /signature_request/send-from-template endpoint.
Tags and field names use object.field naming conventions (for example: Client.Name, Effective.Date, Customer.AgreeToTerms).

Placeholder types

Signature, initials and radio button fields cannot be prefilled. They will appear empty in the generated document regardless of any value you provide.

1

List your templates

Call GET /templates to see the templates available in your workspace. Provide the X-Lumin-API-Version: 1.1 header and the required page and limit query parameters.
Note the template_id — the prefix tells you the template type:
2

Get template details

Call GET /templates/{template_id} to inspect the specific tags, fields, and variables the template expects. Use this to know exactly what keys to include when you generate the document.
Supply values for every item where is_required: true. Optional fields can be omitted.
3

Generate the PDF

Call POST /templates/{template_id}/generate-document with the values for your tags, fields, and/or variables.
JSON response (Accept: application/json):
signed_url is a pre-signed HTTPS download link that expires in 30 minutes (expires_at is a Unix timestamp in seconds).PDF binary response (Accept: application/pdf):When you set Accept: application/pdf, the API returns the raw PDF binary stream instead of JSON. Use this to stream the file directly without a separate download step.

Request body reference