DevMotion Video API
Generate, customize, and render videos programmatically. Design templates in the editor, then produce thousands of personalized videos via a simple REST API.
Base URL: https://devmotion.app/api/v1
Authentication: pass your API key as a Bearer token in every request.
Authorization header
Authorization: Bearer dm_live_YOUR_API_KEYQuick Start
1. Get your API key — go to your Profile page and create a key. Requires Creator or Pro plan.
2. Create a render
curl
curl -X POST https://devmotion.app/api/v1/renders \
-H "Authorization: Bearer dm_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"template_id": "laptop-3d-intro",
"modifications": [
{ "layer": "Browser", "property": "props.url",
"value": "https://yoursite.com" }
],
"webhook_url": "https://yourserver.com/webhook"
}'3. Get the result — poll GET /renders/:id or wait for the webhook callback with the video URL.
POST /renders — response
{
"id": "render_abc123",
"status": "rendering",
"output_url": null,
"webhook_url": "https://yourserver.com/webhook",
"metadata": null,
"created_at": "2025-01-15T10:30:00Z"
}Rendering is asynchronous. The response is
202 Acceptedimmediately;output_urlis populated when the render completes.
Endpoints
| Method | Path | Description |
|---|---|---|
POST | /renders | Create a render job |
GET | /renders | List renders |
GET | /renders/:id | Get render status & result |
GET | /templates | List templates |
GET | /templates/:id | Get template details |
GET | /projects/:id | Get project structure |
POST | /projects/:id/actions/:actionId | Run a media action |
GET | /projects/:id/exports | List video exports |
All paths are relative to https://devmotion.app/api/v1.