Help Center

API & Automation

Generate images with the API

Render any template programmatically. Pass your dynamic field values in one request and get a finished image back in under 2 seconds.

Once a template has dynamic fields, you can render it from code. One request in, one finished image out. No webhooks, no polling.

What you needWhat you need

  • An API key from your Imejis dashboard.
  • The design ID of the template you want to render.
  • Values for the template's dynamic fields.

Render a templateRender a template

Send the field values to the render endpoint for your design and you get the image back in the response. In pseudocode:

curl -X POST "https://api.imejis.io/designs/<DESIGN_ID>/export" \
  -H "Authorization: Bearer <API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{ "title": "Welcome, Alex", "avatar": "https://example.com/alex.png" }' \
  --output result.png

Each key in the body matches a dynamic field name from your template. Anything you don't override keeps its designed default.

Generate in bulkGenerate in bulk

To produce many images, one per customer, per row, or per event, loop over your data and call the endpoint once per record. The template stays the same. Only the field values change.

Language examplesLanguage examples

Imejis has ready-to-copy quickstarts for cURL, Node.js, Python, Go, PHP, Ruby, and more. Browse them on the API documentation page, and see the full list of renderable pieces in the component library.

No code no problemNo code? No problem

If you'd rather not write code, connect a template to Zapier, Make, or a public link instead.

Frequently asked questionsFrequently asked questions

How fast is a renderHow fast is a render?

Each render comes back in under 2 seconds, in one request. There are no webhooks and nothing to poll.

How do i generate images in bulkHow do I generate images in bulk?

Loop over your data (a spreadsheet, a database, a list of customers) and call the export endpoint once per record. The template stays the same and only the field values change.

Which languages are supportedWhich languages are supported?

Any language that can make an HTTP request. Ready-to-copy quickstarts cover cURL, Node.js, Python, Go, PHP, Ruby, and more on the API documentation page.