Ana içeriğe atla

Yol Parametreleri

id
string
gerekli
İlk görüntü oluşturma isteğinden döndürülen görev kimliği (task ID).
Eğer oluşturma yanıtı poll_url içeriyorsa, yoklama (polling) için tam olarak bu URL’yi çağırmayı tercih edin. Bazı görüntü görevleri, görüntüye özel durum yolu yerine /v1/tasks/{id} altında bir poll_url sunabilir.ldtask_... gibi herkese açık görsel görev ID’lerini /v1/images/{id} üzerinden de sorgulayabilirsiniz. Bu uyumluluk alias’ı /v1/images/generations/{id} ile aynı yetkilendirme, ownership kontrolü, faturalama başlıkları, terminal snapshot’ları ve yanıt şeklini kullanır.Görev artık mevcut değilse veya genel görev kaydında artık bulunmuyorsa TokenLab Task not found or no longer available. mesajıyla async_task_not_found döndürür.

Yanıt

created
integer
Oluşturulma zamanının Unix zaman damgası.
task_id
string
Görev tanımlayıcı.
status
string
Görev durumu: pending, processing, completed veya failed.
data
array
Oluşturulan görüntülerin dizisi (status değeri completed olduğunda doldurulur).Her nesne şunları içerir:
  • url (string): Oluşturulan görüntünün URL’si
  • revised_prompt (string): Oluşturma için kullanılan istem (prompt)
error
string
Hata mesajı (yalnızca status değeri failed olduğunda mevcuttur).
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
  -H "Authorization: Bearer sk-your-api-key"
import requests

response = requests.get(
    "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
    headers={"Authorization": "Bearer sk-your-api-key"}
)

data = response.json()
print(f"Status: {data['status']}")

if data["status"] == "completed":
    print(f"Image URL: {data['data'][0]['url']}")
const response = await fetch(
  'https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
  {
    headers: {
      'Authorization': 'Bearer sk-your-api-key'
    }
  }
);

const data = await response.json();
console.log(`Status: ${data.status}`);

if (data.status === 'completed') {
  console.log(`Image URL: ${data.data[0].url}`);
}
{
  "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"
    }
  ]
}
{
  "created": 1706000000,
  "id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "status": "completed",
  "data": [
    {
      "url": "https://cdn.example.com/generated/image-abc123.png",
      "revised_prompt": "a beautiful sunset over mountains with vibrant orange and purple colors"
    }
  ]
}
{
  "created": 1706000000,
  "id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "status": "failed",
  "error": "Content policy violation",
  "data": []
}

Yoklama (Polling) İçin En İyi Uygulamalar

Önerilen yoklama aralığı: 3-5 saniye. Çoğu görüntü oluşturma görevi, modele ve yönlendirilen sağlayıcı yoluna bağlı olarak 30-120 saniye içinde tamamlanır.
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}")