curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://aireiter.com/api/openapi/submit";
const payload = {
model: "seedream_v5_flash",
params: {
prompt: "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url: [
"https://example.com/product.png"
],
aspect_ratio: "16:9",
resolution: "2K",
output_format: "png"
},
out_task_id: "my_task_123456"
};
const headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://aireiter.com/api/openapi/submit"
payload := map[string]interface{}{
"model": "seedream_v5_flash",
"params": map[string]interface{}{
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": []string{
"https://example.com/product.png",
},
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png",
},
"out_task_id": "my_task_123456",
}
jsonData, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class Main {
public static void main(String[] args) throws Exception {
String url = "https://aireiter.com/api/openapi/submit";
String payload = """
{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}
""";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
<?php
$url = "https://aireiter.com/api/openapi/submit";
$payload = [
"model" => "seedream_v5_flash",
"params" => [
"prompt" => "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url" => [
"https://example.com/product.png"
],
"aspect_ratio" => "16:9",
"resolution" => "2K",
"output_format" => "png"
],
"out_task_id" => "my_task_123456"
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer <token>",
"Content-Type: application/json"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
require 'net/http'
require 'json'
require 'uri'
url = URI("https://aireiter.com/api/openapi/submit")
payload = {
model: "seedream_v5_flash",
params: {
prompt: "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url: [
"https://example.com/product.png"
],
aspect_ratio: "16:9",
resolution: "2K",
output_format: "png"
},
out_task_id: "my_task_123456"
}
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer <token>"
request["Content-Type"] = "application/json"
request.body = payload.to_json
response = http.request(request)
puts response.body
import Foundation
let url = URL(string: "https://aireiter.com/api/openapi/submit")!
let payload: [String: Any] = [
"model": "seedream_v5_flash",
"params": [
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
],
"out_task_id": "my_task_123456"
]
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer <token>", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpBody = try? JSONSerialization.data(withJSONObject: payload)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let error = error {
print("Error: \(error)")
return
}
if let data = data, let responseString = String(data: data, encoding: .utf8) {
print(responseString)
}
}
task.resume()
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var url = "https://aireiter.com/api/openapi/submit";
var payload = @"{
""model"": ""seedream_v5_flash"",
""params"": {
""prompt"": ""Replace the background with a sunlit marble kitchen counter, keep the product unchanged"",
""image_url"": [
""https://example.com/product.png""
],
""aspect_ratio"": ""16:9"",
""resolution"": ""2K"",
""output_format"": ""png""
},
""out_task_id"": ""my_task_123456""
}";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer <token>");
var content = new StringContent(payload, Encoding.UTF8, "application/json");
var response = await client.PostAsync(url, content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
#include <stdio.h>
#include <curl/curl.h>
int main(void) {
CURL *curl;
CURLcode res;
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if(curl) {
const char *url = "https://aireiter.com/api/openapi/submit";
const char *payload = "{\"model\":\"seedream_v5_flash\",\"params\":{\"prompt\":\"Replace the background with a sunlit marble kitchen counter, keep the product unchanged\",\"image_url\":[\"https://example.com/product.png\"],\"aspect_ratio\":\"16:9\",\"resolution\":\"2K\",\"output_format\":\"png\"},\"out_task_id\":\"my_task_123456\"}";
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, payload);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n",
curl_easy_strerror(res));
}
curl_slist_free_all(headers);
curl_easy_cleanup(curl);
}
curl_global_cleanup();
return 0;
}
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSURL *url = [NSURL URLWithString:@"https://aireiter.com/api/openapi/submit"];
NSDictionary *payload = @{
@"model": @"seedream_v5_flash",
@"params": @{
@"prompt": @"Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
@"image_url": @[@"https://example.com/product.png"],
@"aspect_ratio": @"16:9",
@"resolution": @"2K",
@"output_format": @"png"
},
@"out_task_id": @"my_task_123456"
};
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:payload
options:0
error:&error];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:@"Bearer <token>" forHTTPHeaderField:@"Authorization"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:jsonData];
NSURLSessionDataTask *task = [[NSURLSession sharedSession]
dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"Error: %@", error);
return;
}
NSString *result = [[NSString alloc] initWithData:data
encoding:NSUTF8StringEncoding];
NSLog(@"%@", result);
}];
[task resume];
[[NSRunLoop mainRunLoop] run];
}
return 0;
}
(* Requires cohttp and yojson libraries *)
open Lwt
open Cohttp
open Cohttp_lwt_unix
let url = "https://aireiter.com/api/openapi/submit"
let payload = {|{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}|}
let () =
let headers = Header.init ()
|> fun h -> Header.add h "Authorization" "Bearer <token>"
|> fun h -> Header.add h "Content-Type" "application/json"
in
let body = Cohttp_lwt.Body.of_string payload in
let response = Client.post ~headers ~body (Uri.of_string url) >>= fun (resp, body) ->
body |> Cohttp_lwt.Body.to_string >|= fun body_str ->
print_endline body_str
in
Lwt_main.run response
import 'dart:convert';
import 'package:http/http.dart' as http;
void main() async {
final url = Uri.parse('https://aireiter.com/api/openapi/submit');
final payload = {
'model': 'seedream_v5_flash',
'params': {
'prompt': 'Replace the background with a sunlit marble kitchen counter, keep the product unchanged',
'image_url': [
'https://example.com/product.png'
],
'aspect_ratio': '16:9',
'resolution': '2K',
'output_format': 'png'
},
'out_task_id': 'my_task_123456'
};
final response = await http.post(
url,
headers: {
'Authorization': 'Bearer <token>',
'Content-Type': 'application/json'
},
body: jsonEncode(payload),
);
print(response.body);
}
library(httr)
library(jsonlite)
url <- "https://aireiter.com/api/openapi/submit"
payload <- list(
model = "seedream_v5_flash",
params = list(
prompt = "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url = c(
"https://example.com/product.png"
),
aspect_ratio = "16:9",
resolution = "2K",
output_format = "png"
),
out_task_id = "my_task_123456"
)
response <- POST(
url,
add_headers(
Authorization = "Bearer <token>",
`Content-Type` = "application/json"
),
body = toJSON(payload, auto_unbox = TRUE),
encode = "raw"
)
cat(content(response, "text"))
{
"statusCode": 200,
"message": "",
"data": {
"out_task_id": "my_task_123456",
"status": "pending",
"created_at": "2026-10-16T06:03:28.242Z"
}
}
{
"statusCode": 400,
"message": "요청 매개변수가 잘못되었습니다",
"ok": false
}
{
"error": {
"code": 401,
"message": "인증에 실패했습니다. API 키를 확인해 주세요"
}
}
{
"error": {
"code": 433,
"message": "계정 잔액이 부족합니다. 충전 후 다시 시도해 주세요"
}
}
{
"error": {
"code": 500,
"message": "서버 내부 오류가 발생했습니다. 잠시 후 다시 시도해 주세요"
}
}
Seedream 5.0 Flash
Seedream 5.0 Flash 이미지 생성
- 비동기 처리 모드, 후속 조회를 위한 작업 ID 반환
- Seedream 5.0 시리즈 중 속도가 더 빠르고 비용이 더 저렴한 버전으로, 고빈도 대량 이미지 생성에 적합
- 동일 모델로 텍스트 투 이미지 및 이미지 투 이미지 지원: 참조 이미지를 전달하지 않으면 텍스트 투 이미지, 1–10장의 참조 이미지를 전달하면 이미지 투 이미지
- 1K / 1.5K / 2K 3단계 해상도, 8가지 화면비, JPEG 또는 PNG 출력
POST
/
api
/
openapi
/
submit
curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://aireiter.com/api/openapi/submit";
const payload = {
model: "seedream_v5_flash",
params: {
prompt: "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url: [
"https://example.com/product.png"
],
aspect_ratio: "16:9",
resolution: "2K",
output_format: "png"
},
out_task_id: "my_task_123456"
};
const headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://aireiter.com/api/openapi/submit"
payload := map[string]interface{}{
"model": "seedream_v5_flash",
"params": map[string]interface{}{
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": []string{
"https://example.com/product.png",
},
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png",
},
"out_task_id": "my_task_123456",
}
jsonData, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class Main {
public static void main(String[] args) throws Exception {
String url = "https://aireiter.com/api/openapi/submit";
String payload = """
{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}
""";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
<?php
$url = "https://aireiter.com/api/openapi/submit";
$payload = [
"model" => "seedream_v5_flash",
"params" => [
"prompt" => "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url" => [
"https://example.com/product.png"
],
"aspect_ratio" => "16:9",
"resolution" => "2K",
"output_format" => "png"
],
"out_task_id" => "my_task_123456"
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer <token>",
"Content-Type: application/json"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
require 'net/http'
require 'json'
require 'uri'
url = URI("https://aireiter.com/api/openapi/submit")
payload = {
model: "seedream_v5_flash",
params: {
prompt: "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url: [
"https://example.com/product.png"
],
aspect_ratio: "16:9",
resolution: "2K",
output_format: "png"
},
out_task_id: "my_task_123456"
}
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer <token>"
request["Content-Type"] = "application/json"
request.body = payload.to_json
response = http.request(request)
puts response.body
import Foundation
let url = URL(string: "https://aireiter.com/api/openapi/submit")!
let payload: [String: Any] = [
"model": "seedream_v5_flash",
"params": [
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
],
"out_task_id": "my_task_123456"
]
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer <token>", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpBody = try? JSONSerialization.data(withJSONObject: payload)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let error = error {
print("Error: \(error)")
return
}
if let data = data, let responseString = String(data: data, encoding: .utf8) {
print(responseString)
}
}
task.resume()
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var url = "https://aireiter.com/api/openapi/submit";
var payload = @"{
""model"": ""seedream_v5_flash"",
""params"": {
""prompt"": ""Replace the background with a sunlit marble kitchen counter, keep the product unchanged"",
""image_url"": [
""https://example.com/product.png""
],
""aspect_ratio"": ""16:9"",
""resolution"": ""2K"",
""output_format"": ""png""
},
""out_task_id"": ""my_task_123456""
}";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer <token>");
var content = new StringContent(payload, Encoding.UTF8, "application/json");
var response = await client.PostAsync(url, content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
#include <stdio.h>
#include <curl/curl.h>
int main(void) {
CURL *curl;
CURLcode res;
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if(curl) {
const char *url = "https://aireiter.com/api/openapi/submit";
const char *payload = "{\"model\":\"seedream_v5_flash\",\"params\":{\"prompt\":\"Replace the background with a sunlit marble kitchen counter, keep the product unchanged\",\"image_url\":[\"https://example.com/product.png\"],\"aspect_ratio\":\"16:9\",\"resolution\":\"2K\",\"output_format\":\"png\"},\"out_task_id\":\"my_task_123456\"}";
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, payload);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n",
curl_easy_strerror(res));
}
curl_slist_free_all(headers);
curl_easy_cleanup(curl);
}
curl_global_cleanup();
return 0;
}
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSURL *url = [NSURL URLWithString:@"https://aireiter.com/api/openapi/submit"];
NSDictionary *payload = @{
@"model": @"seedream_v5_flash",
@"params": @{
@"prompt": @"Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
@"image_url": @[@"https://example.com/product.png"],
@"aspect_ratio": @"16:9",
@"resolution": @"2K",
@"output_format": @"png"
},
@"out_task_id": @"my_task_123456"
};
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:payload
options:0
error:&error];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:@"Bearer <token>" forHTTPHeaderField:@"Authorization"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:jsonData];
NSURLSessionDataTask *task = [[NSURLSession sharedSession]
dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"Error: %@", error);
return;
}
NSString *result = [[NSString alloc] initWithData:data
encoding:NSUTF8StringEncoding];
NSLog(@"%@", result);
}];
[task resume];
[[NSRunLoop mainRunLoop] run];
}
return 0;
}
(* Requires cohttp and yojson libraries *)
open Lwt
open Cohttp
open Cohttp_lwt_unix
let url = "https://aireiter.com/api/openapi/submit"
let payload = {|{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}|}
let () =
let headers = Header.init ()
|> fun h -> Header.add h "Authorization" "Bearer <token>"
|> fun h -> Header.add h "Content-Type" "application/json"
in
let body = Cohttp_lwt.Body.of_string payload in
let response = Client.post ~headers ~body (Uri.of_string url) >>= fun (resp, body) ->
body |> Cohttp_lwt.Body.to_string >|= fun body_str ->
print_endline body_str
in
Lwt_main.run response
import 'dart:convert';
import 'package:http/http.dart' as http;
void main() async {
final url = Uri.parse('https://aireiter.com/api/openapi/submit');
final payload = {
'model': 'seedream_v5_flash',
'params': {
'prompt': 'Replace the background with a sunlit marble kitchen counter, keep the product unchanged',
'image_url': [
'https://example.com/product.png'
],
'aspect_ratio': '16:9',
'resolution': '2K',
'output_format': 'png'
},
'out_task_id': 'my_task_123456'
};
final response = await http.post(
url,
headers: {
'Authorization': 'Bearer <token>',
'Content-Type': 'application/json'
},
body: jsonEncode(payload),
);
print(response.body);
}
library(httr)
library(jsonlite)
url <- "https://aireiter.com/api/openapi/submit"
payload <- list(
model = "seedream_v5_flash",
params = list(
prompt = "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url = c(
"https://example.com/product.png"
),
aspect_ratio = "16:9",
resolution = "2K",
output_format = "png"
),
out_task_id = "my_task_123456"
)
response <- POST(
url,
add_headers(
Authorization = "Bearer <token>",
`Content-Type` = "application/json"
),
body = toJSON(payload, auto_unbox = TRUE),
encode = "raw"
)
cat(content(response, "text"))
{
"statusCode": 200,
"message": "",
"data": {
"out_task_id": "my_task_123456",
"status": "pending",
"created_at": "2026-10-16T06:03:28.242Z"
}
}
{
"statusCode": 400,
"message": "요청 매개변수가 잘못되었습니다",
"ok": false
}
{
"error": {
"code": 401,
"message": "인증에 실패했습니다. API 키를 확인해 주세요"
}
}
{
"error": {
"code": 433,
"message": "계정 잔액이 부족합니다. 충전 후 다시 시도해 주세요"
}
}
{
"error": {
"code": 500,
"message": "서버 내부 오류가 발생했습니다. 잠시 후 다시 시도해 주세요"
}
}
Authorizations
string
필수
모든 API는 Bearer Token을 통한 인증이 필요합니다API Key 받기:API Key 관리 페이지에 접속하여 API Key를 확인하세요사용 시 요청 헤더에 추가:
Authorization: Bearer YOUR_API_KEY
Body
string
필수
모델 이름고정값:
"seedream_v5_flash"object
필수
모델 파라미터 객체
표시 params 객체 속성
표시 params 객체 속성
string
필수
이미지 생성을 위한 텍스트 설명입니다. 참조 이미지를 전달할 경우, 참조 이미지에 적용할 수정 사항이나 병합 방식을 설명합니다.
- 참조 이미지에 박스 선택, 화살표, 좌표 등의 마킹으로 수정 위치를 지정하고 프롬프트에 설명하는 방식을 지원합니다.
- 다국어 텍스트 렌더링을 지원합니다.
string | string[]
참조 이미지로, 이미지 투 이미지(편집, 병합, 스타일 변환)에 사용됩니다.
- 미전달 시: 텍스트 투 이미지
- 1~10장 전달 시: 이미지 투 이미지, 여러 장일 경우 배열 형태로 전달
- 지원하는 이미지 형식: jpeg, png, webp, 장당 30MB 이하
- 다음 두 가지 형식을 지원합니다:
- 공개적으로 접근 가능한 URL
- Base64 인코딩 형식
- 반드시 완전한 Data URI 형식을 사용해야 합니다:
data:image/{형식};base64,{base64 데이터} - 예시:
data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABg... - ⚠️ 주의: 반드시
data:image/jpeg;base64,접두사 부분을 포함해야 하며, Base64 이미지 크기는 10MB를 초과할 수 없습니다.
- 반드시 완전한 Data URI 형식을 사용해야 합니다:
string
기본값:"1:1"
출력 이미지의 가로세로 비율
1:1- 정사각형(기본값)4:3- 가로 4:33:4- 세로 3:416:9- 가로 와이드스크린9:16- 세로 화면3:2- 가로 3:22:3- 세로 2:321:9- 울트라 와이드스크린
string
기본값:"2K"
출력 해상도 옵션
1K- 1K 해상도1.5K- 1.5K 해상도2K- 2K 해상도(기본값)
string
기본값:"jpeg"
출력 이미지 형식
jpeg- JPEG(기본값)png- PNG
string
작업 완료 후의 콜백 URL
object
사용자 지정 메타데이터, 원본 그대로 반환됩니다.
string
필수
요청자 작업 ID사용자 지정 작업 식별자, 필수 항목
Response
string
요청 측 작업 ID, 결과 조회에 사용 가능
string
초기 상태,
"pending"으로 고정string
생성 시간(ISO 형식)
data.output에 생성된 이미지 1장이 포함됩니다.
curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://aireiter.com/api/openapi/submit";
const payload = {
model: "seedream_v5_flash",
params: {
prompt: "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url: [
"https://example.com/product.png"
],
aspect_ratio: "16:9",
resolution: "2K",
output_format: "png"
},
out_task_id: "my_task_123456"
};
const headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://aireiter.com/api/openapi/submit"
payload := map[string]interface{}{
"model": "seedream_v5_flash",
"params": map[string]interface{}{
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": []string{
"https://example.com/product.png",
},
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png",
},
"out_task_id": "my_task_123456",
}
jsonData, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class Main {
public static void main(String[] args) throws Exception {
String url = "https://aireiter.com/api/openapi/submit";
String payload = """
{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}
""";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
<?php
$url = "https://aireiter.com/api/openapi/submit";
$payload = [
"model" => "seedream_v5_flash",
"params" => [
"prompt" => "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url" => [
"https://example.com/product.png"
],
"aspect_ratio" => "16:9",
"resolution" => "2K",
"output_format" => "png"
],
"out_task_id" => "my_task_123456"
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer <token>",
"Content-Type: application/json"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
require 'net/http'
require 'json'
require 'uri'
url = URI("https://aireiter.com/api/openapi/submit")
payload = {
model: "seedream_v5_flash",
params: {
prompt: "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url: [
"https://example.com/product.png"
],
aspect_ratio: "16:9",
resolution: "2K",
output_format: "png"
},
out_task_id: "my_task_123456"
}
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer <token>"
request["Content-Type"] = "application/json"
request.body = payload.to_json
response = http.request(request)
puts response.body
import Foundation
let url = URL(string: "https://aireiter.com/api/openapi/submit")!
let payload: [String: Any] = [
"model": "seedream_v5_flash",
"params": [
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
],
"out_task_id": "my_task_123456"
]
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer <token>", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpBody = try? JSONSerialization.data(withJSONObject: payload)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let error = error {
print("Error: \(error)")
return
}
if let data = data, let responseString = String(data: data, encoding: .utf8) {
print(responseString)
}
}
task.resume()
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var url = "https://aireiter.com/api/openapi/submit";
var payload = @"{
""model"": ""seedream_v5_flash"",
""params"": {
""prompt"": ""Replace the background with a sunlit marble kitchen counter, keep the product unchanged"",
""image_url"": [
""https://example.com/product.png""
],
""aspect_ratio"": ""16:9"",
""resolution"": ""2K"",
""output_format"": ""png""
},
""out_task_id"": ""my_task_123456""
}";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer <token>");
var content = new StringContent(payload, Encoding.UTF8, "application/json");
var response = await client.PostAsync(url, content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
#include <stdio.h>
#include <curl/curl.h>
int main(void) {
CURL *curl;
CURLcode res;
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if(curl) {
const char *url = "https://aireiter.com/api/openapi/submit";
const char *payload = "{\"model\":\"seedream_v5_flash\",\"params\":{\"prompt\":\"Replace the background with a sunlit marble kitchen counter, keep the product unchanged\",\"image_url\":[\"https://example.com/product.png\"],\"aspect_ratio\":\"16:9\",\"resolution\":\"2K\",\"output_format\":\"png\"},\"out_task_id\":\"my_task_123456\"}";
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, payload);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n",
curl_easy_strerror(res));
}
curl_slist_free_all(headers);
curl_easy_cleanup(curl);
}
curl_global_cleanup();
return 0;
}
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSURL *url = [NSURL URLWithString:@"https://aireiter.com/api/openapi/submit"];
NSDictionary *payload = @{
@"model": @"seedream_v5_flash",
@"params": @{
@"prompt": @"Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
@"image_url": @[@"https://example.com/product.png"],
@"aspect_ratio": @"16:9",
@"resolution": @"2K",
@"output_format": @"png"
},
@"out_task_id": @"my_task_123456"
};
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:payload
options:0
error:&error];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:@"Bearer <token>" forHTTPHeaderField:@"Authorization"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:jsonData];
NSURLSessionDataTask *task = [[NSURLSession sharedSession]
dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"Error: %@", error);
return;
}
NSString *result = [[NSString alloc] initWithData:data
encoding:NSUTF8StringEncoding];
NSLog(@"%@", result);
}];
[task resume];
[[NSRunLoop mainRunLoop] run];
}
return 0;
}
(* Requires cohttp and yojson libraries *)
open Lwt
open Cohttp
open Cohttp_lwt_unix
let url = "https://aireiter.com/api/openapi/submit"
let payload = {|{
"model": "seedream_v5_flash",
"params": {
"prompt": "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
"image_url": [
"https://example.com/product.png"
],
"aspect_ratio": "16:9",
"resolution": "2K",
"output_format": "png"
},
"out_task_id": "my_task_123456"
}|}
let () =
let headers = Header.init ()
|> fun h -> Header.add h "Authorization" "Bearer <token>"
|> fun h -> Header.add h "Content-Type" "application/json"
in
let body = Cohttp_lwt.Body.of_string payload in
let response = Client.post ~headers ~body (Uri.of_string url) >>= fun (resp, body) ->
body |> Cohttp_lwt.Body.to_string >|= fun body_str ->
print_endline body_str
in
Lwt_main.run response
import 'dart:convert';
import 'package:http/http.dart' as http;
void main() async {
final url = Uri.parse('https://aireiter.com/api/openapi/submit');
final payload = {
'model': 'seedream_v5_flash',
'params': {
'prompt': 'Replace the background with a sunlit marble kitchen counter, keep the product unchanged',
'image_url': [
'https://example.com/product.png'
],
'aspect_ratio': '16:9',
'resolution': '2K',
'output_format': 'png'
},
'out_task_id': 'my_task_123456'
};
final response = await http.post(
url,
headers: {
'Authorization': 'Bearer <token>',
'Content-Type': 'application/json'
},
body: jsonEncode(payload),
);
print(response.body);
}
library(httr)
library(jsonlite)
url <- "https://aireiter.com/api/openapi/submit"
payload <- list(
model = "seedream_v5_flash",
params = list(
prompt = "Replace the background with a sunlit marble kitchen counter, keep the product unchanged",
image_url = c(
"https://example.com/product.png"
),
aspect_ratio = "16:9",
resolution = "2K",
output_format = "png"
),
out_task_id = "my_task_123456"
)
response <- POST(
url,
add_headers(
Authorization = "Bearer <token>",
`Content-Type` = "application/json"
),
body = toJSON(payload, auto_unbox = TRUE),
encode = "raw"
)
cat(content(response, "text"))
{
"statusCode": 200,
"message": "",
"data": {
"out_task_id": "my_task_123456",
"status": "pending",
"created_at": "2026-10-16T06:03:28.242Z"
}
}
{
"statusCode": 400,
"message": "요청 매개변수가 잘못되었습니다",
"ok": false
}
{
"error": {
"code": 401,
"message": "인증에 실패했습니다. API 키를 확인해 주세요"
}
}
{
"error": {
"code": 433,
"message": "계정 잔액이 부족합니다. 충전 후 다시 시도해 주세요"
}
}
{
"error": {
"code": 500,
"message": "서버 내부 오류가 발생했습니다. 잠시 후 다시 시도해 주세요"
}
}
查询任务结果
작업 제출 후,status가 completed 또는 failed가 될 때까지 POST /api/openapi/query API를 통해 작업 상태를 폴링합니다.
curl --request POST \
--url https://aireiter.com/api/openapi/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"out_task_id": "my_task_123456"
}'
{
"statusCode": 200,
"message": "",
"data": {
"out_task_id": "my_task_123456",
"status": "completed",
"created_at": "2026-10-16T06:03:28.000Z",
"completed_at": "2026-10-16T06:04:31.000Z",
"output": [
{
"url": "https://static.aireiter.com/upload/example/seedream-v5-flash-output.png"
}
]
}
}
결과 이미지 URL은 임시 저장이므로, 즉시 다운로드하여 자체 스토리지에 저장해 주시기 바랍니다.