A festive card with bunting across the top, a round portrait with a cake badge, the greeting and name, and a message in a speech bubble.
These are real renders from the API with the example values in the table below. Switch the size above: the same template lays itself out for all 6 sizes — send size or sizes with the request.
For HR tools, gyms, schools and communities that send birthday wishes automatically. greeting is a field, so the card works in any language; the message keeps to three lines and the bubble disappears when it is empty. Wide frames put the portrait beside the text; square and vertical frames centre everything under the bunting.
Every field is optional. Long text shrinks to fit instead of overflowing; an image field takes a public URL that we fetch on our side.
| Field | Type | Description | Example |
|---|---|---|---|
name |
text | Name of the birthday person, the headline. default: Name | Maya Chen |
greeting |
text | Greeting above the name, e.g. Happy birthday. default: Happy birthday | Happy birthday |
message |
text | Wishes in the speech bubble, up to three lines. | Thanks for the bug fixes, the bad puns and the best desk plants on the floor. Have a great one! |
date |
text | Date as text in a small pill, e.g. Oct 26. | Oct 26 |
from |
text | Who sends it, e.g. The Northwind team. | The Northwind team |
photo |
image URL | Portrait photo in the circle. Initials are shown without it. | https://example.com/images/avatar-woman.jpg |
logo |
image URL | Company or community logo next to the sender. | https://example.com/images/logo-northwind.png |
accent |
colour | Brand colour as hex, e.g. #6366f1. Drives buttons, highlights and the background glow. default: #ec4899 | #ec4899 |
theme |
dark | light | Colour scheme: dark or light. default: light | — |
Use the slug as template. The response holds the URL of the finished PNG; ?wait=true keeps the connection open until it is ready.
curl -X POST "https://shareglint.com/v1/images?wait=true" \
-H "Authorization: Bearer sk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"template": "birthday-celebration",
"modifications": {
"name": "Maya Chen",
"greeting": "Happy birthday",
"message": "Thanks for the bug fixes, the bad puns and the best desk plants on the floor. Have a great one!",
"date": "Oct 26",
"from": "The Northwind team",
"photo": "https://example.com/images/avatar-woman.jpg",
"logo": "https://example.com/images/logo-northwind.png"
}
}'
For static sites, Webflow, Shopify and no-code tools: put the fields in the query string and sign it with your signing secret. The first request renders the image, every later one is a redirect to the cached file. How to compute the signature.
<meta property="og:image" content="https://shareglint.com/i/acc_YOUR_ACCOUNT_ID/birthday-celebration.png?date=Oct%2026&from=The%20Northwind%20team&greeting=Happy%20birthday&message=Thanks%20for%20the%20bug%20fixes%2C%20the%20bad%20puns%20and%20the%20best%20desk%20plants%20on%20the%20floor.%20Have%20a%20great%20one%21&name=Maya%20Chen&s=YOUR_SIGNATURE">
accent and theme change per request. For anything more, copy the template into your account: you get an ordinary HTML template with the same fields that you can edit in the dashboard or through the API. If the slug is free on your account, the copy takes it — your integrations switch to your version without changing a line.
curl -X POST "https://shareglint.com/v1/templates/library/birthday-celebration/copy" \
-H "Authorization: Bearer sk_live_YOUR_KEY"