Skip to main content

Introduction

Seedream is an AI image service provided by Ace Data Cloud, based on ByteDance’s Seedream image generation model. Through the unified API of Ace Data Cloud, you can quickly integrate Seedream using JavaScript to achieve text-to-image generation, image editing, multiple resolutions, watermark control, and other features.

Prerequisites

  • Have an Ace Data Cloud account and obtain an API Token
  • Node.js 18+ or a modern browser environment

Basic Usage

The main endpoint for calling the Seedream API is:
POST https://api.acedata.cloud/seedream/images
This example uses the doubao-seedream-4-0-250828 model.
Available models include: doubao-seedream-4-5-251128, doubao-seedream-4-0-250828, doubao-seedream-3-0-t2i-250415, doubao-seededit-3-0-i2i-250628.
Complete JavaScript code example:
const response = await fetch("https://api.acedata.cloud/seedream/images", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "prompt": "A white Siamese cat sitting on the windowsill",
  "model": "doubao-seedream-4-0-250828",
  "size": "1K"
}),
});

const result = await response.json();
console.log(result);
Please replace YOUR_API_TOKEN with the actual Token you obtained from the Ace Data Cloud platform.

Response Handling

It is recommended to check the response status code and handle errors:
if (response.ok) {
  const result = await response.json();
  console.log("Call succeeded:", result);
} else {
  console.error(`Call failed, status code: ${response.status}`);
  const error = await response.text();
  console.error(error);
}

Node.js Wrapper

It is recommended to encapsulate it as a reusable function:
async function callSeedream(data) {
  const response = await fetch("https://api.acedata.cloud/seedream/images", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.ACE_API_TOKEN}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify(data),
  });
  if (!response.ok) throw new Error(`API error: ${response.status}`);
  return response.json();
}

Error Handling

Common error codes:
Status CodeDescription
401Authentication failed, please check API Token
403Insufficient balance or no access rights
429Request rate limit exceeded
500Internal server error

Next Steps