Certificate
An elegant certificate template for course completions, achievements, and awards.
Dimensions: 1200x630
Template ID: certificate
Properties
| Property | Type | Required | Max Length | Validation |
|---|---|---|---|---|
recipientNameRecipient name | string | Yes | 50 | maxLength(50) |
courseNameCourse/achievement name | string | Yes | 60 | maxLength(60) |
descriptionDescription | string | Yes | 100 | maxLength(100) |
completionDateCompletion date | string | Yes | 30 | maxLength(30) |
instructorNameInstructor/signatory name | string | Yes | 40 | maxLength(40) |
imageUrlSeal/logo URL | string (URL) | Yes | - | url (HTTPS only) |
primaryColorPrimary color | string (hex) | Yes | - | color (hex) |
accentColorAccent color | string (hex) | Yes | - | color (hex) |
Example
{
"template": "certificate",
"recipientName": "John Smith",
"courseName": "Advanced Web Development",
"description": "For successfully completing the course with distinction",
"completionDate": "March 7, 2026",
"instructorName": "Dr. Jane Anderson",
"imageUrl": "https://example.com/seal.png",
"primaryColor": "#1e3a8a",
"accentColor": "#d4af37"
}Code examples
const response = await fetch("https://assets.qbacode.com/api/v1/generate-asset", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"template": "certificate",
"recipientName": "John Smith",
"courseName": "Advanced Web Development",
"description": "For successfully completing the course with distinction",
"completionDate": "March 7, 2026",
"instructorName": "Dr. Jane Anderson",
"imageUrl": "https://example.com/seal.png",
"primaryColor": "#1e3a8a",
"accentColor": "#d4af37"
})
});
if (response.ok) {
const blob = await response.blob();
const imageUrl = URL.createObjectURL(blob);
document.getElementById("preview").src = imageUrl;
} else {
const error = await response.json();
console.error("Error:", error);
}