Gambar
Dapatkan Status Gambar
Dapatkan status dan hasil dari tugas pembuatan gambar asinkron
Parameter Path
ID tugas yang dikembalikan dari permintaan pembuatan gambar awal.
Jika respons pembuatan menyertakan poll_url, lebih baik panggil URL tersebut untuk polling. Beberapa tugas gambar mungkin menampilkan poll_url di bawah /v1/tasks/{id} alih-alih path status khusus gambar.
Kamu juga dapat melakukan polling ID tugas gambar publik seperti ldtask_... melalui /v1/images/{id}. Alias kompatibilitas ini memakai otorisasi, pemeriksaan ownership, header billing, snapshot terminal, dan bentuk respons yang sama dengan /v1/images/generations/{id}.
Task publik yang kedaluwarsa atau tidak tersedia dapat mengembalikan 404 async_task_not_found. Jika kepemilikan task untuk API key saat ini tidak dapat dipastikan, responsnya adalah 403 task_not_owned.
Respons
Field hasil, error, timestamp, dan model dikembalikan jika tersedia untuk task.
Pengidentifikasi task.
URL polling yang diutamakan saat respons pembuatan menyediakannya.
Unix timestamp saat pembuatan.
Pengidentifikasi tugas.
Status tugas: pending, processing, completed, atau failed.
Array gambar yang dihasilkan (terisi saat status bernilai completed).
Setiap objek berisi:
url(string): URL dari gambar yang dihasilkanrevised_prompt(string): Revisi prompt opsional jika model yang dipilih mengembalikannya
Pesan kesalahan (hanya ada saat status bernilai failed).
Permintaan
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
-H "Authorization: Bearer sk-your-api-key"Respons
{
"created": 1706000000,
"id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"status": "pending",
"data": []
}Praktik Terbaik Polling
Periksa setiap 3–5 detik saat status pending atau processing, dan berhenti pada completed atau failed.
import requests
import time
def poll_image_task(task_id, api_key, max_wait=300, interval=3):
"""Poll for image generation result with timeout."""
url = f"https://api.tokenlab.sh/v1/tasks/{task_id}"
headers = {"Authorization": f"Bearer {api_key}"}
start_time = time.time()
while time.time() - start_time < max_wait:
response = requests.get(url, headers=headers, timeout=30)
response.raise_for_status()
data = response.json()
if data["status"] == "completed":
return data["data"][0]["url"]
elif data["status"] == "failed":
raise Exception(data.get("error", "Generation failed"))
time.sleep(interval)
raise TimeoutError(f"Task {task_id} did not complete within {max_wait}s")
# Usage
image_url = poll_image_task("ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "sk-your-api-key")
print(f"Generated image: {image_url}")Otorisasi
BearerAuth Autentikasi API Key. Buat atau kelola API key di Dashboard > API > API Keys.
Lokasi: header
Parameter path
ID tugas asinkron yang dikembalikan oleh id / task_id, atau disematkan dalam poll_url
Respons
application/json
application/json
application/json
application/json