1. Get your API key
Humans: sign up at console.framelane.io and copy your API key from Settings → API Keys. Agents (no human, no browser): provision a key over the API.POST /v1/signup returns a key immediately and emails a 6-digit code; read it from the inbox you signed up with, then confirm it with POST /v1/signup/verify to activate the key. Until you verify, the key returns 403 email_not_verified on every call. See Self-provisioning for agents.
2. Upload your input file
If your video is already hosted at a public HTTPS URL you control, skip to step 3 and use that URL assource_url.
To pull in a file from a remote URL you don’t control (another CDN, a cloud share link), set ingest_external: true on the render and pass the URL as the element source_url — Framelane copies it into your workspace first.
For a local file, request an upload slot and PUT the bytes to GCS:
source_url from the upload response in the render request. See Uploading media for supported MIME types and error codes.
3. Submit a render
Send aPOST /v1/renders request with your composition. Replace source_url with your upload URL or any public HTTPS URL:
id — you need it to poll status or download the result.
4. Wait for completion
Option A — Poll job status (simplest for scripts)
CallGET /v1/renders/{id} until status is terminal (completed, failed, or cancelled):
status is queued or processing and progress_percent updates over time. When status is completed, the response includes output.url:
output.url is the field to use — download the finished video from it. The width, height, duration, and size_bytes fields are reserved and currently return null; the output dimensions and duration match your render request, and the byte size is available from the download response’s Content-Length.GET /v1/tasks/{id}.
Option B — Webhooks (recommended for production)
Register a webhook endpoint and Framelane calls it when the render completes:5. Download the artifact
Theoutput.url in the job response or webhook is a signed CDN URL. You can also request a fresh download redirect:
Next steps
Uploading media
Local files via signed GCS upload, or remote URLs with
ingest_external.Run an AI task
Transcribe audio or video to text with word-level timestamps.
Verify webhook signatures
Validate HMAC signatures to ensure payloads come from Framelane.
API Reference
Browse all endpoints generated from the OpenAPI spec.

