shaders

Render one frame of a shader

Queue a one-frame preview (a PNG, not billed) of the shader on a full-canvas shape over a three-hue fill, at time with params. Poll the returned job with GET /v1/renders/{id}, as for any preview.

post/v1/shaders/{shader_id}/probe

Request

  • Base URL: https://api.framelane.io
  • URL: https://api.framelane.io/v1/shaders/{shader_id}/probe
  • Auth: HTTP bearer

Path parameters

shader_idstring required

Request body

widthinteger

Canvas width in px.

heightinteger

Canvas height in px.

timenumber

The timeline second to render.

paramsobject

Param values for the frame, as an effect's shader.params takes them.

Response

Successful Response

idstring required

Unique job ID. Prefix indicates type: render_ or task_.

kind'render' | 'task' required
is_previewboolean

True for a cheap preview render. Previews are not billed and are excluded from the renders list.

editor_urlstring nullable

Open the project this job was submitted from in the authenticated console. Absent for a job with no project.

task_type'transcribe'

The AI task types the API offers.

Values:

  • transcribe — Speech-to-text transcription (via AssemblyAI) with optional analysis. Returns the transcript inline on the task's result object — there is no file artifact, so output is null and /v1/tasks/{id}/download returns 404.
workspace_idstring required

ID of the workspace that owns this job.

status'ingesting' | 'queued' | 'processing' | 'completed' | 'failed' | 'cancelled' required

Values:

  • ingesting — External source files are being probed for duration before the render is queued.
  • queued — Accepted and waiting for a worker to pick it up.
  • processing — Actively rendering or processing.
  • completed — Finished successfully; the output artifact is available.
  • failed — Terminated with an error (see error).
  • cancelled — Cancelled by the caller before completion.
progress_percentinteger

0–100 progress indicator updated by the render engine.

progress_stage'downloading' | 'compositing' | 'encoding' | 'uploading'

Values:

  • downloading — Fetching source media.
  • compositing — Compositing the scene on the GPU.
  • encoding — Encoding the output video.
  • uploading — Uploading the finished artifact to storage.
resultobject nullable

Structured JSON result for tasks that return data rather than a file — transcribe returns the transcript here (text, words, utterances, and any requested analysis). Populated once status == completed; null for renders and for any job whose only artifact is the file at output.url.

metadataobject

Caller-supplied key-value pairs echoed back on every webhook and response.

created_atstring date-time required

ISO-8601 UTC timestamp when the job was created.

updated_atstring date-time required

ISO-8601 UTC timestamp of the last status change.

completed_atstring date-time nullable

ISO-8601 UTC timestamp when the job reached a terminal state.

Example response

{
  "id": "render_01J8QR2K5VKDGN2T4FBM3CZYX7",
  "workspace_id": "ws_01J8QR2K5VKDGN2T4FBM3CZYX8",
  "output": {
    "url": "https://cdn-user.framelane.io/render_01J.../output.mp4",
    "width": 1920,
    "height": 1080,
    "duration": 15.3,
    "size_bytes": 12582912
  },
  "result": {
    "language_code": "en",
    "text": "Welcome back to the show."
  },
  "error": {
    "message": "Source URL returned 404."
  },
  "metadata": {
    "project_id": "proj_123",
    "user_ref": "usr_abc"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.