Templates
The Templates API allows you to access and manage video templates that can be used for creating personalized videos.
List Templates
Retrieves a list of all available templates in your account.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| page | integer | Optional Page number for pagination (default: 1) |
| limit | integer | Optional Number of items per page (default: 20, max: 100) |
| category | string | Optional Filter templates by category |
Response
{
"data": [
{
"id": "tmpl_welcome_message",
"name": "Welcome Message",
"description": "A warm welcome message for new customers",
"duration": 60,
"thumbnail_url": "https://cdn.sixtyseconds.video/thumbnails/tmpl_welcome_message.jpg",
"preview_url": "https://cdn.sixtyseconds.video/previews/tmpl_welcome_message.mp4",
"category": "onboarding",
"available_aspect_ratios": ["9:16", "16:9", "1:1"],
"created_at": "2025-01-15T10:00:00Z"
},
{
"id": "tmpl_product_showcase",
"name": "Product Showcase",
"description": "Highlight your product's key features",
"duration": 45,
"thumbnail_url": "https://cdn.sixtyseconds.video/thumbnails/tmpl_product_showcase.jpg",
"preview_url": "https://cdn.sixtyseconds.video/previews/tmpl_product_showcase.mp4",
"category": "marketing",
"available_aspect_ratios": ["16:9", "1:1"],
"created_at": "2025-01-20T14:30:00Z"
}
],
"pagination": {
"total": 28,
"page": 1,
"limit": 20,
"next_page": 2,
"prev_page": null
}
}
Get Template
Retrieves detailed information about a specific template.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| template_id | string | Required The ID of the template to retrieve |
Response
{
"id": "tmpl_welcome_message",
"name": "Welcome Message",
"description": "A warm welcome message for new customers",
"duration": 60,
"thumbnail_url": "https://cdn.sixtyseconds.video/thumbnails/tmpl_welcome_message.jpg",
"preview_url": "https://cdn.sixtyseconds.video/previews/tmpl_welcome_message.mp4",
"category": "onboarding",
"available_aspect_ratios": ["9:16", "16:9", "1:1"],
"created_at": "2025-01-15T10:00:00Z",
"personalization_fields": [
{
"name": "first_name",
"type": "string",
"description": "Customer's first name",
"required": true
},
{
"name": "company",
"type": "string",
"description": "Customer's company name",
"required": true
},
{
"name": "product_tier",
"type": "string",
"description": "Product tier or plan name",
"required": false
}
],
"scenes": [
{
"id": "scene_1",
"name": "Introduction",
"duration": 20,
"description": "Opening scene with personalized greeting"
},
{
"id": "scene_2",
"name": "Features Overview",
"duration": 25,
"description": "Highlights key product features"
},
{
"id": "scene_3",
"name": "Call to Action",
"duration": 15,
"description": "Closing message with next steps"
}
]
}
Create Custom Template
Creates a new custom template in your account.
Request Body
| Parameter | Type | Description |
|---|---|---|
| name | string | Required The name of the template |
| description | string | Required A description of the template |
| video_url | string | Required URL to the video file for this template |
| thumbnail_url | string | Optional URL to the thumbnail image |
| category | string | Optional Category for the template |
| personalization_fields | array | Optional Fields that can be personalized in this template |
Example Request
{
"name": "Customer Thank You",
"description": "A personalized thank you message for loyal customers",
"video_url": "https://your-storage.com/uploads/thank_you.mp4",
"thumbnail_url": "https://your-storage.com/uploads/thank_you_thumbnail.jpg",
"category": "customer_retention",
"personalization_fields": [
{
"name": "first_name",
"type": "string",
"description": "Customer's first name",
"required": true
},
{
"name": "purchase_history",
"type": "object",
"description": "Customer's purchase data",
"required": false
}
]
}
Response
{
"id": "tmpl_custom_123456",
"name": "Customer Thank You",
"description": "A personalized thank you message for loyal customers",
"duration": 45,
"thumbnail_url": "https://your-storage.com/uploads/thank_you_thumbnail.jpg",
"preview_url": "https://cdn.sixtyseconds.video/previews/tmpl_custom_123456.mp4",
"category": "customer_retention",
"available_aspect_ratios": ["16:9"],
"created_at": "2025-03-05T09:12:30Z",
"personalization_fields": [
{
"name": "first_name",
"type": "string",
"description": "Customer's first name",
"required": true
},
{
"name": "purchase_history",
"type": "object",
"description": "Customer's purchase data",
"required": false
}
],
"status": "processing"
}
Template Categories
Templates are organized into the following categories:
| Category | Description |
|---|---|
| onboarding | Templates for welcoming new users and customers |
| marketing | Promotional and advertising templates |
| educational | Templates for tutorials and explainer videos |
| sales | Templates designed for sales outreach |
| customer_retention | Templates for engaging existing customers |
| announcements | Templates for product updates and company news |
| seasonal | Holiday and seasonal greeting templates |
Working with Templates
Personalization Fields
Each template has a set of defined personalization fields that can be used when creating videos. These fields are specified in the personalization_fields array and should be included in the customer_data object when creating a video.
Custom Templates
You can create custom templates by uploading your own video content. Custom templates support the same personalization capabilities as our standard templates.
Template Processing
When you create a custom template, it undergoes processing to optimize it for personalization. The initial status will be processing and will change to ready once the template is available for use.
Preview URLs
Preview URLs are provided to allow you to see how a template looks before using it to create personalized videos. These previews use placeholder data for any personalization fields.