template

Reference for the template tool of Video: templates, with every action and what it does.

Updated 17 October 2026 · View as Markdown

The templates a video is made from: the six fixed templates, the scene template, starters, design-round films and packs, themes, and the workspace's own templates (recipes that are pure data).

Call it as geenius_video(tool: "template", action: "<action>", args: {...}) through Geenius OS.

Actions#

ActionWhat it does
listEvery template: id, name, description, default size, natural length in seconds, its JSON schema and a sample spec that is valid as-is; yours carry status, version, usage and an appUrl.
readOne template (a built-in id or one of your keys) with the same fields as list; yours add the recipe, params in plain words, sample params and the version list.
sizesThe sizes a video renders at (720p, 1080p, square, vertical) with pixel dimensions.
themesThe DESIGN-ROUND THEMES (r5, r5-apricot, r5-sage, r5-sky, r5-indigo, r6-marker, r7-signal, r7-petrol, r7-cobalt, r7-amber, r8-depth, nabcloud-r1/r2/r3, wundaly-r1/r2/r3): without theme a list; with theme one in full.
featuresThe scene template's feature specs, one tiny valid spec per feature (type scale, text reveals, shapes, device frames, camera moves, masks, backgrounds, keyframes, every transition, captions, brands). Without feature a list of {id, name, description}; with feature:<id>, that feature's spec to copy from.
filmsThe 30 design-round phone-journey films (x1h, x1j1 ... x5j5) the film template starts from: without film a list of {id, look, theme, title, beats}; with film:<id> the whole journey to copy.
pack_listThe TEMPLATE PACKS (bundles of film templates, components, fonts and themes that share an engine: Geenius R5 phone journeys, then Geenius R3, R4 ..., Nabcloud, Wundaly): id, name, brand, version, films, templates, themes, what is editable.
pack_readOne pack's manifest with its templates, components, themes and film list; with film:<id> one film with its EDITABLE LINES (path, default text, max length).
createSaves a new template of yours as a DRAFT (version 1) from a recipe. The recipe is checked and its sample built through the components' own validators: errors name the scene, the path and what to write. Returns lint of the sample and what a share still needs.
from_videoA template from a scene video. Its component scenes become recipe scenes; their text, lists, screens and pictures become PARAMETERS named after the field (headline, headline2, ...) with the video's own values as the sample, so a video made from the template with the sample params equals the original. Timing, choices and transitions stay fixed. Hand-drawn scenes are listed in skipped. Read the proposed params and rename/describe them with param_set.
updateChanges your template's working copy: name, description, tags, or recipe (the whole working copy). For small edits use param_add, param_set, param_remove, scene_add, scene_update, scene_remove, scene_move and sample_set; each checks the whole recipe and returns a plain-words note.
param_addAdds a parameter to your template: def:{key,type,description,...} and sample; or scene + field to turn a field of a scene INTO a parameter (its value becomes the sample).
param_setChanges a parameter of your template: def holds the fields to change (null removes one); rename gives it a new key (every use follows); sample its new sample value.
param_removeRemoves a parameter of your template; its sample value stays fixed in the scenes.
scene_addAdds a component scene to your template's recipe.
scene_updateChanges one scene of your template's recipe: params are merged (null removes a key) or replaced (replace:true); when, each and component can change too.
scene_removeRemoves one scene of your template's recipe.
scene_moveMoves one scene of your template's recipe to a new index.
sample_setChanges sample values of your template's parameters.
duplicateA new draft template copied from a built-in starter or one of yours, to expand or change.
versionSnapshots your template's working copy as the next IMMUTABLE version. Edits change only the working copy; videos are made from a published version (video create template:"<key>", params:{...}, template_version?) and pin it.
versionsYour template's version history with how many videos use each.
diffWhat changed in your template between two versions.
upgradeMoves a video to a newer version of its template: shows the diff and whether the video was edited by hand; apply:true makes the video again from the new version.
shareShares your template: private, workspace or featured (admins only). The QUALITY BAR is enforced: the sample must pass video lint (0 warnings) and the template needs a poster (a person opens it once in Geenius Video, which captures it; a template made from a rendered video brings that poster).
archiveNo new videos from your template; existing ones keep working.
restoreUndoes archive: new videos can be made from your template again.
deleteDeletes your template. A template that videos use is NEVER deleted without a replacement that takes over their pin.
usageThe videos made from your template and which version each is on.
previewBuilds the video from a template's params WITHOUT saving: scenes, seconds, lint.
validateEvery problem of a template or a recipe, the quality bar (the sample passes video lint) and whether a share would pass.
exportYour template as a JSON envelope (for backup and for sharing across workspaces; template import reads it).
importA new draft template from an envelope template export returned; name/key rename it.