Seedream 5.0 Flash API

Fast Seedream image model that splits one image into editable layers, edits by coordinate or sketch marker, and fuses up to 10 references.

ByteDanceImage GenerationMalaysiaProprietary EndpointNew

About Seedream 5.0 Flash

Fast Seedream image model that splits one image into editable layers, edits by coordinate or sketch marker, and fuses up to 10 references.

Also known as Seedream Flash, ByteDance Seedream 5.0 Flash

image generationimage editinglayer decompositioninteractive editingmulti referencetext renderingmultilingual texttransparent background

Seedream 5.0 Flash specs

Model ID
seedream-5-0-flash
Author
ByteDance
Category
Image Generation
Released
-
Input
TextImage
Output
Image
Region
Malaysia
Endpoints
POST/v1/images/generations
Alternate model IDs
bytedance/dola-seedream-5-0-flash-260915bytedance/seedream-5-0-flashbyteplus/dola-seedream-5-0-flash-260915byteplus/seedream-5-0-flashdola-seedream-5-0-flash-260915seedream-5-0-flash-260915seedream-5-flashseedream-5.0-flash

Seedream 5.0 Flash API pricing

Live pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.

Type
Spec
Rate
Image generation
per image
$0.030
Layer decomposition
per image
$0.030
Compare on the full pricing page

How to call the Seedream 5.0 Flash API

Seedream 5.0 Flash runs through POST /v1/images/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Or add "sync": true to skip polling: the request stays open and returns the finished OpenAI-style image response directly, so OpenAI SDKs work as-is. Get an API key from the EmpirioLabs dashboard.

cURL: submit the job
curl https://api.empiriolabs.ai/v1/images/generations \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedream-5-0-flash",
    "prompt": "Describe what you want Seedream 5.0 Flash to generate."
  }'
cURL: poll for the result
curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"
Python
import requests

response = requests.post(
    "https://api.empiriolabs.ai/v1/images/generations",
    headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    json={
        "model": "seedream-5-0-flash",
        "prompt": "Describe what you want Seedream 5.0 Flash to generate.",
    },
)
job = response.json()

# Generation runs as an async job. Poll until it completes.
import time
while True:
    status = requests.get(
        f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
        headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    ).json()
    if status.get("status") in ("completed", "failed"):
        print(status)
        break
    time.sleep(5)
Full Seedream 5.0 Flash API reference

Seedream 5.0 Flash API parameters

Request parameters supported by the Seedream 5.0 Flash API on EmpirioLabs. Defaults apply when a field is omitted.

ParameterTypeDefaultRange / valuesDescription
promptstring--Text prompt. With image attached, becomes an editing or fusion instruction.
imagearray--Reference image URL, data URI, or uploaded image object. Seedream 5.0 Flash supports up to 10 reference images, and exactly one for layer decomposition or a...
imagesarray--Alias for image. Use this for multiple uploaded image references.
aspect_ratioenumautoauto, 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 21:9Auto lets the model choose dimensions within the selected resolution tier. Explicit ratios use the preset size for that tier.
layer_decompositionbooleanfalse-Split one input image into a base image plus up to 16 transparent PNG layers, each returned with its stacking order, its position in the base image, a name, and a...
qualityenum2K1K, 1.5K, 2KOutput resolution tier. All tiers are billed at the same flat per-image rate. Defaults to 2K. In layer decomposition, leaving this unset matches the input image instead.
sizestring--Resolution tier or explicit pixel size such as 1K, 1.5K, 2K, or 2048x1152. Explicit pixels override aspect_ratio and quality. Layer decomposition accepts tiers or...
use_custom_sizebooleanfalse-Use custom_width and custom_height instead of preset aspect_ratio and quality.
custom_widthnumber-15 to 8600Custom output width in pixels. Total area must be in [0.92MP, 4.62MP] and aspect must be in [1:16, 16:1].
custom_heightnumber-15 to 8600Custom output height in pixels. Total area must be in [0.92MP, 4.62MP] and aspect must be in [1:16, 16:1].
watermarkbooleanfalse-When enabled, the generated image includes an AI-generated provenance watermark. EmpirioLabs does not add a separate watermark.
output_formatenumpngjpeg, pngOutput image file format. In layer decomposition this sets the base image format, and layers are always returned as PNG.
backgroundenumopaqueopaque, transparentTransparent keeps the alpha channel so the output has no background. Supported when editing exactly one input image that already has an alpha channel, and requires...
response_formatenumurlurl, b64_jsonReturn signed image URLs by default, or include base64 image data when b64_json is requested.

Good to know

Modes

  • Text to image
  • Single or multi-image to image
  • Interactive editing with coordinate or sketch markers
  • Layer decomposition into a base image plus up to 16 layers

Interactive editing

Mark the region to change directly on the input image with a sketch, circle, or arrow, then describe it in the prompt. For exact placement, use coordinate tags on a 0 to 1000 normalized grid:

Place the subject from image 1 <bbox>179 283 796 986</bbox> at the position in image 2 <bbox>118 331 933 871</bbox>.

Layer decomposition

Set layer_decomposition to true with exactly one input image to split it into a base image plus up to 16 transparent PNG layers. Every returned image carries its stacking order as z_index, and each layer also carries its position in the base image as bounding_box.absolute and bounding_box.normalized, plus a name and a description. Leave the prompt empty to let the model choose the elements, or name the elements or coordinate regions to separate. Resolution accepts 1K, 1.5K, or 2K, and matches the input image when unset.

Limits

  • One output image per request, except layer decomposition, which returns the base image plus its layers
  • Up to 10 reference images, and exactly one for layer decomposition or a transparent background
  • 1K, 1.5K, and 2K resolution tiers
  • PNG or JPEG output, and layers are always PNG
  • A transparent background needs one input image that already has an alpha channel, and PNG output
  • No grouped output, streaming, or web search

Billing

Every resolution tier bills at the same per-image rate, and reference images are free. Layer decomposition bills every returned image, the base image and each layer, at that same rate.

Content safety

Generated images pass an automated content-safety check. An image flagged as explicit is not returned. Because the image is generated before the check runs, a flagged generation is still billed.

Seedream 5.0 Flash API: common questions

How much does the Seedream 5.0 Flash API cost?

On EmpirioLabs, Seedream 5.0 Flash is billed pay as you go: Image generation $0.030 per image; Layer decomposition $0.030 per image. The live rate card on this page always matches what the API charges.

Which endpoint does Seedream 5.0 Flash use?

Seedream 5.0 Flash is served through POST /v1/images/generations on api.empiriolabs.ai with standard bearer-token authentication.

Can I try Seedream 5.0 Flash in the browser before integrating?

Yes. The EmpirioLabs playground runs Seedream 5.0 Flash in the browser with the same parameters the API exposes, so you can test prompts before writing code.

How do I get a Seedream 5.0 Flash API key?

Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.

Ready to use better endpoints?

Check out our pricing or reach out if you want your own model deployed on our stack.