curl --request POST \ --url https://aireiter.com/api/openapi/submit \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "model": "flux_3_klein", "params": { "prompt": "미래적인 전기 스포츠카가 현대적인 유리 건물 앞에 주차되어 있는 모습, 블루 아워, 젖은 노면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K", "output_n": "2" }, "out_task_id": "flux_3_klein_task_001" }'
curl --request POST \ --url https://aireiter.com/api/openapi/submit \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "model": "flux_3_klein", "params": { "prompt": "첫 번째 참조 이미지 속 제품 용기를 고급스러운 야간 광고 스타일로 변경, 병의 형태, 비율, 노즐, 투명 유리 구조 및 라벨 텍스트 유지, 제품 외관은 두 번째 이미지 참조, 배경과 조명은 세 번째 이미지 참조", "image_url": [ "https://example.com/product-original.png", "https://example.com/product-texture.png", "https://example.com/style-reference.png" ], "aspect_ratio": "16:9", "resolution": "1K", "output_n": "2" }, "out_task_id": "flux_3_klein_image_task_001" }'
import requestsurl = "https://aireiter.com/api/openapi/submit"payload = { "model": "flux_3_klein", "params": { "prompt": "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio": "16:9", "resolution": "1K", "output_n": "1" }, "out_task_id": "flux_3_klein_python_001"}headers = { "Authorization": "Bearer <token>", "Content-Type": "application/json"}response = requests.post(url, json=payload, headers=headers)print(response.json())
const response = await fetch("https://aireiter.com/api/openapi/submit", { method: "POST", headers: { Authorization: "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ model: "flux_3_klein", params: { prompt: "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", aspect_ratio: "16:9", resolution: "1K", output_n: "1" }, out_task_id: "flux_3_klein_javascript_001" })});console.log(await response.json());
package mainimport ( "bytes" "fmt" "io" "net/http")func main() { payload := []byte(`{ "model":"flux_3_klein", "params":{ "prompt":"시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio":"16:9", "resolution":"1K" }, "out_task_id":"flux_3_klein_go_001" }`) req, _ := http.NewRequest( http.MethodPost, "https://aireiter.com/api/openapi/submit", bytes.NewBuffer(payload), ) req.Header.Set("Authorization", "Bearer <token>") req.Header.Set("Content-Type", "application/json") response, err := http.DefaultClient.Do(req) if err != nil { panic(err) } defer response.Body.Close() body, _ := io.ReadAll(response.Body) fmt.Println(string(body))}
import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;public class Main { public static void main(String[] args) throws Exception { String payload = """ { "model": "flux_3_klein", "params": { "prompt": "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio": "16:9", "resolution": "1K" }, "out_task_id": "flux_3_klein_java_001" } """; HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://aireiter.com/api/openapi/submit")) .header("Authorization", "Bearer <token>") .header("Content-Type", "application/json") .POST(HttpRequest.BodyPublishers.ofString(payload)) .build(); HttpResponse<String> response = HttpClient.newHttpClient().send( request, HttpResponse.BodyHandlers.ofString() ); System.out.println(response.body()); }}
<?php$payload = [ "model" => "flux_3_klein", "params" => [ "prompt" => "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio" => "16:9", "resolution" => "1K" ], "out_task_id" => "flux_3_klein_php_001"];$ch = curl_init("https://aireiter.com/api/openapi/submit");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"]);echo curl_exec($ch);curl_close($ch);?>
require 'net/http'require 'json'require 'uri'url = URI("https://aireiter.com/api/openapi/submit")payload = { model: "flux_3_klein", params: { prompt: "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", aspect_ratio: "16:9", resolution: "2K" }, out_task_id: "flux_3_klein_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_jsonresponse = http.request(request)puts response.body
import Foundationlet url = URL(string: "https://aireiter.com/api/openapi/submit")!let payload: [String: Any] = [ "model": "flux_3_klein", "params": [ "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" ], "out_task_id": "flux_3_klein_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"": ""flux_3_klein"", ""params"": { ""prompt"": ""현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음"", ""aspect_ratio"": ""16:9"", ""resolution"": ""2K"" }, ""out_task_id"": ""flux_3_klein_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); }}
(* Requires cohttp and yojson libraries *)open Lwtopen Cohttpopen Cohttp_lwt_unixlet url = "https://aireiter.com/api/openapi/submit"let payload = {|{ "model": "flux_3_klein", "params": { "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" }, "out_task_id": "flux_3_klein_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": "flux_3_klein", "params": { "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" }, "out_task_id": "flux_3_klein_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 = "flux_3_klein", params = list( prompt = "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", aspect_ratio = "16:9", resolution = "2K" ), out_task_id = "flux_3_klein_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"))
{ "error": { "code": 401, "message": "인증에 실패했습니다. API 키를 확인해 주세요" }}
{ "error": { "code": 500, "message": "서버 내부 오류가 발생했습니다. 잠시 후 다시 시도해 주세요" }}
FLUX 3 Klein
FLUX 3 Klein 이미지 생성
비동기 처리 모드, 후속 조회를 위한 작업 ID 반환
Black Forest Labs가 2026년 10월 발표한 FLUX 3 Image 경량 오픈소스 가중치 버전(5.6B 파라미터), 빠른 이미지 편집에 특화되어 있으며 텍스트-투-이미지도 지원
텍스트-투-이미지 및 이미지-투-이미지 지원, image_url 전달 시 자동으로 이미지-투-이미지로 전환
최대 3장의 참조 이미지 지원, 첫 번째 이미지는 편집할 대상이며 나머지는 피사체, 상품 및 스타일 참조 제공
생성 전 프롬프트 자동 확장
7가지 주요 이미지 비율 지원
1K / 2K 해상도 옵션 지원, 1회 최대 4장 생성
제출된 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": "flux_3_klein", "params": { "prompt": "미래적인 전기 스포츠카가 현대적인 유리 건물 앞에 주차되어 있는 모습, 블루 아워, 젖은 노면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K", "output_n": "2" }, "out_task_id": "flux_3_klein_task_001" }'
curl --request POST \ --url https://aireiter.com/api/openapi/submit \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "model": "flux_3_klein", "params": { "prompt": "첫 번째 참조 이미지 속 제품 용기를 고급스러운 야간 광고 스타일로 변경, 병의 형태, 비율, 노즐, 투명 유리 구조 및 라벨 텍스트 유지, 제품 외관은 두 번째 이미지 참조, 배경과 조명은 세 번째 이미지 참조", "image_url": [ "https://example.com/product-original.png", "https://example.com/product-texture.png", "https://example.com/style-reference.png" ], "aspect_ratio": "16:9", "resolution": "1K", "output_n": "2" }, "out_task_id": "flux_3_klein_image_task_001" }'
import requestsurl = "https://aireiter.com/api/openapi/submit"payload = { "model": "flux_3_klein", "params": { "prompt": "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio": "16:9", "resolution": "1K", "output_n": "1" }, "out_task_id": "flux_3_klein_python_001"}headers = { "Authorization": "Bearer <token>", "Content-Type": "application/json"}response = requests.post(url, json=payload, headers=headers)print(response.json())
const response = await fetch("https://aireiter.com/api/openapi/submit", { method: "POST", headers: { Authorization: "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ model: "flux_3_klein", params: { prompt: "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", aspect_ratio: "16:9", resolution: "1K", output_n: "1" }, out_task_id: "flux_3_klein_javascript_001" })});console.log(await response.json());
package mainimport ( "bytes" "fmt" "io" "net/http")func main() { payload := []byte(`{ "model":"flux_3_klein", "params":{ "prompt":"시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio":"16:9", "resolution":"1K" }, "out_task_id":"flux_3_klein_go_001" }`) req, _ := http.NewRequest( http.MethodPost, "https://aireiter.com/api/openapi/submit", bytes.NewBuffer(payload), ) req.Header.Set("Authorization", "Bearer <token>") req.Header.Set("Content-Type", "application/json") response, err := http.DefaultClient.Do(req) if err != nil { panic(err) } defer response.Body.Close() body, _ := io.ReadAll(response.Body) fmt.Println(string(body))}
import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;public class Main { public static void main(String[] args) throws Exception { String payload = """ { "model": "flux_3_klein", "params": { "prompt": "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio": "16:9", "resolution": "1K" }, "out_task_id": "flux_3_klein_java_001" } """; HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://aireiter.com/api/openapi/submit")) .header("Authorization", "Bearer <token>") .header("Content-Type", "application/json") .POST(HttpRequest.BodyPublishers.ofString(payload)) .build(); HttpResponse<String> response = HttpClient.newHttpClient().send( request, HttpResponse.BodyHandlers.ofString() ); System.out.println(response.body()); }}
<?php$payload = [ "model" => "flux_3_klein", "params" => [ "prompt" => "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio" => "16:9", "resolution" => "1K" ], "out_task_id" => "flux_3_klein_php_001"];$ch = curl_init("https://aireiter.com/api/openapi/submit");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"]);echo curl_exec($ch);curl_close($ch);?>
require 'net/http'require 'json'require 'uri'url = URI("https://aireiter.com/api/openapi/submit")payload = { model: "flux_3_klein", params: { prompt: "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", aspect_ratio: "16:9", resolution: "2K" }, out_task_id: "flux_3_klein_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_jsonresponse = http.request(request)puts response.body
import Foundationlet url = URL(string: "https://aireiter.com/api/openapi/submit")!let payload: [String: Any] = [ "model": "flux_3_klein", "params": [ "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" ], "out_task_id": "flux_3_klein_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"": ""flux_3_klein"", ""params"": { ""prompt"": ""현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음"", ""aspect_ratio"": ""16:9"", ""resolution"": ""2K"" }, ""out_task_id"": ""flux_3_klein_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); }}
(* Requires cohttp and yojson libraries *)open Lwtopen Cohttpopen Cohttp_lwt_unixlet url = "https://aireiter.com/api/openapi/submit"let payload = {|{ "model": "flux_3_klein", "params": { "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" }, "out_task_id": "flux_3_klein_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": "flux_3_klein", "params": { "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" }, "out_task_id": "flux_3_klein_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 = "flux_3_klein", params = list( prompt = "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", aspect_ratio = "16:9", resolution = "2K" ), out_task_id = "flux_3_klein_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"))
작업 상태에는 pending, processing, completed 및 failed가 포함됩니다. 작업이 완료되면 결과 이미지는 data.output에 위치하며, 여러 장을 생성한 경우 여러 이미지 URL로 구성된 배열이 됩니다.
curl --request POST \ --url https://aireiter.com/api/openapi/submit \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "model": "flux_3_klein", "params": { "prompt": "미래적인 전기 스포츠카가 현대적인 유리 건물 앞에 주차되어 있는 모습, 블루 아워, 젖은 노면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K", "output_n": "2" }, "out_task_id": "flux_3_klein_task_001" }'
curl --request POST \ --url https://aireiter.com/api/openapi/submit \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "model": "flux_3_klein", "params": { "prompt": "첫 번째 참조 이미지 속 제품 용기를 고급스러운 야간 광고 스타일로 변경, 병의 형태, 비율, 노즐, 투명 유리 구조 및 라벨 텍스트 유지, 제품 외관은 두 번째 이미지 참조, 배경과 조명은 세 번째 이미지 참조", "image_url": [ "https://example.com/product-original.png", "https://example.com/product-texture.png", "https://example.com/style-reference.png" ], "aspect_ratio": "16:9", "resolution": "1K", "output_n": "2" }, "out_task_id": "flux_3_klein_image_task_001" }'
import requestsurl = "https://aireiter.com/api/openapi/submit"payload = { "model": "flux_3_klein", "params": { "prompt": "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio": "16:9", "resolution": "1K", "output_n": "1" }, "out_task_id": "flux_3_klein_python_001"}headers = { "Authorization": "Bearer <token>", "Content-Type": "application/json"}response = requests.post(url, json=payload, headers=headers)print(response.json())
const response = await fetch("https://aireiter.com/api/openapi/submit", { method: "POST", headers: { Authorization: "Bearer <token>", "Content-Type": "application/json" }, body: JSON.stringify({ model: "flux_3_klein", params: { prompt: "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", aspect_ratio: "16:9", resolution: "1K", output_n: "1" }, out_task_id: "flux_3_klein_javascript_001" })});console.log(await response.json());
package mainimport ( "bytes" "fmt" "io" "net/http")func main() { payload := []byte(`{ "model":"flux_3_klein", "params":{ "prompt":"시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio":"16:9", "resolution":"1K" }, "out_task_id":"flux_3_klein_go_001" }`) req, _ := http.NewRequest( http.MethodPost, "https://aireiter.com/api/openapi/submit", bytes.NewBuffer(payload), ) req.Header.Set("Authorization", "Bearer <token>") req.Header.Set("Content-Type", "application/json") response, err := http.DefaultClient.Do(req) if err != nil { panic(err) } defer response.Body.Close() body, _ := io.ReadAll(response.Body) fmt.Println(string(body))}
import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;public class Main { public static void main(String[] args) throws Exception { String payload = """ { "model": "flux_3_klein", "params": { "prompt": "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio": "16:9", "resolution": "1K" }, "out_task_id": "flux_3_klein_java_001" } """; HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://aireiter.com/api/openapi/submit")) .header("Authorization", "Bearer <token>") .header("Content-Type", "application/json") .POST(HttpRequest.BodyPublishers.ofString(payload)) .build(); HttpResponse<String> response = HttpClient.newHttpClient().send( request, HttpResponse.BodyHandlers.ofString() ); System.out.println(response.body()); }}
<?php$payload = [ "model" => "flux_3_klein", "params" => [ "prompt" => "시네마틱한 제품 광고 사진, 검은 석대 위에 놓인 유리 향수병, 사실적인 반사와 자연스러운 그림자", "aspect_ratio" => "16:9", "resolution" => "1K" ], "out_task_id" => "flux_3_klein_php_001"];$ch = curl_init("https://aireiter.com/api/openapi/submit");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"]);echo curl_exec($ch);curl_close($ch);?>
require 'net/http'require 'json'require 'uri'url = URI("https://aireiter.com/api/openapi/submit")payload = { model: "flux_3_klein", params: { prompt: "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", aspect_ratio: "16:9", resolution: "2K" }, out_task_id: "flux_3_klein_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_jsonresponse = http.request(request)puts response.body
import Foundationlet url = URL(string: "https://aireiter.com/api/openapi/submit")!let payload: [String: Any] = [ "model": "flux_3_klein", "params": [ "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" ], "out_task_id": "flux_3_klein_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"": ""flux_3_klein"", ""params"": { ""prompt"": ""현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음"", ""aspect_ratio"": ""16:9"", ""resolution"": ""2K"" }, ""out_task_id"": ""flux_3_klein_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); }}
(* Requires cohttp and yojson libraries *)open Lwtopen Cohttpopen Cohttp_lwt_unixlet url = "https://aireiter.com/api/openapi/submit"let payload = {|{ "model": "flux_3_klein", "params": { "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" }, "out_task_id": "flux_3_klein_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": "flux_3_klein", "params": { "prompt": "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", "aspect_ratio": "16:9", "resolution": "2K" }, "out_task_id": "flux_3_klein_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 = "flux_3_klein", params = list( prompt = "현대적인 유리 건물 앞에 주차된 미래지향적인 전기 스포츠카, 블루 아워, 젖은 지면에 반사되는 건물 조명, 상업용 자동차 사진, 사실적인 질감과 자연스러운 그림자, 텍스트 없음, 워터마크 없음", aspect_ratio = "16:9", resolution = "2K" ), out_task_id = "flux_3_klein_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"))