Certificate of Completion preview
PDF certificate A4

Certificate of Completion

Formal A4 landscape certificate of completion with decorative border, recipient name, course title, organisation, date, and optional instructor signature line. For a shareable image version, see the image template 'img-certificate'.

Use Cases

  • Online course completion certificates
  • Corporate training programmes
  • Professional development certification
  • Academic achievement certificates

Tags

certificate completion course e-learning award diploma landscape a4

Template Variables

Variable Type Default Description
recipient_name string Jane Smith Recipient full name
course_name string Advanced Python Programming Course or programme name
organisation string Acme Academy Issuing organisation
completion_date string 7th May 2026 Completion date
instructor_name string Dr. John Doe Instructor or signatory name
certificate_id string CERT-00001 Certificate serial number
accent_color color #7c3aed Primary accent colour
border_color color #a78bfa Decorative border colour
logo_url url Organisation logo URL

API Example

POST to https://pdf.toolkitapi.io/v1/pdf/from-template with your template URL and variable values.

curl -X POST "https://pdf.toolkitapi.io/v1/pdf/from-template" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"template_url": "https://toolkitapi.io/static/templates/pdf/certificate.html", "variables": {"recipient_name": "Jane Smith", "course_name": "Advanced Python Programming", "organisation": "Acme Academy", "completion_date": "7th May 2026", "instructor_name": "Dr. John Doe", "certificate_id": "CERT-00001", "accent_color": "#7c3aed", "border_color": "#a78bfa", "logo_url": ""}, "page_size": "A4"}'
import httpx, base64

resp = httpx.post(
    "https://pdf.toolkitapi.io/v1/pdf/from-template",
    headers={"X-API-Key": "YOUR_API_KEY"},
    json={
        "template_url": "https://toolkitapi.io/static/templates/pdf/certificate.html",
        "variables": {
            "recipient_name": "Jane Smith",
            "course_name": "Advanced Python Programming",
            "organisation": "Acme Academy",
            "completion_date": "7th May 2026",
            "instructor_name": "Dr. John Doe",
            "certificate_id": "CERT-00001",
            "accent_color": "#7c3aed",
            "border_color": "#a78bfa",
            "logo_url": ""
        },
        "page_size": "A4"
    },
)
pdf_bytes = base64.b64decode(resp.json()["pdf"])
with open("result.pdf", "wb") as f:
    f.write(pdf_bytes)
const response = await fetch("https://pdf.toolkitapi.io/v1/pdf/from-template", {
  method: "POST",
  headers: {
    "X-API-Key": "YOUR_API_KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "template_url": "https://toolkitapi.io/static/templates/pdf/certificate.html",
    "variables": {
      "recipient_name": "Jane Smith",
      "course_name": "Advanced Python Programming",
      "organisation": "Acme Academy",
      "completion_date": "7th May 2026",
      "instructor_name": "Dr. John Doe",
      "certificate_id": "CERT-00001",
      "accent_color": "#7c3aed",
      "border_color": "#a78bfa",
      "logo_url": ""
    },
    "page_size": "A4"
  }),
});
const data = await response.json();
// data.pdf is a base64-encoded PDF
$body = @{
    template_url = "https://toolkitapi.io/static/templates/pdf/certificate.html"
    variables    = {
      "recipient_name": "Jane Smith",
      "course_name": "Advanced Python Programming",
      "organisation": "Acme Academy",
      "completion_date": "7th May 2026",
      "instructor_name": "Dr. John Doe",
      "certificate_id": "CERT-00001",
      "accent_color": "#7c3aed",
      "border_color": "#a78bfa",
      "logo_url": ""
    }
    page_size = "A4"
} | ConvertTo-Json -Depth 5

Invoke-RestMethod -Method POST `
  -Uri "https://pdf.toolkitapi.io/v1/pdf/from-template" `
  -Headers @{"X-API-Key" = "YOUR_API_KEY"} `
  -ContentType "application/json" `
  -Body $body
Back to Template Library