Flux
FLUX 이미지 결과 가져오기
최상위 ID로 네이티브 FLUX 이미지 작업을 폴링하고 상태가 Ready일 때 생성된 이미지 URL을 가져옵니다.
GET
/
flux
/
v1
/
get_result
cURL
curl "https://api.cometapi.com/flux/v1/get_result?id=<task_id>" \
-H "Authorization: Bearer $COMETAPI_KEY"
import os
import time
import requests
task_id = "<task_id>"
headers = {"Authorization": "Bearer " + os.environ["COMETAPI_KEY"]}
failure_statuses = {
"Error",
"Failed",
"Failure",
"Task not found",
"Request Moderated",
"Content Moderated",
"failed",
"failure",
}
for _ in range(60):
response = requests.get(
"https://api.cometapi.com/flux/v1/get_result",
params={"id": task_id},
headers=headers,
timeout=30,
)
response.raise_for_status()
task = response.json()
status = task.get("status")
print(status)
if status == "Ready":
print(task["result"]["sample"])
break
if status in failure_statuses:
raise RuntimeError(f"FLUX task failed: {status}")
time.sleep(5)
else:
raise TimeoutError("FLUX task did not finish in time")
const taskId = "<task_id>";
const headers = { Authorization: `Bearer ${process.env.COMETAPI_KEY}` };
const failureStatuses = new Set([
"Error",
"Failed",
"Failure",
"Task not found",
"Request Moderated",
"Content Moderated",
"failed",
"failure",
]);
for (let attempt = 0; attempt < 60; attempt += 1) {
const response = await fetch(
`https://api.cometapi.com/flux/v1/get_result?id=${encodeURIComponent(taskId)}`,
{ headers, signal: AbortSignal.timeout(30_000) },
);
if (!response.ok) throw new Error(await response.text());
const task = await response.json();
console.log(task.status);
if (task.status === "Ready") {
console.log(task.result.sample);
break;
}
if (failureStatuses.has(task.status)) {
throw new Error(`FLUX task failed: ${task.status}`);
}
if (attempt === 59) throw new Error("FLUX task did not finish in time");
await new Promise((resolve) => setTimeout(resolve, 5000));
}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cometapi.com/flux/v1/get_result",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.cometapi.com/flux/v1/get_result"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.cometapi.com/flux/v1/get_result")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cometapi.com/flux/v1/get_result")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<task_id>",
"status": "Pending",
"result": null
}
개요
최상위 작업id은 POST /flux/v1/\{model\}에서 반환되며, 이를 id 쿼리 매개변수로 전달하세요. 작업이 성공하거나 실패할 때까지 제한된 클라이언트 제한 시간 내에서 계속 폴링하세요.
| 상태 | 클라이언트 작업 |
|---|---|
Ready | result.sample을 확인한 후 즉시 이미지를 다운로드하거나 전송하세요. |
Error, Failed, 또는 Failure | 중지하고 작업 오류를 표시하세요. |
Task not found | 중지하세요. ID를 알 수 없거나 더 이상 사용할 수 없습니다. |
Request Moderated | 중지하세요. 요청이 모더레이션에 의해 거부되었습니다. |
Content Moderated | 중지하세요. 생성된 콘텐츠가 모더레이션에 의해 거부되었습니다. |
| 기타 모든 상태 | 클라이언트 제한 시간에 도달할 때까지 폴링을 계속하세요. |
sample, seed, prompt, start_time가 포함될 수 있습니다. 일부 필드는 생략될 수 있으므로 result.sample은 작업이 Ready 상태가 된 후에만 필수로 요구하세요.
result.sample 은 임시입니다. 제공업체 결과 URL을 영구적인 애플리케이션 자산으로 사용하지 마세요.인증
Bearer token authentication. Use your CometAPI key.
쿼리 매개변수
Top-level task ID returned by the FLUX create endpoint.
응답
200 - application/json
Current FLUX task state and, when ready, the generated image result.
FLUX task ID.
Task state. Ready is successful. Known failure states include Error, Failed, Failure, Task not found, Request Moderated, and Content Moderated.
Generation result. It can be null or omitted while the task is still running.
Show child attributes
Show child attributes
Task progress when returned.
Additional task details when returned.
Task preview data when returned.
마지막 수정일 2026년 7월 31일
⌘I
cURL
curl "https://api.cometapi.com/flux/v1/get_result?id=<task_id>" \
-H "Authorization: Bearer $COMETAPI_KEY"
import os
import time
import requests
task_id = "<task_id>"
headers = {"Authorization": "Bearer " + os.environ["COMETAPI_KEY"]}
failure_statuses = {
"Error",
"Failed",
"Failure",
"Task not found",
"Request Moderated",
"Content Moderated",
"failed",
"failure",
}
for _ in range(60):
response = requests.get(
"https://api.cometapi.com/flux/v1/get_result",
params={"id": task_id},
headers=headers,
timeout=30,
)
response.raise_for_status()
task = response.json()
status = task.get("status")
print(status)
if status == "Ready":
print(task["result"]["sample"])
break
if status in failure_statuses:
raise RuntimeError(f"FLUX task failed: {status}")
time.sleep(5)
else:
raise TimeoutError("FLUX task did not finish in time")
const taskId = "<task_id>";
const headers = { Authorization: `Bearer ${process.env.COMETAPI_KEY}` };
const failureStatuses = new Set([
"Error",
"Failed",
"Failure",
"Task not found",
"Request Moderated",
"Content Moderated",
"failed",
"failure",
]);
for (let attempt = 0; attempt < 60; attempt += 1) {
const response = await fetch(
`https://api.cometapi.com/flux/v1/get_result?id=${encodeURIComponent(taskId)}`,
{ headers, signal: AbortSignal.timeout(30_000) },
);
if (!response.ok) throw new Error(await response.text());
const task = await response.json();
console.log(task.status);
if (task.status === "Ready") {
console.log(task.result.sample);
break;
}
if (failureStatuses.has(task.status)) {
throw new Error(`FLUX task failed: ${task.status}`);
}
if (attempt === 59) throw new Error("FLUX task did not finish in time");
await new Promise((resolve) => setTimeout(resolve, 5000));
}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cometapi.com/flux/v1/get_result",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.cometapi.com/flux/v1/get_result"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.cometapi.com/flux/v1/get_result")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cometapi.com/flux/v1/get_result")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<task_id>",
"status": "Pending",
"result": null
}