A scene is an illustration with your mascot in it: a cozy desk for an empty inbox, a launch pad for a release banner. The scene agent draws the world around the character in the same vector language, places your actual rig in it, and returns both an SVG and a PNG. Because the mascot is your rig and not a redraw, it is on-model every time.
A scene costs 50 credits ($0.50 at plan rates), held when the job starts and refunded if it fails. See Credits & limits.
Create a scene#
POST/mascots/{id}/scenes
| Name | Type | Description |
|---|---|---|
promptrequired | string | The setting, mood and purpose, 3–1000 characters. Say where copy will go if you need space, e.g. "leave the left half calm for a headline". |
size | string | square, wide (default), banner or portrait. |
animation | string | Pose the mascot from this animation: an id, a name or a preset id. |
t | number | Seconds into animation to take the pose from. Default 0.4. |
max_cost_usd | number | Abort the job if model spend passes this (it can only lower the built-in ceiling). |
curl -X POST https://lumorig.com/api/v1/mascots/msc_…/scenes -H "Authorization: Bearer $LUMORIG_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "prompt": "cozy desk at night for an empty inbox, leave the left half calm for copy",
"size": "banner", "animation": "sleep" }'
# 202 → { "id": "job_…", "type": "scene", "status": "queued", … }Sizes#
| size | Canvas | Good for |
|---|---|---|
square | 1024 × 1024 | Social posts, avatars, app-store tiles. |
wide | 1600 × 900 | Hero banners and slides. The default. |
banner | 1600 × 600 | Email headers, page headers, empty states across a wide column. |
portrait | 900 × 1200 | Stories, mobile onboarding screens, posters. |
The SVG uses these dimensions as its coordinate space, so it scales to any display size without loss.
Posing the mascot#
Without animation the mascot stands in its rest pose. With one, the agent receives the pose at time t of that clip, so a celebrate scene shows arms up and a sleep scene shows closed eyes. Pick t at the most readable moment of the motion; scrub it first with the preview endpoint (?animation=celebrate&t=0.6), which is free.
Results#
When the job succeeds, job.result holds two files and a short description:
| Field | What |
|---|---|
svg | The full scene as vector: file object with id, url, mime image/svg+xml, bytes. |
png | The same scene rasterised: file object with mime image/png. |
summary | One or two sentences on what the agent drew. |
Download either with GET /files/{id} and your API key. The CLI saves both as <id>-scene.svg and .png in the -o directory; the local MCP server does the same with save_to.