Skip to main content

Overview

Seedream 4.5 is a ByteDance image model for text-to-image generation and reference-guided image generation. It supports 2K and 4K output presets, up to 10 generated images per task, optional sequential generation, and flexible size input for callers who prefer explicit dimensions.
CapabilityValue
Model IDseedream-4-5
Modestext-to-image, image-to-image
Prompt length1-5000 characters
Reference images1-14 URLs for image-to-image
Images per taskmax_images is required, 1-10
Resolution tiers2K, 4K
Aspect ratios1:1, 2:3, 3:2, 4:3, 3:4, 9:16, 16:9, 21:9
Size input2K, 4K, 2048x2048, 2048X2048, 2048*2048
Sequential generationdisabled, auto
Prompt optimizationstandard

Endpoint and authentication

Base URL:
https://api.apixo.ai/api/v1
MethodEndpointPurpose
POST/generateTask/seedream-4-5Submit a generation task
GET/statusTask/seedream-4-5?taskId={taskId}Poll task status and retrieve results
All requests require your APIXO API key:
Authorization: Bearer YOUR_API_KEY
Submit requests also require:
Content-Type: application/json

Copy-paste async quickstart

This minimal request submits a text-to-image task and returns a taskId.
curl -X POST "https://api.apixo.ai/api/v1/generateTask/seedream-4-5" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": {
      "mode": "text-to-image",
      "prompt": "a cozy cyberpunk cafe with warm neon lights, ultra detailed",
      "max_images": 2,
      "resolution": "2K",
      "aspect_ratio": "16:9",
      "prompt_optimize_mode": "standard"
    }
  }'
Successful response:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678"
  }
}
Save the taskId; you need it to poll for the final result.

Poll for result

curl -X GET "https://api.apixo.ai/api/v1/statusTask/seedream-4-5?taskId=task_12345678" \
  -H "Authorization: Bearer YOUR_API_KEY"
Processing response:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678",
    "state": "processing",
    "createTime": 1767965610929
  }
}
Success response:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678",
    "state": "success",
    "resultJson": "{\"resultUrls\":[\"https://file.apixo.ai/img1.png\",\"https://file.apixo.ai/img2.png\"]}",
    "createTime": 1767965610929,
    "completeTime": 1767965652317,
    "costTime": 41388
  }
}

Request body

Text-to-image

{
  "input": {
    "mode": "text-to-image",
    "prompt": "a fox in watercolor style",
    "max_images": 1,
    "resolution": "2K",
    "aspect_ratio": "1:1",
    "sequential_image_generation": "disabled",
    "prompt_optimize_mode": "standard"
  }
}

Image-to-image

{
  "input": {
    "mode": "image-to-image",
    "prompt": "turn this scene into a warm sunrise illustration",
    "image_urls": [
      "https://example.com/reference-1.png",
      "https://example.com/reference-2.jpg"
    ],
    "max_images": 3,
    "resolution": "4K",
    "aspect_ratio": "3:4",
    "sequential_image_generation": "auto",
    "prompt_optimize_mode": "standard"
  }
}

Explicit size

{
  "input": {
    "mode": "text-to-image",
    "prompt": "an editorial still life scene",
    "max_images": 1,
    "size": "2048*2048"
  }
}

Parameters

request_type
string
default:"async"
Result delivery mode. Use async for polling with statusTask, or callback for webhook delivery.
callback_url
string
Required when request_type is callback. Must be a public HTTPS URL that can receive the final task payload. See Webhooks.
input
object
required
Seedream 4.5 input parameters.

Size presets from resolution + aspect_ratio

When aspect_ratio is provided, APIXO maps resolution and aspect_ratio to these output dimensions:
Aspect ratio2K size4K size
1:12048x20484096x4096
2:31664x24963328x4992
3:22496x16644992x3328
3:41728x23043520x4704
4:32304x17284704x3520
9:161600x28483040x5504
16:92848x16005504x3040
21:93136x13446240x2656

Response format

Submit task response

POST /generateTask/seedream-4-5 returns a task ID when the task is accepted:
code
integer
API status code. 200 means the task was accepted.
message
string
Human-readable status message.
data.taskId
string
Task identifier used for later polling or webhook matching.

Status response

data.state
string
Task state. Common values are processing, success, and failed.
data.resultJson
string
Present on success. Parse this JSON string and read resultUrls.
data.failCode
string
Present on failure. Stable machine-readable failure code.
data.failMsg
string
Present on failure. Human-readable failure message.

Polling and delivery guidance

Seedream 4.5 tasks are asynchronous.
ResolutionTypical generation timeRecommended first pollPoll interval
2K25s-35s20s after task creation3s-5s
4K40s-55s30s after task creation5s
For production systems, prefer callback_url instead of tight polling loops.

Billing

Seedream 4.5 is billed per generated image. The current public APIXO price is a single flat rate for this model.
UnitAPIXO price
Per generated image$0.0350 / image
Billing behavior:
precharge = requested max_images * unit price
final charge = successful images * unit price
If fewer images succeed than requested, APIXO automatically adjusts the final charge to the actual number of successful outputs.