Skip to main content
POST
Batch render template

Batch Operations

Generate multiple images from a single template with different variables. Ideal for bulk generation of social cards, certificates, or personalized content.

Endpoints

Two input modes

The same endpoint accepts rows either inline or from a spreadsheet: Rows mode — send variableSets, an array of variable objects, one per render:
CSV mode — point at a hosted CSV and map its columns onto template variables. Every row becomes a render, so a spreadsheet of recipients becomes a batch without writing the rows out:
mappings is { "templateVariable": "CSV Column" } — the key is the template variable, the value is the CSV column that fills it. The CSV must be publicly fetchable — the server downloads it once when the batch starts.

Batch Status

Webhook Notification

When a batch job completes, Pictify sends a batch.completed event to your webhook URL (if provided):

Limits

Best Practices

  1. Use webhooks — don’t poll for results; use webhooks for notification
  2. Handle failures gracefully — some items may fail; implement retry logic
  3. Batch appropriately — group related renders; avoid tiny batches
  4. Monitor progress — track batch status for long-running jobs
  5. Clean up — results are stored for 7 days; download and store permanently if needed

Authorizations

Authorization
string
header
required

API key obtained from the Pictify dashboard

Path Parameters

uid
string
required

Body

application/json
variableSets
object[]
required
Required array length: 1 - 100 elements
format
enum<string>
default:png
Available options:
png,
jpeg,
webp
quality
number
default:0.9
Required range: 0.1 <= x <= 1
layout
string

Layout variant to use for all batch items. Omit for default layout.

Pattern: ^[a-z0-9-]{1,64}$
layouts
string[]

Array of layout variant names to render for all batch items. Use instead of layout to render multiple layouts per item.

Pattern: ^[a-z0-9-]{1,64}$
concurrency
integer
default:5
Required range: 1 <= x <= 10

Response

202 - application/json

Batch job created

batchId
string
status
enum<string>
Available options:
pending,
processing,
completed,
failed,
partial,
cancelled
totalItems
integer
message
string