Templates
Browse built-in templates and inspect their customizable fields. Use a template’s id in POST /renders to render it with optional modifications.
GET /templates
List all available templates.
Request
curl https://devmotion.app/api/v1/templates \
-H "Authorization: Bearer dm_live_YOUR_API_KEY"Response
GET /templates — response
{
"data": [
{
"id": "laptop-3d-intro",
"name": "Laptop 3D Intro",
"description": "A 3D spinning laptop reveal with customizable browser URL",
"thumbnail": "https://storage.../thumb.jpg",
"category": "product",
"is_pro": false,
"customizable_fields": [
{ "name": "url", "type": "string", "label": "Browser URL", "default_value": "https://example.com" },
{ "name": "title", "type": "string", "label": "Headline", "default_value": "My Product" }
]
}
]
}GET /templates/:id
Get details and customizable fields for a single template.
Request
curl https://devmotion.app/api/v1/templates/laptop-3d-intro \
-H "Authorization: Bearer dm_live_YOUR_API_KEY"Response
Same fields as the list endpoint, plus seo_title, seo_description, and keywords.
GET /templates/:id — response
{
"id": "laptop-3d-intro",
"name": "Laptop 3D Intro",
"description": "A 3D spinning laptop reveal with customizable browser URL",
"thumbnail": "https://storage.../thumb.jpg",
"category": "product",
"is_pro": false,
"seo_title": "Laptop 3D Product Intro Template",
"seo_description": "...",
"keywords": ["laptop", "product", "3d", "intro"],
"customizable_fields": [
{ "name": "url", "type": "string", "label": "Browser URL", "default_value": "https://example.com" },
{ "name": "title", "type": "string", "label": "Headline", "default_value": "My Product" }
]
}If the template is not found, the API returns 404 TEMPLATE_NOT_FOUND along with a list of valid template IDs.