Create a render batch

Render one saved template version once per data row as PDF, PNG, JPEG, or WebP. The account plan sets how many rows one run accepts: 10 on Free and a pack-only account, 50 on Starter, 100 on Growth, and 200 on Scale. A run over that limit answers 400 batch_row_limit with error.plan_limit. Validates every row against the version's schema before any job exists. Creates one normal render job per row as account and key concurrency allow. Remaining rows stay pending until a later retry or the background drain. The ledger reserves one credit per admitted job, settles it on success, and releases it on failure or cancellation. quoted_credits is the row count, not a discount.

post/v1/batches

Request

  • Base URL: https://thirds.ai
  • URL: https://thirds.ai/v1/batches
  • Auth: HTTP bearer

Headers

Idempotency-Keystring required

Request body

template_idstring required
versioninteger

Omitted to use the template's latest version at creation time. The batch pins that exact version.

format'pdf' | 'png' | 'jpeg' | 'webp' required
rowsobject[] required

1 to 200 JSON objects. Each object is one render. 200 is the system cap; the account plan can allow fewer. The CSV parser lives in the studio; this API accepts rows only.

Response

The batch was created, or an earlier request with the same idempotency key and body is replayed.

idstring required
template_idstring required
versioninteger required
format'pdf' | 'png' | 'jpeg' | 'webp' required
created_atstring date-time required
state'queued' | 'running' | 'complete' | 'partial' | 'failed' | 'cancelled' required
quoted_creditsinteger required

The row count. Each successful file settles one credit. Failed and cancelled rows cost nothing. There is no bulk discount.

archive_urlstring nullable required

A signed ZIP download link, present once any row has succeeded.

Changes

No recorded changes to this operation across all 1 revision of this API.