curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"out_task_id": "my_task_123456"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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: "krea_2_turbo",
params: {
prompt: "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio: "16:9",
resolution: "2K"
},
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": "krea_2_turbo",
"params": map[string]interface{}{
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K",
},
"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": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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" => "krea_2_turbo",
"params" => [
"prompt" => "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio" => "16:9",
"resolution" => "2K"
],
"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: "krea_2_turbo",
params: {
prompt: "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio: "16:9",
resolution: "2K"
},
out_task_id: "my_task_123456"
}
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": "krea_2_turbo",
"params": [
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
] as [String: Any],
"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"": ""krea_2_turbo"",
""params"": {
""prompt"": ""창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일"",
""aspect_ratio"": ""16:9"",
""resolution"": ""2K""
},
""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\":\"krea_2_turbo\","
"\"params\":{"
"\"prompt\":\"창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일\","
"\"aspect_ratio\":\"16:9\","
"\"resolution\":\"2K\""
"},"
"\"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": @"krea_2_turbo",
@"params": @{
@"prompt": @"창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
@"aspect_ratio": @"16:9",
@"resolution": @"2K"
},
@"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": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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': 'krea_2_turbo',
'params': {
'prompt': '창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일',
'aspect_ratio': '16:9',
'resolution': '2K'
},
'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 = "krea_2_turbo",
params = list(
prompt = "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio = "16:9",
resolution = "2K"
),
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",
"estimated_credits": 0.871,
"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": "서버 내부 오류입니다. 잠시 후 다시 시도하세요"
}
}
Krea 2 Turbo
Krea 2 Turbo 이미지 생성
- 비동기 처리 모드, 후속 조회를 위한 작업 ID 반환
- 초고속 텍스트-이미지 생성, 속도와 영화급 화질에 맞게 최적화
- 1K 및 2K 해상도, 11가지 가로세로 비율 지원; 텍스트-이미지만 지원
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": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"out_task_id": "my_task_123456"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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: "krea_2_turbo",
params: {
prompt: "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio: "16:9",
resolution: "2K"
},
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": "krea_2_turbo",
"params": map[string]interface{}{
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K",
},
"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": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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" => "krea_2_turbo",
"params" => [
"prompt" => "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio" => "16:9",
"resolution" => "2K"
],
"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: "krea_2_turbo",
params: {
prompt: "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio: "16:9",
resolution: "2K"
},
out_task_id: "my_task_123456"
}
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": "krea_2_turbo",
"params": [
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
] as [String: Any],
"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"": ""krea_2_turbo"",
""params"": {
""prompt"": ""창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일"",
""aspect_ratio"": ""16:9"",
""resolution"": ""2K""
},
""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\":\"krea_2_turbo\","
"\"params\":{"
"\"prompt\":\"창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일\","
"\"aspect_ratio\":\"16:9\","
"\"resolution\":\"2K\""
"},"
"\"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": @"krea_2_turbo",
@"params": @{
@"prompt": @"창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
@"aspect_ratio": @"16:9",
@"resolution": @"2K"
},
@"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": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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': 'krea_2_turbo',
'params': {
'prompt': '창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일',
'aspect_ratio': '16:9',
'resolution': '2K'
},
'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 = "krea_2_turbo",
params = list(
prompt = "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio = "16:9",
resolution = "2K"
),
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",
"estimated_credits": 0.871,
"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
필수
모든 인터페이스는 인증에 Bearer Token을 사용해야 합니다API Key 가져오기:API Key 관리 페이지에 접속하여 API Key를 가져오세요사용할 때 요청 헤더에 다음을 추가하세요:
Authorization: Bearer YOUR_API_KEY
Body
string
필수
모델 이름고정값:
"krea_2_turbo"object
필수
모델 파라미터 객체
표시 params 객체 속성
표시 params 객체 속성
string
필수
이미지 생성을 위한 텍스트 설명영어 프롬프트가 가장 효과적이며, 최대 640 tokens
string
이미지 생성의 가로세로 비율지원되는 가로세로 비율(총 11개):
1:1- 정사각형4:3- 가로 4:33:4- 세로 3:45:4- 가로 5:44:5- 세로 4:53:2- 가로 3:22:3- 세로 2:316:9- 가로 와이드스크린9:16- 세로 세로형2:1- 파노라마1:2- 세로로 긴 형태
string
기본값:"1K"
이미지 해상도지원되는 해상도:
1K- 1K 해상도(기본)2K- 2K 해상도
integer
선택 사항. 재현 가능한 생성을 위한 랜덤 시드범위는 0-1048576입니다. 생략하거나 0을 전달하면 무작위로 생성됩니다
string
작업 완료 후의 콜백 주소
object
사용자 정의 메타데이터, 원본 그대로 반환
string
필수
요청 측 작업 ID사용자가 정의한 작업 식별자, 필수
Response
string
요청자 작업 ID, 결과 조회에 사용할 수 있습니다
string
초기 상태,
"pending"으로 고정됩니다number
예상 소모 포인트
string
생성 시간(ISO 형식)
curl --request POST \
--url https://aireiter.com/api/openapi/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"out_task_id": "my_task_123456"
}'
import requests
url = "https://aireiter.com/api/openapi/submit"
payload = {
"model": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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: "krea_2_turbo",
params: {
prompt: "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio: "16:9",
resolution: "2K"
},
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": "krea_2_turbo",
"params": map[string]interface{}{
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K",
},
"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": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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" => "krea_2_turbo",
"params" => [
"prompt" => "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio" => "16:9",
"resolution" => "2K"
],
"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: "krea_2_turbo",
params: {
prompt: "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio: "16:9",
resolution: "2K"
},
out_task_id: "my_task_123456"
}
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": "krea_2_turbo",
"params": [
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
] as [String: Any],
"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"": ""krea_2_turbo"",
""params"": {
""prompt"": ""창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일"",
""aspect_ratio"": ""16:9"",
""resolution"": ""2K""
},
""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\":\"krea_2_turbo\","
"\"params\":{"
"\"prompt\":\"창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일\","
"\"aspect_ratio\":\"16:9\","
"\"resolution\":\"2K\""
"},"
"\"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": @"krea_2_turbo",
@"params": @{
@"prompt": @"창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
@"aspect_ratio": @"16:9",
@"resolution": @"2K"
},
@"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": "krea_2_turbo",
"params": {
"prompt": "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
"aspect_ratio": "16:9",
"resolution": "2K"
},
"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': 'krea_2_turbo',
'params': {
'prompt': '창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일',
'aspect_ratio': '16:9',
'resolution': '2K'
},
'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 = "krea_2_turbo",
params = list(
prompt = "창턱에 앉아 있는 주황색 고양이, 창밖은 도쿄의 야경, 사이버펑크 스타일",
aspect_ratio = "16:9",
resolution = "2K"
),
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",
"estimated_credits": 0.871,
"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": "서버 내부 오류입니다. 잠시 후 다시 시도하세요"
}
}