Overview
POST /v1/videos is the programmatic entry point for the Knowlify Animation Engine. A single call queues 1–50 video generation jobs and returns immediately with a job ID for each one. Videos render asynchronously in the background — use GET /v1/videos/{uuid} to poll, or subscribe to Supabase realtime for live updates.
This endpoint is asynchronous. The response confirms each job was accepted (
queued or parked); rendering itself takes minutes and is delivered out-of-band.Endpoint
Your
API_BASE is shown in the Developer tab of your dashboard. The default production base is https://api.knowlify.com.Authentication
Send your key in theX-API-Key header. Personal keys are scoped to your user; organization keys are scoped to a single org.
Request body
VideoCreateItem[]
required
Array of 1–50 video specs to queue. Items beyond your concurrency limit are accepted but parked in a waiting list — see Rate Limits.
string
Advisory only — when authenticating with an API key, identity comes from the key itself. Maximum 320 characters; must match
[email protected].string
Optional organization scope. For API keys this must match the org the key belongs to (or be omitted). For JWT callers, the server verifies active membership.
VideoCreateItem
Response
A successful call returns HTTP200 even when individual items fail — inspect each results[].status to know what to retry.
string
Always
"ok" on a 2xx response.integer
Number of items in the request.
integer
Items dispatched to a worker immediately.
integer
Items accepted but waiting for a free concurrency slot.
integer
Items that failed validation or queueing.
string
UUID of the authenticated caller.
string
Organization ID if the key/JWT is org-scoped, otherwise
null.object[]
One entry per request item, in the same order as
videos.Response headers
Every successful response carries the current rate-limit window state:Code examples
Example success response
Next step
Each accepted item returns auuid. Use it with GET /v1/videos/{uuid} to track render progress until the job is complete.
Limits & errors
- 30 requests / 60 seconds per caller. See Rate Limits.
- 1–50 items per request; max 3 concurrent jobs per user/org (additional items are parked).
- Full status code reference: Errors.
