Creatomate
App · Video & Audio · 4 actions
Generate videos and images from Creatomate templates, swapping in your own text and media, then pull the finished file into your workflow.
Actions
| Action | What it does |
|---|---|
| Create a render | Render a video or image from one of your Creatomate templates, swapping in your own text and media. |
| Get a render | Check how a render is getting on and, once it has finished, get the download link for the finished file. |
| Get a template | Look up one template, including the RenderScript source that tells you which element names a render can modify. |
| List templates | List the templates in your Creatomate project, so a workflow can pick one to render. |
Create a render
Render a video or image from one of your Creatomate templates, swapping in your own text and media. Rendering is asynchronous, so use Get a render to pick up the finished file.
Inputs
- Template ID
template_idtextRequired - The template to render, as returned by List templates. It's also the ID shown in the Creatomate template editor's URL.
- Modifications
modificationsobject - What to change in the template, keyed by element name -- for example {"Text-1": "Now 20% off", "Video-1": "https://example.com/clip.mp4"}. Use Get a template to see which element names it has.
- Render scale
render_scalenumber - Scale the output relative to the template's own resolution. 1 is full size, 0.5 is half. Between 0.1 and 10.From 0.1 to 10.0.
- Maximum width
max_widthnumber - Optional. Scale the output down so it is no wider than this, in pixels.At least 1.
- Maximum height
max_heightnumber - Optional. Scale the output down so it is no taller than this, in pixels.At least 1.
- Webhook URL
webhook_urltext - Optional. Creatomate calls this URL once the render finishes or fails, so you don't have to poll for it.
- Metadata
metadatatext - Optional. Any text to attach to the render and pass back to your webhook, such as a campaign ID.
Outputs
durationnumber- Length of the output in seconds, for videos only
error_messagetext- Why the render failed, when it did. Empty otherwise.
file_sizenumber- Size of the output file in bytes
frame_ratenumber- Frames per second of the output, for videos only
heightnumber- Height of the output in pixels
output_formattext- The file format produced: 'mp4', 'jpg', 'png', or 'gif'
render_idtext- The render's ID. Use with Get a render to poll for the result.
render_statustext- How far the render has got: 'planned', 'waiting', 'transcribing', 'rendering', 'succeeded', or 'failed'. Rendering is asynchronous, so a freshly created render is usually not 'succeeded' yet.
renderslist- Every render this request queued. Usually one, but a template can fan out into several outputs.
snapshot_urltext- Link to a still frame taken from the video, for videos only
template_idtext- ID of the template this was rendered from
template_nametext- Name of that template
urltext- Direct download link to the finished file. Only populated once the render has succeeded.
widthnumber- Width of the output in pixels
Example output
{
"duration": 15,
"error_message": "",
"file_size": 2450000,
"frame_rate": 30,
"height": 1080,
"output_format": "mp4",
"render_id": "a862048b-d0dc-4029-a4ef-e172e8ded827",
"render_status": "planned",
"renders": [
{
"duration": 15,
"error_message": "",
"file_size": 2450000,
"frame_rate": 30,
"height": 1080,
"output_format": "mp4",
"render_id": "a862048b-d0dc-4029-a4ef-e172e8ded827",
"render_status": "planned",
"snapshot_url": "https://cdn.creatomate.com/snapshots/a862048b.jpg",
"template_id": "087d94b5-cef6-44b7-96d4-4c651beec61d",
"template_name": "Social Media Video Template",
"url": null,
"width": 1080
}
],
"snapshot_url": "https://cdn.creatomate.com/snapshots/a862048b.jpg",
"template_id": "087d94b5-cef6-44b7-96d4-4c651beec61d",
"template_name": "Social Media Video Template",
"url": null,
"width": 1080
}Get a render
Check how a render is getting on and, once it has finished, get the download link for the finished file.
Inputs
- Render ID
render_idtextRequired - The render's ID, as returned by Create a render.
Outputs
durationnumber- Length of the output in seconds, for videos only
error_messagetext- Why the render failed, when it did. Empty otherwise.
file_sizenumber- Size of the output file in bytes
frame_ratenumber- Frames per second of the output, for videos only
heightnumber- Height of the output in pixels
output_formattext- The file format produced: 'mp4', 'jpg', 'png', or 'gif'
render_idtext- The render's ID. Use with Get a render to poll for the result.
render_statustext- How far the render has got: 'planned', 'waiting', 'transcribing', 'rendering', 'succeeded', or 'failed'. Rendering is asynchronous, so a freshly created render is usually not 'succeeded' yet.
snapshot_urltext- Link to a still frame taken from the video, for videos only
template_idtext- ID of the template this was rendered from
template_nametext- Name of that template
urltext- Direct download link to the finished file. Only populated once the render has succeeded.
widthnumber- Width of the output in pixels
Example output
{
"duration": 15,
"error_message": "",
"file_size": 2450000,
"frame_rate": 30,
"height": 1080,
"output_format": "mp4",
"render_id": "a862048b-d0dc-4029-a4ef-e172e8ded827",
"render_status": "succeeded",
"snapshot_url": "https://cdn.creatomate.com/snapshots/a862048b.jpg",
"template_id": "087d94b5-cef6-44b7-96d4-4c651beec61d",
"template_name": "Social Media Video Template",
"url": "https://cdn.creatomate.com/renders/a862048b-d0dc-4029-a4ef-e172e8ded827.mp4",
"width": 1080
}Get a template
Look up one template, including the RenderScript source that tells you which element names a render can modify.
Inputs
- Template ID
template_idtextRequired - The template to render, as returned by List templates. It's also the ID shown in the Creatomate template editor's URL.
Outputs
created_attext- When the template was created
nametext- The template's name in your project
sourceobject- The template's full RenderScript. Read the element names out of this to know what Create a render can change.
tagslist- The tags the template is filed under
template_idtext- The template's ID. Use with Create a render.
updated_attext- When the template was last changed
Example output
{
"created_at": "2026-06-02T10:14:22.000Z",
"name": "Social Media Video Template",
"source": {
"elements": [
{
"name": "Text-1",
"text": "Hello",
"type": "text"
}
],
"height": 1080,
"output_format": "mp4",
"width": 1080
},
"tags": [
"social",
"marketing",
"square"
],
"template_id": "087d94b5-cef6-44b7-96d4-4c651beec61d",
"updated_at": "2026-07-18T09:03:51.000Z"
}List templates
List the templates in your Creatomate project, so a workflow can pick one to render.
Inputs
None.
Outputs
templateslist- The templates in the project
Example output
{
"templates": [
{
"created_at": "2026-06-02T10:14:22.000Z",
"name": "Social Media Video Template",
"tags": [
"social",
"marketing",
"square"
],
"template_id": "087d94b5-cef6-44b7-96d4-4c651beec61d",
"updated_at": "2026-07-18T09:03:51.000Z"
}
]
}