TokenLab

비디오 및 자료

비디오 상태 가져오기

비디오 생성 작업의 상태와 결과를 가져옵니다

GET
/v1/tasks/{id}

경로 매개변수

idstringpath필수

비디오 생성 요청에서 반환된 작업 ID입니다. id와 task_id는 동일한 비동기 식별자로 취급하세요.

생성 응답이 poll_url을 반환하면 해당 URL을 정확히 호출하세요. 그것이 /v1/tasks/{id}를 가리킬 때, 이를 정식 고정 상태 엔드포인트로 간주하세요.

만료되었거나 사용할 수 없는 공개 작업은 404 async_task_not_found를 반환할 수 있습니다. 현재 API 키로 작업 소유권을 확인할 수 없으면 403 task_not_owned가 반환됩니다.

응답

결과, 오류, 타임스탬프, 모델 필드는 작업에서 제공될 때 반환됩니다.

idstring

정식 비동기 작업 식별자.

task_idstring

비동기 작업 식별자 별칭.

poll_urlstring

생성 응답에서 제공하는 경우 권장 폴링 URL입니다.

billing_transaction_idstring

정산이 이미 완료된 경우 반환되는 TokenLab 청구 거래 ID입니다. dashboard / 정산에 사용하는 거래 식별자이며 비동기 id / task_id 와는 별개입니다.

statusstring

작업 상태: pending, processing, completed, failed.

progressnumber

선택적 진행 값입니다. 실제 진행 값이 제공될 때만 반환됩니다. 완료 여부는 status 로 판단하세요.

video_urlstring

생성된 비디오의 URL(완료 시).

videoobject

사용 가능한 경우 url, duration, width, 및 height를 포함한 단일 비디오 페이로드.

videosarray

생성 작업이 여러 출력을 반환할 때의 다중 비디오 페이로드.

errorstring | object

오류 메시지(실패한 경우).

createdinteger

생성 타임스탬프.

updatedinteger

최종 업데이트 타임스탬프.

modelstring

작업에 사용된 모델.

요청

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

응답

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

폴링 모범 사례

  • 5-10초마다 폴링하세요
  • 장기 작업에는 지수 백오프를 구현하세요
  • 최대 타임아웃을 설정하세요(예: 10분)
  • failed 상태를 적절히 처리하세요
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")

인증

BearerAuth
AuthorizationBearer <token>

API 키 인증입니다. Dashboard > API > API Keys에서 API 키를 생성하거나 관리하십시오.

위치: header

경로 매개변수

id*string

id / task_id로 반환되거나 poll_url에 포함된 비동기 작업 ID입니다.

응답

application/json

application/json

application/json

application/json