Asenkron işler

Görev Durumunu Al

Create endpoint'leri tarafından döndürülen `poll_url` kullanılarak herhangi bir async görevin durumunu ve sonucunu alın

GET
/v1/tasks/{id}

Genel Bakış

Video, görsel, müzik ve 3D üretimi gibi görev türleri arasında birleşik async polling için bu endpoint'i kullanın.

Bir create yanıtı poll_url içeriyorsa, tam olarak o path'i çağırın. Daha yeni async workflow'lar için poll_url, /v1/tasks/{id} adresini işaret edebilir.

Path Parametreleri

idstringpathzorunlu

Create isteğinden döndürülen görev kimliği.

Yanıt

Sonuç, hata, zaman damgası ve model alanları görev için mevcut olduğunda döndürülür.

idstring

Görev tanımlayıcısı.

task_idstring

Asenkron görev kimliği takma adı.

poll_urlstring

Oluşturma yanıtı sağladığında tercih edilen yoklama URL’si.

statusstring

Görev durumu: pending, processing, completed veya failed. İptal edilen görevler failed ve cancelled: true olarak temsil edilir.

cancelledboolean

Kuyruktaki bir asenkron görev yürütülmeden önce iptal edildiyse true.

cancellation_statusstring

İptal işareti. İptal başarılı olduğunda cancelled olarak bulunur.

dataarray

Tamamlanan görüntü görevleri için oluşturulan görüntü sonuçları burada döndürülür. Görüntü görevleri URL’leri data[].url içinde döndürür.

progressnumber

İsteğe bağlı ilerleme değeri. Yalnızca gerçek bir ilerleme değeri varsa döner; tamamlanmayı belirlemek için status kullanın.

video_urlstring

Görev tamamlandığında ve bir video ürettiğinde sonuç varlığının URL'si.

videoobject

Mevcutsa url, duration, width ve height içeren tek video nesnesi.

videosarray

Üretim görevi birden fazla çıktı döndürdüğünde video dizisi görünebilir.

createdinteger

Oluşturulma zaman damgası.

updatedinteger

Son güncelleme zaman damgası.

modelstring

Görevde kullanılan model.

errorstring | object

Görev başarısız olduğunda hata mesajı.

Hata Davranışı

Süresi dolmuş veya kullanılamayan bir görev 404 async_task_not_found döndürebilir. Geçerli API anahtarının görev sahipliği doğrulanamazsa yanıt 403 task_not_owned olur.

{
  "error": {
    "message": "Task not found or no longer available.",
    "type": "invalid_request_error",
    "code": "async_task_not_found"
  }
}

Örnekler

İstek

cURL
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
  -H "Authorization: Bearer sk-your-api-key"
Python
import requests

poll_url = "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
response = requests.get(
    f"https://api.tokenlab.sh{poll_url}",
    headers={"Authorization": "Bearer sk-your-api-key"},
)
print(response.json())
JavaScript
const pollUrl = '/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
const response = await fetch(`https://api.tokenlab.sh${pollUrl}`, {
  headers: { Authorization: 'Bearer sk-your-api-key' },
});
console.log(await response.json());
{  "id": "string",  "status": "pending",  "progress": 0,  "created": 0,  "updated": 0,  "model": "string",  "video": {    "url": "string",    "duration": 0,    "width": 0,    "height": 0  },  "error": "string",  "error_details": {    "projection_version": 0,    "status": 400,    "message": "string",    "type": "string",    "code": "string",    "param": "string",    "retryable": true,    "upstream": {      "source": "string",      "code": "string",      "message": "string",      "param": "string"    }  },  "task_id": "string",  "poll_url": "string",  "cancelled": true,  "cancellation_status": "cancelled",  "billing_transaction_id": "string",  "video_url": "string",  "videos": [    {}  ],  "data": [    {}  ],  "audio_url": "string",  "title": "string",  "lyrics": "string",  "model_url": "string",  "glb_url": "string",  "fbx_url": "string"}

Yetkilendirme

BearerAuth
AuthorizationBearer <token>

API Anahtarı kimlik doğrulaması. API anahtarlarını Dashboard > API > API Keys bölümünden oluşturun veya yönetin.

Konum: header

Yol parametreleri

id*string

id / task_id tarafından döndürülen veya poll_url içine gömülü olan asenkron görev kimliği

Yanıt

application/json

application/json

application/json

application/json