Flux
FLUX 画像結果を取得
ネイティブ FLUX 画像タスクを最上位 ID でポーリングし、ステータスが 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
}