Gambar

Dapatkan Status Gambar

Dapatkan status dan hasil dari tugas pembuatan gambar asinkron

GET
/v1/tasks/{id}

Parameter Path

idstringpathwajib

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.

idstring

Pengidentifikasi task.

poll_urlstring

URL polling yang diutamakan saat respons pembuatan menyediakannya.

createdinteger

Unix timestamp saat pembuatan.

task_idstring

Pengidentifikasi tugas.

statusstring

Status tugas: pending, processing, completed, atau failed.

dataarray

Array gambar yang dihasilkan (terisi saat status bernilai completed).

Setiap objek berisi:

  • url (string): URL dari gambar yang dihasilkan
  • revised_prompt (string): Revisi prompt opsional jika model yang dipilih mengembalikannya
errorstring | object

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
AuthorizationBearer <token>

Autentikasi API Key. Buat atau kelola API key di Dashboard > API > API Keys.

Lokasi: header

Parameter path

id*string

ID tugas asinkron yang dikembalikan oleh id / task_id, atau disematkan dalam poll_url

Respons

application/json

application/json

application/json

application/json