curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}'
curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen_image_3",
"params": {
"prompt": "상품의 주체와 라벨 구조를 유지하고, 배경을 짙은 회색의 고급 광고 스튜디오로 바꾸며, 차가운 색조의 윤곽광을 추가하세요",
"image_url": ["https://example.com/product-reference.png"],
"resolution": "1K",
"aspect_ratio": "1:1",
"output_n": 1
},
"out_task_id": "qwen_image_3_edit_001"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": True,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}
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: "qwen_image_3",
params: {
prompt: "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution: "2K",
aspect_ratio: "16:9",
output_n: 1,
prompt_extend: true,
prompt_extend_mode: "agent"
},
out_task_id: "qwen_image_3_task_001"
};
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": "qwen_image_3",
"params": map[string]interface{}{
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent",
},
"out_task_id": "qwen_image_3_task_001",
}
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}
""";
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" => "qwen_image_3",
"params" => [
"prompt" => "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution" => "2K",
"aspect_ratio" => "16:9",
"output_n" => 1,
"prompt_extend" => true,
"prompt_extend_mode" => "agent"
],
"out_task_id" => "qwen_image_3_task_001"
];
$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: "qwen_image_3",
params: {
prompt: "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution: "2K",
aspect_ratio: "16:9",
output_n: 1,
prompt_extend: true,
prompt_extend_mode: "agent"
},
out_task_id: "qwen_image_3_task_001"
}
http = Net::HTTP.new(url.host, url.port)
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": "qwen_image_3",
"params": [
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
],
"out_task_id": "qwen_image_3_task_001"
]
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"": ""qwen_image_3"",
""params"": {
""prompt"": ""현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음"",
""resolution"": ""2K"",
""aspect_ratio"": ""16:9"",
""output_n"": 1,
""prompt_extend"": true,
""prompt_extend_mode"": ""agent""
},
""out_task_id"": ""qwen_image_3_task_001""
}";
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\":\"qwen_image_3\",\"params\":{\"prompt\":\"현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음\",\"resolution\":\"2K\",\"aspect_ratio\":\"16:9\",\"output_n\":1,\"prompt_extend\":true,\"prompt_extend_mode\":\"agent\"},\"out_task_id\":\"qwen_image_3_task_001\"}";
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": @"qwen_image_3",
@"params": @{
@"prompt": @"현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
@"resolution": @"2K",
@"aspect_ratio": @"16:9",
@"output_n": @1,
@"prompt_extend": @YES,
@"prompt_extend_mode": @"agent"
},
@"out_task_id": @"qwen_image_3_task_001"
};
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}|}
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
};
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 = "qwen_image_3",
params = list(
prompt = "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution = "2K",
aspect_ratio = "16:9",
output_n = 1,
prompt_extend = TRUE,
prompt_extend_mode = "agent"
),
out_task_id = "qwen_image_3_task_001"
)
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": "qwen_image_3_task_001",
"status": "pending",
"estimated_credits": 100,
"created_at": "2025-12-22T06:03:28.242Z"
}
}
{
"statusCode": 400,
"message": "요청 매개변수가 유효하지 않습니다",
"ok": false
}
{
"error": {
"code": 401,
"message": "인증 실패. API 키를 확인하세요"
}
}
{
"error": {
"code": 433,
"message": "계정 잔액이 부족합니다. 충전 후 다시 시도하세요"
}
}
{
"error": {
"code": 500,
"message": "서버 내부 오류입니다. 잠시 후 다시 시도하세요"
}
}
Qwen Image 3.0
Qwen Image 3.0 이미지 생성 및 편집
- 비동기 처리 모드이며, 후속 조회를 위한 작업 ID를 반환합니다
- 텍스트-이미지 생성과 이미지-이미지 생성은 지원되며, 참고 이미지를 전달하지 않으면 텍스트-이미지 생성으로 처리됩니다
- 최대 3장의 참고 이미지와 한 번에 1-6장의 이미지 생성을 지원합니다
- 1K / 2K 해상도와 7가지 일반적인 이미지 비율을 지원합니다
- 제출된 prompt는 플랫폼의 민감어 / 안전 검사를 거치며, 위반 콘텐츠는 직접 거부됩니다
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}'
curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen_image_3",
"params": {
"prompt": "상품의 주체와 라벨 구조를 유지하고, 배경을 짙은 회색의 고급 광고 스튜디오로 바꾸며, 차가운 색조의 윤곽광을 추가하세요",
"image_url": ["https://example.com/product-reference.png"],
"resolution": "1K",
"aspect_ratio": "1:1",
"output_n": 1
},
"out_task_id": "qwen_image_3_edit_001"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": True,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}
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: "qwen_image_3",
params: {
prompt: "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution: "2K",
aspect_ratio: "16:9",
output_n: 1,
prompt_extend: true,
prompt_extend_mode: "agent"
},
out_task_id: "qwen_image_3_task_001"
};
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": "qwen_image_3",
"params": map[string]interface{}{
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent",
},
"out_task_id": "qwen_image_3_task_001",
}
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}
""";
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" => "qwen_image_3",
"params" => [
"prompt" => "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution" => "2K",
"aspect_ratio" => "16:9",
"output_n" => 1,
"prompt_extend" => true,
"prompt_extend_mode" => "agent"
],
"out_task_id" => "qwen_image_3_task_001"
];
$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: "qwen_image_3",
params: {
prompt: "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution: "2K",
aspect_ratio: "16:9",
output_n: 1,
prompt_extend: true,
prompt_extend_mode: "agent"
},
out_task_id: "qwen_image_3_task_001"
}
http = Net::HTTP.new(url.host, url.port)
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": "qwen_image_3",
"params": [
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
],
"out_task_id": "qwen_image_3_task_001"
]
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"": ""qwen_image_3"",
""params"": {
""prompt"": ""현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음"",
""resolution"": ""2K"",
""aspect_ratio"": ""16:9"",
""output_n"": 1,
""prompt_extend"": true,
""prompt_extend_mode"": ""agent""
},
""out_task_id"": ""qwen_image_3_task_001""
}";
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\":\"qwen_image_3\",\"params\":{\"prompt\":\"현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음\",\"resolution\":\"2K\",\"aspect_ratio\":\"16:9\",\"output_n\":1,\"prompt_extend\":true,\"prompt_extend_mode\":\"agent\"},\"out_task_id\":\"qwen_image_3_task_001\"}";
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": @"qwen_image_3",
@"params": @{
@"prompt": @"현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
@"resolution": @"2K",
@"aspect_ratio": @"16:9",
@"output_n": @1,
@"prompt_extend": @YES,
@"prompt_extend_mode": @"agent"
},
@"out_task_id": @"qwen_image_3_task_001"
};
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}|}
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
};
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 = "qwen_image_3",
params = list(
prompt = "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution = "2K",
aspect_ratio = "16:9",
output_n = 1,
prompt_extend = TRUE,
prompt_extend_mode = "agent"
),
out_task_id = "qwen_image_3_task_001"
)
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": "qwen_image_3_task_001",
"status": "pending",
"estimated_credits": 100,
"created_at": "2025-12-22T06: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를 가져온 후, 요청 헤더에 다음을 추가하세요:
Authorization: Bearer YOUR_API_KEY
Body
string
필수
Model name, fixed value:
"qwen_image_3".object
필수
Model parameter object.
표시 params Object Properties
표시 params Object Properties
string
필수
Image generation or editing instructions. Supports Chinese and English.It is recommended to clearly describe the subject, scene, composition, lighting, materials, text content, and the parts in the reference image that need to be kept or modified.
string[]
Reference image array. When passed in, image-to-image mode is used; when omitted, text-to-image mode is used.
- Up to 3 reference images
- Maximum 10MB per image
- Supports jpeg, png, webp
- Supports publicly accessible URLs or complete Base64 Data URIs
The image URL must be directly accessible from the public internet and cannot rely on login status, cookies, or temporary page authorization.
string
기본값:"1K"
Output resolution tier.
1K- Basic resolution (default)2K- High-definition resolution
string
기본값:"1:1"
Output image aspect ratio.Supported values:
1:1- Square (default)3:2/2:3- Classic landscape / portrait4:3/3:4- Standard landscape / portrait16:9/9:16- Widescreen landscape / portrait
integer
기본값:"1"
Number of images generated by this task, ranging from
1 to 6.boolean
기본값:"false"
Intelligent prompt rewriting. Disabled by default to keep results predictable. Set to
true when intelligent rewriting is needed.string
기본값:"direct"
Prompt rewriting mode. Takes effect only when
prompt_extend is true.direct- Balanced rewriting, supports both text-to-image and image-to-imageagent- Aggressive rewriting, supports text-to-image only
string
Negative prompt, used to describe content that you do not want to appear in the result, such as blur, distortion, or incorrect text.
string
필수
Caller-defined task ID, used for idempotent submission and result querying.
- Length is 1-64 characters
- It is recommended to use only letters, numbers, underscores, and hyphens
- Do not reuse the same one under the same API Key
Response
string
호출자 작업 ID로, 작업 상태와 결과를 조회하는 데 사용할 수 있습니다.
string
초기 상태이며, 일반적으로
"pending"입니다.string
작업 생성 시간, ISO 8601 형식입니다.
쿼리 결과
제출에 성공한 후, 동일한out_task_id를 사용하여 쿼리 인터페이스를 호출하세요:
curl --request POST \
--url https://aireiter.com/api/openapi/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"out_task_id": "qwen_image_3_task_001"
}'
pending, processing, completed, failed가 포함됩니다. 작업이 완료되면 이미지 배열은 data.output에 있습니다.
curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}'
curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen_image_3",
"params": {
"prompt": "상품의 주체와 라벨 구조를 유지하고, 배경을 짙은 회색의 고급 광고 스튜디오로 바꾸며, 차가운 색조의 윤곽광을 추가하세요",
"image_url": ["https://example.com/product-reference.png"],
"resolution": "1K",
"aspect_ratio": "1:1",
"output_n": 1
},
"out_task_id": "qwen_image_3_edit_001"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": True,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}
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: "qwen_image_3",
params: {
prompt: "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution: "2K",
aspect_ratio: "16:9",
output_n: 1,
prompt_extend: true,
prompt_extend_mode: "agent"
},
out_task_id: "qwen_image_3_task_001"
};
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": "qwen_image_3",
"params": map[string]interface{}{
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent",
},
"out_task_id": "qwen_image_3_task_001",
}
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}
""";
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" => "qwen_image_3",
"params" => [
"prompt" => "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution" => "2K",
"aspect_ratio" => "16:9",
"output_n" => 1,
"prompt_extend" => true,
"prompt_extend_mode" => "agent"
],
"out_task_id" => "qwen_image_3_task_001"
];
$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: "qwen_image_3",
params: {
prompt: "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution: "2K",
aspect_ratio: "16:9",
output_n: 1,
prompt_extend: true,
prompt_extend_mode: "agent"
},
out_task_id: "qwen_image_3_task_001"
}
http = Net::HTTP.new(url.host, url.port)
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": "qwen_image_3",
"params": [
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
],
"out_task_id": "qwen_image_3_task_001"
]
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"": ""qwen_image_3"",
""params"": {
""prompt"": ""현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음"",
""resolution"": ""2K"",
""aspect_ratio"": ""16:9"",
""output_n"": 1,
""prompt_extend"": true,
""prompt_extend_mode"": ""agent""
},
""out_task_id"": ""qwen_image_3_task_001""
}";
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\":\"qwen_image_3\",\"params\":{\"prompt\":\"현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음\",\"resolution\":\"2K\",\"aspect_ratio\":\"16:9\",\"output_n\":1,\"prompt_extend\":true,\"prompt_extend_mode\":\"agent\"},\"out_task_id\":\"qwen_image_3_task_001\"}";
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": @"qwen_image_3",
@"params": @{
@"prompt": @"현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
@"resolution": @"2K",
@"aspect_ratio": @"16:9",
@"output_n": @1,
@"prompt_extend": @YES,
@"prompt_extend_mode": @"agent"
},
@"out_task_id": @"qwen_image_3_task_001"
};
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
}|}
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": "qwen_image_3",
"params": {
"prompt": "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
"resolution": "2K",
"aspect_ratio": "16:9",
"output_n": 1,
"prompt_extend": true,
"prompt_extend_mode": "agent"
},
"out_task_id": "qwen_image_3_task_001"
};
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 = "qwen_image_3",
params = list(
prompt = "현대적인 유리 건물 앞의 미래감 있는 전기 스포츠카, 블루 아워, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음",
resolution = "2K",
aspect_ratio = "16:9",
output_n = 1,
prompt_extend = TRUE,
prompt_extend_mode = "agent"
),
out_task_id = "qwen_image_3_task_001"
)
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": "qwen_image_3_task_001",
"status": "pending",
"estimated_credits": 100,
"created_at": "2025-12-22T06:03:28.242Z"
}
}
{
"statusCode": 400,
"message": "요청 매개변수가 유효하지 않습니다",
"ok": false
}
{
"error": {
"code": 401,
"message": "인증 실패. API 키를 확인하세요"
}
}
{
"error": {
"code": 433,
"message": "계정 잔액이 부족합니다. 충전 후 다시 시도하세요"
}
}
{
"error": {
"code": 500,
"message": "서버 내부 오류입니다. 잠시 후 다시 시도하세요"
}
}