Skip to main content

URL Rendering

The most embeddable way to use a template: a plain GET URL that returns the rendered image. Put it in an <img> tag, an email, a Notion page, a README — anywhere a URL can go, with the variables riding in the query string.
Every query parameter except the reserved ones below is passed to the template as a variable — ?name=Maya fills {{name}}.

Formats and parameters

Behaviour worth knowing

  • Failures return a transparent 1x1 PNG, not an error page — a broken variable never renders a broken image into your email or README. Check the dashboard if a URL renders blank.
  • Responses are cached privately for 5 minutes (Cache-Control: private, max-age=300), so a URL hit repeatedly by the same client re-renders at most every 5 minutes.
  • Each unique render is metered as one image credit.
A URL containing token= is a credential. Use it where the URL stays private (emails to known recipients, internal tools). For public pages, render ahead of time with POST /templates/:uid/render and embed the CDN URL it returns — that URL is not a credential and never re-renders.