TokenLab

Video & tư liệu

Lấy trạng thái video

Truy xuất trạng thái và kết quả của một tác vụ tạo video

GET
/v1/tasks/{id}

Tham số đường dẫn

idstringpathbắt buộc

ID tác vụ trả về từ yêu cầu tạo video. Xem id và task_id là cùng một định danh không đồng bộ (async).

Nếu phản hồi create trả về poll_url, hãy gọi đúng URL đó. Khi nó trỏ tới /v1/tasks/{id}, hãy coi đó là endpoint trạng thái cố định chuẩn.

Tác vụ công khai đã hết hạn hoặc không khả dụng có thể trả 404 async_task_not_found. Nếu không xác nhận được quyền sở hữu cho API key hiện tại, phản hồi là 403 task_not_owned.

Phản hồi

Các trường kết quả, lỗi, thời gian và model được trả về khi tác vụ cung cấp chúng.

idstring

Định danh tác vụ async chuẩn.

task_idstring

Bí danh định danh tác vụ async.

poll_urlstring

URL ưu tiên để thăm dò khi phản hồi tạo cung cấp.

billing_transaction_idstring

ID giao dịch billing của TokenLab khi việc settlement đã hoàn tất. Đây là mã giao dịch dùng cho dashboard/đối soát và tách biệt với id / task_id bất đồng bộ.

statusstring

Trạng thái tác vụ: pending, processing, completed, failed.

progressnumber

Giá trị tiến độ tùy chọn. Chỉ được trả về khi có giá trị tiến độ thực; hãy dùng status để xác định khi tác vụ hoàn tất.

video_urlstring

URL của video đã tạo (khi hoàn thành).

videoobject

Payload video đơn với url, duration, width, và height khi có.

videosarray

Nhiều payload video khi tác vụ tạo trả về hơn một kết quả.

errorstring | object

Thông báo lỗi (nếu thất bại).

createdinteger

Dấu thời gian tạo.

updatedinteger

Dấu thời gian cập nhật cuối cùng.

modelstring

Mô hình được sử dụng cho tác vụ.

Yêu cầu

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

Phản hồi

{
  "id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "status": "pending",
  "model": "veo3.1",
  "created": 1706000000,
  "updated": 1706000000
}

Thực hành tốt nhất khi thăm dò

  • Thăm dò (poll) mỗi 5-10 giây
  • Triển khai exponential backoff cho các tác vụ chạy lâu
  • Đặt thời gian chờ tối đa (ví dụ: 10 phút)
  • Xử lý trạng thái failed một cách phù hợp
import requests
import time

def wait_for_video(task_id, max_wait=600, interval=5):
    """Wait for video with timeout."""
    start = time.time()

    while time.time() - start < max_wait:
        response = requests.get(
            f"https://api.tokenlab.sh/v1/tasks/{task_id}",
            headers={"Authorization": "Bearer sk-your-api-key"}
        )
        response.raise_for_status()
        data = response.json()

        if data["status"] == "completed":
            return data["video_url"]
        elif data["status"] == "failed":
            raise Exception(data.get("error", "Video generation failed"))

        time.sleep(interval)

    raise TimeoutError("Video generation timed out")

Xác thực

BearerAuth
AuthorizationBearer <token>

Xác thực bằng Khóa API. Tạo hoặc quản lý khóa API trong Dashboard > API > API Keys.

Vị trí: header

Tham số đường dẫn

id*string

ID tác vụ async được trả về bởi id / task_id, hoặc được nhúng trong poll_url

Phản hồi

application/json

application/json

application/json

application/json