Render still frame(s) of a composition
Render presigned PNG still(s) of the composition at the given timestamps in a server-managed warm box — the live preview for layout/copy judgment (a still cannot show motion: judge motion with preview_clip or preview_component). No session to manage.
API key auth. Prefix cf_live_ for production orgs, cf_test_ for sandbox.
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/projects/string/preview-frame" \ -H "Content-Type: application/json" \ -d '{ "timestamps": [ 0 ] }'null{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}Render one component's motion-clip preview POST
Queue a MOTION-clip render of ONE org-installed component (VP9-alpha webm — the same bake the production render composites, so what you preview is what ships) in a server-managed warm box. Returns a jobId — wait_job(kind='preview') for the presigned clip. Compile/runtime failures land on the job terminal with the sanitized author-fixable message.
Score a composition (the standalone sighted judge) POST
Queue the server-side judge: it samples eval beats, renders them in a server-managed warm box, and grades editorial/spatial/brand/caption (0–10 + weighted composite + worst-first critique). Your REGISTERED CRITICS run too (register_critic) — rules + rubric verdicts ride the result as clientScores, exactly like the Director's gates evaluate them (evaluator-webhook critics run in the Director lane only). Returns a jobId — wait_job(kind='verify') for the result, which ALSO carries a checkpointId: the verdicts mint a durable kind:'score' Checkpoint (the same evidence noun the Director's gates produce). No session to manage — the box is a server detail; the compose_verify meter fires on the job's success terminal.