---
title: "Create a batch of templated images"
method: POST
path: "/v1/image/batch/templated"
tags: ["Images"]
---

# Create a batch of templated images

`POST /v1/image/batch/templated`

## Request

- Base URL: `https://hcti.io`
- URL: `https://hcti.io/v1/image/batch/templated`
- Auth: HTTP basic

Create images from one or more templates. Set template_id, optional template_version, and template_values in default_options or each variation. Supplying a template_id in a variation resets its inherited version. Object values merge recursively; variation arrays, scalars and explicit null replace defaults. Identical images reuse existing assets. Results preserve variation order.

## Request body

- BatchTemplatedImageRequest: Creates a batch from one or more templates. Set template_id, template_version and template_values in shared default_options or individual variations.
  - `default_options` ImageRequestTemplatedBatchOptions
    - `template_values` JsonObject
    - `template_id` string, nullable: Template ID to render for this variation. Omit to inherit default_options.template_id. Supplying a template_id resets the inherited template_version unless this variation also supplies a version. Each variation must resolve to a nonempty template ID owned by the authenticated organization.
    - `template_version` union: Template version to render. Inherit default_options.template_version when using the default template ID. When supplying a template_id in this variation, omit the version to use that template's latest version.
      - integer
      - string, int64
    - `format` unknown
  - `variations` ImageRequestTemplatedBatchOptions[], required: One variation per image. Supply at least one variation, within your plan's batch limit. Each variation must resolve to a template_id. Each merged template_values object must be nonempty and satisfy the template's required variables. Results preserve this order.
    - `template_values` JsonObject
    - `template_id` string, nullable: Template ID to render for this variation. Omit to inherit default_options.template_id. Supplying a template_id resets the inherited template_version unless this variation also supplies a version. Each variation must resolve to a nonempty template ID owned by the authenticated organization.
    - `template_version` union: Template version to render. Inherit default_options.template_version when using the default template ID. When supplying a template_id in this variation, omit the version to use that template's latest version.
      - integer
      - string, int64
    - `format` unknown

## Response `200`

OK

- BatchImageResult
  - `images` ImageResultWithId[], required
    - `url` string
    - `id` string

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Payment Required
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests

## Changes

- **2026-10-03** `9095bcb65ead`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/htmlcsstoimage/apis/html-css-to-image-api/changes/v1/image/batch/templated/post.md)

---

[API](https://skmtc.dev/htmlcsstoimage/apis/html-css-to-image-api.md) - [All operations](https://skmtc.dev/htmlcsstoimage/apis/html-css-to-image-api/llms.txt) - [OpenAPI document](https://skmtc.dev/htmlcsstoimage/apis/html-css-to-image-api/revisions/100550373ae1?raw)
