editframe/cloud
Your video product.
Our render cloud.
Generate videos from your server. Submit a composition, track the job, and receive the finished file.
Explore the architecture
How it works
Your application submits the request.
Send inline composition HTML or use the CLI bundle workflow. Include metadata when your application needs to associate the render with one of its own records.
Cloud exposes the job state.
A successful request begins as created; a render then reaches complete or failed. Read the final state before offering a download or reporting an error.
Lifecycle
Create a job. Get a video.
Server API — submit a job
Create a render and persist its ID
The create response provides the identifier your application uses for progress, final status, and download.
import { Client, createRender } from "@editframe/api"
const client = new Client(process.env.EDITFRAME_API_KEY)
const render = await createRender(client, {
html: "<ef-timegroup mode=\"contain\">...</ef-timegroup>",
metadata: { projectId: "project_123" },
})Server API — read the final state
Branch on complete or failed before delivery
Use the progress stream while a caller is waiting, or read the resource when your background worker receives a completion signal.
import { downloadRender, getRenderInfo } from "@editframe/api"
const finalRender = await getRenderInfo(client, render.id)
if (finalRender.status === "complete") {
const file = await downloadRender(client, render.id)
// Attach the MP4 response to your product record.
} else if (finalRender.status === "failed") {
reportFailure(finalRender.error?.message)
}Webhooks
Completion is a product event.
Configure a webhook endpoint and subscribe to render.completedand render.failed. Verify the raw request body with theX-Webhook-Signature HMAC before using its payload.
A completed payload includes { topic, data }, with the render ID and data.download_url. Store the ID, then use it to update the record in your own system.
Motion catalog
Start from a working composition.
Browse all studies ↗Automate your
first render.
Connect your server to the Renders API.

