Skip to content
Docs version r8
OpenAPIJSONYAML
Guides / Models

Seedream 5.0 Lite API

Every input field of Seedream 5.0 Lite, the rules between them, the price and a complete request with its responses.

POST/v1/generations"model": "seedream-5-0-lite"

Generates one image, or a group of related images, from a prompt and optional reference images.

What it does

Seedream 5.0 Lite makes images from a prompt and up to 14 reference images: one image, or a group of up to 15 related images in one task, such as a storyboard, a set of product views or a series in one style. The prompt goes in input.prompt, the reference images in input.image, and sequential_image_generation turns on the group. The fields you send choose the mode:

ModeFields that select itOther fields to set
[Text to image](#text-to-image)prompt onlysize (optional)
[Reference images and editing](#reference-images-and-editing)prompt, image with 1 to 14 itemssize (optional)
[Group of images](#group-of-images)prompt, sequential_image_generation auto, optional imagesequential_image_generation_options.max_images 1 to 15

Every example below is a complete body for POST /v1/generations. Send the same body to POST /v1/estimates first: it is free, creates no task, holds no Credits, and refuses an invalid body with the same 422 as a create. The https://media.vizoapi.com/... files are public samples, so the examples run as they are; replace them with your own files or uploaded ast_... asset IDs.

Modes

Text to image

Send only prompt. Pick the size with size: 2k, 3k, or an exact WIDTHxHEIGHT (see [Output](#output)). For 4K, send the pixel size, such as 3840x2160; the word 4k is refused.

Text to image
{
  "model": "seedream-5-0-lite",
  "input": {
    "prompt": "A paper boat on a still pond at dawn, mist on the water, soft natural light, watercolor illustration",
    "size": "2k",
    "output_format": "png"
  }
}

Reference images and editing

Put 1 to 14 images in image, in the order you want to name them. With one image, the prompt can edit it: change an object, the background, the light or the style, and say what must stay. With several, combine them, and name each by its order in the prompt ("image 1", "image 2"). A 15th image is refused (rule too_many_items). Reference images are included in the price.

Edit one image

{
  "model": "seedream-5-0-lite",
  "input": {
    "prompt": "Turn image 1 into a night scene: a starry sky and a thin crescent moon above the monolith; keep the composition unchanged",
    "image": [
      "https://media.vizoapi.com/samples/seedance-2-5/odyssey-v1/keyframes/monolith.jpg"
    ],
    "size": "2k"
  }
}

Combine references

{
  "model": "seedream-5-0-lite",
  "input": {
    "prompt": "The ring-shaped space station from image 2 floats in the sky above the monolith from image 1, golden hour, wide shot",
    "image": [
      "https://media.vizoapi.com/samples/seedance-2-5/odyssey-v1/keyframes/monolith.jpg",
      "https://media.vizoapi.com/samples/seedance-2-5/odyssey-v1/keyframes/station.jpg"
    ],
    "size": "2560x1440"
  }
}

Group of images

Set sequential_image_generation to auto and sequential_image_generation_options.max_images to the number of images you want, 1 to 15. The model makes a set of related images that share characters, style and setting; describe the set in the prompt ("4 storyboard panels: …"). All images in a group share size and output_format.

  • auto without sequential_image_generation_options is refused (rule max_images_required).
  • sequential_image_generation_options without auto is refused (rule group_options_without_auto).
  • Reference images plus max_images must be at most 15 (rule too_many_images): with 3 reference images, max_images is at most 12.

max_images is an upper limit: the model may return fewer images. The hold covers max_images, and the charge counts the images delivered.

Group from text

{
  "model": "seedream-5-0-lite",
  "input": {
    "prompt": "Four storyboard panels of a paper boat's journey: launched by a child's hand at a pond, drifting through reeds, caught in rain, arriving at a lantern-lit dock at night. Same boat, same watercolor style in every panel.",
    "sequential_image_generation": "auto",
    "sequential_image_generation_options": { "max_images": 4 },
    "size": "2k"
  }
}

Group from a reference

{
  "model": "seedream-5-0-lite",
  "input": {
    "prompt": "Three posters for the same film, using the space station from image 1: a teaser in black space, a close-up of its docking ring, a wide shot above an amber planet. Same color palette, clean title space at the top.",
    "image": [
      "https://media.vizoapi.com/samples/seedance-2-5/odyssey-v1/keyframes/station.jpg"
    ],
    "sequential_image_generation": "auto",
    "sequential_image_generation_options": { "max_images": 3 },
    "size": "2304x3072",
    "output_format": "png"
  }
}

Prompt optimization

Any mode can set "optimize_prompt": true to have the prompt rewritten before generation. optimize_prompt_options tunes it: thinking is auto, enabled or disabled, and mode is only standard. Sending optimize_prompt_options without "optimize_prompt": true is refused (rule optimize_options_without_optimize). The price does not change.

Optimized prompt
{
  "model": "seedream-5-0-lite",
  "input": {
    "prompt": "cozy reading corner, rainy evening",
    "optimize_prompt": true,
    "optimize_prompt_options": { "thinking": "auto", "mode": "standard" },
    "size": "2k"
  }
}

Input limits

LimitValueChecked
promptRequired and not blankAt create, 422 invalid_input (required, bad_format)
image itemsUp to 14At create, 422 invalid_input (too_many_items)
Group sizemax_images 1 to 15; reference images plus max_images at most 15At create, 422 invalid_input (out_of_range, too_many_images)
Image valuePublic https URL (up to 4,000 characters) or ast_... asset IDAt create, 422 invalid_input (bad_format)
size2k, 3k, or WIDTHxHEIGHT with 3,686,400 to 10,404,496 pixels in totalAt create, 422 invalid_input (bad_format for the shape, size_invalid for the pixel count)
Image filePNG, JPEG, WebP, BMP, TIFF, GIF, HEIC; up to 30 MBAt create when readable: 422 input_media_invalid (format) or input_media_too_large (size)
Uploaded assetimage/png, image/jpeg, image/webp; up to 20,000,000 bytesWhen you request the upload, 422
Reference pixel size and aspect ratio; output aspect ratioChecked by the model onlyWhen the task runs: the task fails with generation_failed and is not charged

Plain http, private or local addresses, URLs with a user name or #fragment, and Base64 data are refused with 422 (rule bad_format). The model fetches a linked image itself, possibly some time after acceptance, so keep it reachable until the task closes; if it cannot, the task fails with generation_failed. See Model inputs and media.

Output

SettingValues
size2k, 3k, or WIDTHxHEIGHT with 3,686,400 to 10,404,496 pixels, for example 2048x2048 (1:1), 2560x1440 (16:9), 2304x3072 (3:4), 3840x2160 (4K 16:9). When omitted, the model picks its default size
output_formatjpeg (default) or png
sequential_image_generationdisabled (default) for one image, or auto for a group
seed-1 (or omitted) for random, or a non-negative integer to repeat a result more closely
optimize_promptfalse (default) or true to rewrite the prompt first
watermarkfalse (default) or true for a visible watermark

A succeeded task lists its images in result.outputs, in the order the model made them: one image, or 1 to max_images for a group. Each is a PNG or JPEG as output_format asks; take each asset_id and get a download URL with download an asset. Outputs are kept for 7 days. See Get results.

How it is billed

The model has one tier, standard, at 7 Credits per output image. Reference images, size, output_format, seed, optimize_prompt and watermark do not change the price.

The hold is the price × the images you ask for: 1, or max_images for a group.

RequestImages askedHeld
Text to image or edit17.000
Group, max_images: 4428.000
Group with 3 references, max_images: 121284.000
Group, max_images: 1515105.000

A succeeded task is charged for the images delivered, never more than you asked for: if a group of 4 returns 3 images, price.charged is 21.000 and the rest of the hold is released. A failed, canceled or unresolved task is not charged. Send the body to POST /v1/estimates to see the exact hold and its basis (outputs, input_images). See Billing.

Errors and behaviors

WhenResponseWhat to do
A field the schema does not list, a wrong value or type422 invalid_input, errors[].rule such as field_not_allowed, value_not_allowed, wrong_type, out_of_rangeSend only the fields in the reference below; model belongs outside input
A missing or blank prompt422 invalid_input, rule required or bad_formatSend a prompt
More than 14 reference images422 invalid_input, rule too_many_itemsSend at most 14
A group rule is broken422 invalid_input with the rule: max_images_required, group_options_without_auto, too_many_imagesFix the field at errors[].path
A size outside the pixel range, or a name other than 2k and 3k422 invalid_input, rule size_invalid or bad_formatUse 2k, 3k or a valid WIDTHxHEIGHT
optimize_prompt_options without "optimize_prompt": true422 invalid_input, rule optimize_options_without_optimizeSet optimize_prompt or drop the options
A linked image has the wrong format or is too large422 input_media_invalid or input_media_too_largeConvert or shrink it
The model refuses or cannot fetch an imageTask fails with generation_failedCheck the file and keep the URL public until the task closes, or upload it; nothing is charged
Content safety refuses the prompt or a reference imageTask fails with input_moderatedChange the prompt or image; nothing is charged
Content safety refuses the resultTask fails with output_moderated, no resultChange the prompt; nothing is charged
A group returns fewer images than max_imagesTask succeeds with fewer result.outputsNothing to fix; only delivered images are charged
The model fails for another reasonTask fails with generation_failedRetry, or change the prompt; nothing is charged

Moderation is always on; no field turns it off. Each task has a 24-hour deadline from acceptance. A task still unfinished then closes as unresolved, releases its hold and is not charged; if its result arrives later, it is added at no charge and late_result_available becomes true. See Errors and Get results.

Prompting tips

  • Describe the picture, not the process: subject, setting, composition, light and style. Full sentences work better than a list of keywords.
  • For a group, say how many images and what each one shows ("Panel 1: …, Panel 2: …"), and what stays the same across them: the character, the outfit, the palette, the style. Set max_images to the number you describe.
  • To edit, say exactly what changes and what stays: "replace the sky with a storm; keep the people, their pose and the framing unchanged".
  • With several references, name each by its order and say what to take from it: "the jacket from image 2 on the person in image 1".
  • Put text you want in the image in quotes, and say where it goes: a title "NORTH STAR" at the top, in bold white letters.
  • Pick size for the framing: a tall 2304x3072 for posters and phone screens, a wide 2560x1440 or 3840x2160 for banners.

Pricing

Each output image is billed at the tier’s price.

TierSelected byPrice
standardany input7 Credits per image

Rules

  • optimize_prompt_options is allowed only with optimize_prompt set to true.
  • sequential_image_generation_options is required when sequential_image_generation is auto and allowed only then; reference images plus max_images are at most 15.

Input fields

Send these fields in input. A field the table does not list is refused with HTTP 422 invalid_input.

Input fields
FieldDescription
promptstringRequired

Text prompt. Must not be blank.

seedintegerOptional

Random seed; -1 picks one at random.

Minimum -1 · Maximum 9223372036854775807

sizestringOptional

Output size: WIDTHxHEIGHT with 3,686,400 to 10,404,496 pixels in total, or 2k or 3k.

Pattern^([1-9][0-9]*x[1-9][0-9]*|2k|3k)$

imagearray of stringsOptional

Reference images, up to 14.

At most 14 items

optimize_promptbooleanOptional

Rewrites the prompt before generation.

Default false

optimize_prompt_optionsobjectOptional

Allowed only with optimize_prompt set to true.

optimize_prompt_options.thinkingstringOptional

Prompt expansion.

Allowed valuesautoenableddisabled
optimize_prompt_options.modestringOptional

Optimization mode. Only standard.

Only standard

output_formatstringOptional

Image file format.

Allowed valuesjpegpng

Default jpeg

sequential_image_generationstringOptional

auto generates a set of related images and requires sequential_image_generation_options.max_images; disabled generates one image.

Allowed valuesautodisabled

Default disabled

sequential_image_generation_optionsobjectOptional

Allowed only with sequential_image_generation set to auto. Reference images plus max_images must not exceed 15.

sequential_image_generation_options.max_imagesintegerRequired

Number of images to generate, 1 to 15. The hold covers each requested image; a succeeded task is charged only for the images delivered.

Minimum 1 · Maximum 15

watermarkbooleanOptional

Add a visible watermark. Defaults to false; the tier price is unchanged.

Default false

Example

A complete create request, the 202 answer and the task once it has succeeded.

Request

cURL

curl https://api.vizoapi.com/v1/generations \
  -H "Authorization: Bearer $VIZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "seedream-5-0-lite",
  "input": {
    "prompt": "A paper boat on a pond at dawn, soft watercolor"
  },
  "metadata": {
    "client_reference": "my-unique-reference-1"
  }
}'

Python

import os, requests

# Send once: do not retry this request automatically.
task = requests.post(
    "https://api.vizoapi.com/v1/generations",
    headers={"Authorization": f"Bearer {os.environ['VIZO_API_KEY']}"},
    json={
      "model": "seedream-5-0-lite",
      "input": {
        "prompt": "A paper boat on a pond at dawn, soft watercolor"
      },
      "metadata": {
        "client_reference": "my-unique-reference-1"
      }
    },
    timeout=60,
).json()
print(task["id"], task["status"])

Node.js

// Send once: do not retry this request automatically.
const res = await fetch("https://api.vizoapi.com/v1/generations", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.VIZO_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "model": "seedream-5-0-lite",
    "input": {
      "prompt": "A paper boat on a pond at dawn, soft watercolor"
    },
    "metadata": {
      "client_reference": "my-unique-reference-1"
    }
  }),
});
const task = await res.json();
console.log(task.id, task.status);

This input selects the standard tier at 7 Credits per image. One image holds 7.000 Credits.

Response

202 Accepted

{
  "id": "gen_01JD8Z5QW3XR",
  "model": "seedream-5-0-lite",
  "source": "api",
  "created_at": "2026-11-08T09:00:00Z",
  "customer_resolution_deadline": "2026-11-09T09:00:00Z",
  "late_result_available": false,
  "metadata": {
    "client_reference": "my-unique-reference-1"
  },
  "status": "processing",
  "execution_status": "processing",
  "delivery_status": "pending",
  "billing_status": "pending",
  "version": 1,
  "price": {
    "unit": "credit",
    "estimated": "7.000",
    "reserved": "0.000",
    "charged": "0.000",
    "refunded": "0.000"
  },
  "allowed_actions": [],
  "closed_at": null,
  "error": null,
  "result": null
}

200 Succeeded

{
  "id": "gen_01JD8Z5QW3XR",
  "model": "seedream-5-0-lite",
  "source": "api",
  "created_at": "2026-11-08T09:00:00Z",
  "customer_resolution_deadline": "2026-11-09T09:00:00Z",
  "late_result_available": false,
  "metadata": {
    "client_reference": "my-unique-reference-1"
  },
  "status": "succeeded",
  "execution_status": "succeeded",
  "delivery_status": "ready",
  "billing_status": "settled",
  "version": 4,
  "price": {
    "unit": "credit",
    "estimated": "7.000",
    "reserved": "0.000",
    "charged": "7.000",
    "refunded": "0.000"
  },
  "allowed_actions": [],
  "closed_at": "2026-11-08T09:01:31Z",
  "error": null,
  "result": {
    "asset_id": "ast_01JD8Z9M2C4V",
    "outputs": [
      {
        "index": 0,
        "asset_id": "ast_01JD8Z9M2C4V",
        "content_type": "image/jpeg"
      }
    ]
  }
}