Find a template & its fields
Every render needs a templateId and a values map keyed by that template's
variables. This guide is the hop between "I have a key" and "I can render": browse the
catalog, pick an id, then read the fields it accepts.
Built-in (tmpl_) vs owned (wtpl_) ids
There are two kinds of template id, and they render through the exact same engine:
tmpl_…— a curated built-in template from the shared Lemtika catalog.wtpl_…— a workspace-owned copy you forked from a built-in and can edit (see Brand profile for how brand values flow in, and the Templates API for forking). Awtpl_…is accepted anywhere atmpl_…is.
1. Browse the catalog
GET /v1/catalog lists the active built-in templates. Narrow with optional query
facets: category, subCategory, market (global | vietnam), q (name
substring), and sort=newest.
curl -sS "https://api.lemtika.com/v1/catalog?category=social-marketing&q=launch" \
-H "Authorization: Bearer $LEMTIKA_API_KEY"
Each list item carries the id you render with, plus its available ratios:
[
{
"id": "tmpl_og_card",
"name": "Launch Headline",
"category": "social-marketing",
"subCategory": "branded-post",
"market": "global",
"thumbnail": "https://… (short-lived signed URL)",
"ratios": ["square", "portrait", "story", "landscape", "og"]
}
]
2. Read the fields it accepts
GET /v1/catalog/{id} returns the full detail, including the variables array — the
keys you populate in values:
curl -sS "https://api.lemtika.com/v1/catalog/tmpl_og_card" \
-H "Authorization: Bearer $LEMTIKA_API_KEY"
{
"id": "tmpl_og_card",
"name": "Launch Headline",
"dimensions": { "width": 1200, "height": 630 },
"aspect": "Landscape (1.91:1)",
"format": "png",
"ratios": ["square", "portrait", "story", "landscape", "og"],
"variables": [
{ "name": "headline", "type": "text", "label": "Headline", "bindsTo": null },
{ "name": "metric", "type": "text", "label": "Metric" },
{ "name": "logo", "type": "image", "bindsTo": "brand.logo" }
]
}
Each variable's name is a key in values; type is one of text, longText,
colour, image, number, date, enum, or list. A variable with a bindsTo
brand role (e.g. brand.logo) is pre-filled from your brand
profile — you can override it, or leave it out.
3. Render it
curl -sS -X POST "https://api.lemtika.com/v1/render" \
-H "Authorization: Bearer $LEMTIKA_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "templateId": "tmpl_og_card", "values": { "headline": "Launch day", "metric": "10k users" } }' \
-o render.png
To browse the taxonomy spine (categories + sub-categories), call
GET /v1/catalog/taxonomy.