What is a Render?
Creatomate's API allows you to generate videos, images, and GIFs via a process known as "rendering". It involves taking a template and data and assembling them to create a final file, such as a JPEG, PNG, or MP4. Such a file is called a render.
To render a file with Creatomate, you need to make an API call to initiate the rendering process. It can then take anywhere from a few seconds to several minutes to complete.
To keep track of the rendering process, you can use an API call to poll the status, but our recommendation is to set up a webhook to notify you when the process is complete. This webhook also allows you to monitor render failures and credit usage.
Properties
A unique identifier for this render. This ID is generated automatically when you create a render and is used to track the rendering process and retrieve the final result.
The current state of the render. Possible values: planned
(queued for processing), waiting
(waiting for a third-party integration), transcribing
(generating subtitles), rendering
(currently being generated), succeeded
(completed successfully), or failed
(encountered an error).
A descriptive message explaining why the render failed, helping you troubleshoot issues with your template or data.
The direct download link to your rendered file. This URL becomes active once the render status changes to "succeeded". The file format matches your specified output_format.
A JPEG preview image automatically generated from your video. This image is only created when you set a Snapshot Time, either in the template editor or with the snapshot_time parameter in RenderScript.
The unique identifier of the template used to create this render. If you used RenderScript directly without a template, this field will be null.
The human-readable name of the template as it appears in your project. This helps identify which template was used when reviewing renders.
An array of tags associated with the template, useful for organizing and categorizing your templates.
The file format of the rendered output: mp4
for videos, jpg
or png
for images, gif
for animations.
The scale factor applied during rendering. 1 means 100% of the original resolution, 0.5 would be 50%, etc. This affects both output quality and processing time.
The width of the rendered file in pixels.
The height of the rendered file in pixels.
The frames per second of the video output.
The length of the video in seconds.
The size of the final rendered file in bytes.
The key-value pairs that were applied to customize the template. Each key corresponds to an element name or property path, and the value is what was substituted.
The URL that received a notification when this render completed or failed. Useful for tracking automated workflows.
Custom data you attached to this render for your own tracking purposes, such as campaign IDs, user references, or other business context.
Example
{
"id": "a862048b-d0dc-4029-a4ef-e172e8ded827",
"status": "succeeded",
"url": "https://cdn.creatomate.com/renders/a862048b-d0dc-4029-a4ef-e172e8ded827.mp4",
"snapshot_url": "https://cdn.creatomate.com/snapshots/a862048b-d0dc-4029-a4ef-e172e8ded827.jpg",
"template_id": "YOUR_TEMPLATE_ID_HERE",
"template_name": "Social Media Video Template",
"template_tags": [
"social",
"marketing",
"square"
],
"output_format": "mp4",
"render_scale": 1,
"width": 1080,
"height": 1080,
"frame_rate": 30,
"duration": 15,
"file_size": 2450000,
"modifications": {
"Main-Title": "Your Custom Text Here",
"Background-Image": "https://cdn.creatomate.com/demo/image1.jpg",
"Brand-Logo": "https://example.com/logo.png"
},
"webhook_url": "https://example.com/webhook",
"metadata": "campaign_123"
}