Generate training certificates as PDFs from one reusable template
When a class finishes, give each learner a certificate with the same design and their own details. Save the design once, then change the name, course, and date for each person.
Start with the completion certificate template. It has a portrait layout with a border, a large learner name, and space for the course and date. You can fill it in through the editor or connect it to your training records through the API.
This is the finished gallery certificate with its sample learner and course. Open its HTML to copy the full design and sample data.
Four fields make each certificate
The template accepts four required text fields:
| Field | What to enter |
|---|---|
issuer | Your school, studio, or training team |
learner | The person who completed the training |
course | The course or workshop name |
date | The date as you want it to appear, such as “4 September 2026” |
The shared template has no fields for grades, signatures, certificate IDs, or logos. You can change the design in your own copy if you need more. Keep any new fields and their data in step with those edits.
Make your first certificate
Choose Use template on the completion certificate page. Open your copy in the editor and use Data to replace the sample values. Here is one complete record:
{
"issuer": "Fieldnote Learning",
"learner": "Alex Morgan",
"course": "A practical guide to clear project plans",
"date": "4 September 2026"
}
The certificate shows Fieldnote Learning as the issuer and Alex Morgan as the learner. The course and date appear below the learner's name.
Change the colours or type in the editor if needed, then save your design. Open Preview and press Refresh preview to see the filled result. Check the spelling and the layout, then export the PDF. Read Design and edit a template for the full editor flow.
Try the longest learner and course names in your class before making the whole set. A name can be valid data and still need more room in the design. Check the downloaded PDF as well as the preview.
Repeat it for a class
Keep the same template and replace the data for each learner:
- Enter the first learner's four values in Data.
- Refresh the preview and check the name, course, and date.
- Export the PDF and save it with a name you can find later.
- Change
learnerfor the next person. Keepissuerandcoursewhen they stay the same, and changedatewhen needed. - Preview and export again.
You can keep your class list in a spreadsheet, but this flow does not upload that spreadsheet. You enter one learner at a time. For a larger class, a developer can read the records in your own system and send one API request for each person.
Save your downloaded files where your team keeps training records. Files made in thirds.ai remain available for 30 days.
Connect your training records to the API
Use the ID and version number of your saved template. Each save creates a new version, so select the version that has your approved design. The example below uses version 1; replace it if you save a later version.
This request uses the certificate's 794 by 1123 px page size. If you change its size in your own design, change the PDF settings to match. See PDF and image options.
Replace the API key and template ID before you send this request:
curl https://thirds.ai/v1/pdf \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: certificate-alex-2026-09-04-v1" \
--data '{
"template_id": "YOUR_SAVED_TEMPLATE_ID",
"version": 1,
"data": {
"issuer": "Fieldnote Learning",
"learner": "Alex Morgan",
"course": "A practical guide to clear project plans",
"date": "4 September 2026"
},
"pdf": {"width": "794px", "height": "1123px"},
"wait": false
}'
Keep the job ID from the reply. Poll GET /v1/pdf/{id} under a time deadline, and follow Retry-After when the response supplies it. On succeeded, use the download link in the response to save the PDF. Stop on failed or cancelled and inspect the error. A deadline does not cancel the job; keep its ID so you can check it later.
Give each new certificate a different Idempotency-Key. If a network error leaves the result unknown, retry with the same key and the same request data. Do not make a new key just because a reply is missing. The retry and download guide explains how to keep retries from creating duplicate work.
For the next learner, use the same template ID and approved version with that learner's data and a new key. Start with a few records, check the PDFs, and then process the rest. Use templates with your data covers saved versions and data checks.
What it costs
A successful PDF of up to 100 pages costs one credit. A verified free account gets 25 credits a month, and every template is available on the Free plan. Copying this template and making hand edits lets you try the workflow without an AI build.
If you choose to use the AI chat to change the design, its credit costs also apply. Check plans and pricing for those costs and larger monthly credit amounts.
Open the completion certificate template and make one certificate with your own course details.

