Langsung ke konten utama

Documentation Index

Fetch the complete documentation index at: https://docs.tokenlab.sh/llms.txt

Use this file to discover all available pages before exploring further.

Parameter Path

id
string
wajib
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}.Jika tugas tidak lagi ada atau tidak dapat lagi diselesaikan melalui kontrak async-task publik, TokenLab mengembalikan async_task_not_found dengan pesan Task not found or no longer available.

Respons

created
integer
Unix timestamp saat pembuatan.
task_id
string
Pengidentifikasi tugas.
status
string
Status tugas: pending, processing, completed, atau failed.
data
array
Array gambar yang dihasilkan (terisi saat status bernilai completed).Setiap objek berisi:
  • url (string): URL dari gambar yang dihasilkan
  • revised_prompt (string): Prompt yang digunakan untuk pembuatan
error
string
Pesan kesalahan (hanya ada saat status bernilai failed).
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
  -H "Authorization: Bearer sk-your-api-key"
{
  "created": 1706000000,
  "id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "status": "pending",
  "data": [
    {
      "url": "",
      "revised_prompt": "a beautiful sunset over mountains"
    }
  ]
}

Praktik Terbaik Polling

Interval polling yang direkomendasikan: 3-5 detik. Sebagian besar tugas pembuatan gambar selesai dalam waktu 30-120 detik tergantung pada model dan jalur penyedia yang diarahkan.
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)
        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}")