Reference images and style consistency
Keep a mascot on-model in every pose with persistent reference images and a style card. Several fields accept images, each for a different purpose.
URL imports, including reference URLs:
- Public HTTP(S) images up to 10 MB, downloaded within 15 seconds.
- Every redirect must resolve to a public address. Private addresses and URLs with credentials are rejected.
- PNG, JPEG, WebP, GIF and SVG (converted to PNG).
Which image field to use
| Where | Persistence | Use case |
|---|---|---|
POST /v1/mascots/:id/references (body: asset_id or url) | Persistent | Style anchors for every generation in this mascot. Max 6. |
reference_image_urls / reference_asset_ids on POST /v1/mascots | Persistent (seeded at creation) | Same as above, set when creating the mascot. An image that already belongs to another mascot is copied: that mascot keeps it. |
PreviewBody.reference_image_urls on /v1/generate/preview | Ephemeral (one-off) | Style hints for a single preview, not stored. |
visual_references on image generation or image editing | One request | Up to 4 pose, expression, motion, prop, style, or scene hints, each with asset_id or url, optional role and note. Does not change the character references. |
GenerateBody.source_image_asset_id on /v1/mascots/:id/generate | N/A | The image to animate or edit. NOT a style reference. |
Removing a reference
curl -X DELETE https://api.masko.ai/v1/mascots/MASCOT_ID/references/ASSET_ID \
-H "Authorization: Bearer masko_YOUR_API_KEY"How the style card works
On a mascot's first generation, Masko extracts a style card from the references: a short description of the palette, proportions, outline style and other defining traits. It is cached on the mascot config and sent with the reference images in every prompt. Adding or removing a reference clears it, and the next generation extracts it again.
Common mistakes
- Using a preview as a source. Previews from
/v1/generate/previeware not persisted and have no asset ID. Generate the pose withPOST /v1/mascots/:id/generate, then useasset_ids.image. - Passing a
transparent_imageID assource_image_asset_id. The source must be the fullimageasset (asset_ids.image), not the background-removed one. - Confusing the source with references.
source_image_asset_idis the exact pose to animate or edit; references define what the character looks like.
