IMAGE
social-post
1080×1080px
Customer Testimonial / Review
Social proof card with star rating, review text, reviewer name, role, and avatar.
Use Cases
- Sharing five-star customer reviews
- Building social proof on Instagram
- SaaS testimonial posts
- E-commerce product review cards
Tags
testimonial
review
social-proof
social-media
instagram
stars
1080x1080
Template Variables
| Variable | Type | Default | Description |
|---|---|---|---|
| review | string | This product completely changed how I work. 10/10 would recommend. | Review text |
| reviewer_name | string | Alex Johnson | Reviewer full name |
| reviewer_role | string | Founder, Startup Inc | Reviewer job title / company |
| avatar_url | url | https://picsum.photos/seed/reviewer/120/120 | Reviewer avatar URL |
| stars | number | 5 | Star rating 1–5 |
| star_color | color | #f59e0b | Star fill colour |
| bg_color | color | #ffffff | Card background colour |
| accent_color | color | #6366f1 | Accent colour |
| brand_name | string | Acme | Your brand name |
API Example
POST to
https://image.toolkitapi.io/v1/image/from-template
with your template URL and variable values.
curl -X POST "https://image.toolkitapi.io/v1/image/from-template" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"template_url": "https://toolkitapi.io/static/templates/image/sm-testimonial.html", "variables": {"review": "This product completely changed how I work. 10/10 would recommend.", "reviewer_name": "Alex Johnson", "reviewer_role": "Founder, Startup Inc", "avatar_url": "https://picsum.photos/seed/reviewer/120/120", "stars": "5", "star_color": "#f59e0b", "bg_color": "#ffffff", "accent_color": "#6366f1", "brand_name": "Acme"}, "width": 1080, "height": 1080, "format": "png"}'
import httpx, base64
resp = httpx.post(
"https://image.toolkitapi.io/v1/image/from-template",
headers={"X-API-Key": "YOUR_API_KEY"},
json={
"template_url": "https://toolkitapi.io/static/templates/image/sm-testimonial.html",
"variables": {
"review": "This product completely changed how I work. 10/10 would recommend.",
"reviewer_name": "Alex Johnson",
"reviewer_role": "Founder, Startup Inc",
"avatar_url": "https://picsum.photos/seed/reviewer/120/120",
"stars": "5",
"star_color": "#f59e0b",
"bg_color": "#ffffff",
"accent_color": "#6366f1",
"brand_name": "Acme"
},
"width": 1080,
"height": 1080,
"format": "png"
},
)
image_bytes = base64.b64decode(resp.json()["image"])
with open("result.png", "wb") as f:
f.write(image_bytes)
const response = await fetch("https://image.toolkitapi.io/v1/image/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/image/sm-testimonial.html",
"variables": {
"review": "This product completely changed how I work. 10/10 would recommend.",
"reviewer_name": "Alex Johnson",
"reviewer_role": "Founder, Startup Inc",
"avatar_url": "https://picsum.photos/seed/reviewer/120/120",
"stars": "5",
"star_color": "#f59e0b",
"bg_color": "#ffffff",
"accent_color": "#6366f1",
"brand_name": "Acme"
},
"width": 1080,
"height": 1080,
"format": "png"
}),
});
const data = await response.json();
// data.image is a base64-encoded PNG
$body = @{
template_url = "https://toolkitapi.io/static/templates/image/sm-testimonial.html"
variables = {
"review": "This product completely changed how I work. 10/10 would recommend.",
"reviewer_name": "Alex Johnson",
"reviewer_role": "Founder, Startup Inc",
"avatar_url": "https://picsum.photos/seed/reviewer/120/120",
"stars": "5",
"star_color": "#f59e0b",
"bg_color": "#ffffff",
"accent_color": "#6366f1",
"brand_name": "Acme"
}
width = 1080
height = 1080
format = "png"
} | ConvertTo-Json -Depth 5
Invoke-RestMethod -Method POST `
-Uri "https://image.toolkitapi.io/v1/image/from-template" `
-Headers @{"X-API-Key" = "YOUR_API_KEY"} `
-ContentType "application/json" `
-Body $body