CueFrame · Schema

PreviewFrameRequest

CompanyVideoVideo EditingVideo RenderingAI AgentsMCPMediaDeveloper Tools

Properties

Name Type Description
composition object The composition to render. Absent ⇒ the project's ACTIVE composition — what create_render will encode. The response's `previewed.source` names what was rendered.
compositionId string Preview a SPECIFIC persisted composition of this project (create_render parity). Absent ⇒ the active one. A stale/foreign id is a 404 — never a silent fall-through.
session_id string Compose-session id: render that session's SCRATCH composition (what the session has been editing) instead of the active row. Ignored when `composition` is passed.
timestamps array Composition seconds to capture, 18 per request. The batch renders as ONE unit of work — one warm container, one source decode, N seeks — and that unit has a fixed time budget, so a larger batch is ref
imageFormat string Still format. Default jpeg — these pixels go to a vision model, where jpeg is equivalent and png costs multiples in bytes to store and move. Pass png only when you need full fidelity.
scale number Render scale 0.1–1. Default 0.5, which is what this schema has always recommended for vision-bound looks. Pass 1 when judging fine detail — it costs ~4x the vision tokens.
jpegQuality integer JPEG quality (jpeg only). Default 70 — the quality the eval panel grades at.
View JSON Schema on GitHub

JSON Schema

cueframe-ai-preview-frame-request-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/cueframe-ai/json-schema/cueframe-ai-preview-frame-request-schema.json",
  "title": "PreviewFrameRequest",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/cueframe-ai-evidence-api-openapi.yml#/components/schemas/PreviewFrameRequest",
  "type": "object",
  "properties": {
    "composition": {
      "description": "The composition to render. Absent ⇒ the project's ACTIVE composition — what create_render will encode. The response's `previewed.source` names what was rendered."
    },
    "compositionId": {
      "description": "Preview a SPECIFIC persisted composition of this project (create_render parity). Absent ⇒ the active one. A stale/foreign id is a 404 — never a silent fall-through.",
      "type": "string"
    },
    "session_id": {
      "description": "Compose-session id: render that session's SCRATCH composition (what the session has been editing) instead of the active row. Ignored when `composition` is passed.",
      "type": "string"
    },
    "timestamps": {
      "minItems": 1,
      "maxItems": 18,
      "type": "array",
      "items": {
        "type": "number"
      },
      "description": "Composition seconds to capture, 18 per request. The batch renders as ONE unit of work — one warm container, one source decode, N seeks — and that unit has a fixed time budget, so a larger batch is refused here rather than accepted and timed out minutes later. For a denser sweep, split it across calls; identical beats are served from the still cache, so overlapping batches are cheap."
    },
    "imageFormat": {
      "description": "Still format. Default jpeg — these pixels go to a vision model, where jpeg is equivalent and png costs multiples in bytes to store and move. Pass png only when you need full fidelity.",
      "type": "string",
      "enum": [
        "png",
        "jpeg"
      ]
    },
    "scale": {
      "description": "Render scale 0.1–1. Default 0.5, which is what this schema has always recommended for vision-bound looks. Pass 1 when judging fine detail — it costs ~4x the vision tokens.",
      "type": "number",
      "minimum": 0.1,
      "maximum": 1
    },
    "jpegQuality": {
      "description": "JPEG quality (jpeg only). Default 70 — the quality the eval panel grades at.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "required": [
    "timestamps"
  ],
  "additionalProperties": false
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/cueframe-ai-preview-frame-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.