Przejdź do głównej treści
GET
/
v1
/
videos
/
{id}
cURL
curl https://api.cometapi.com/v1/videos/<TASK_ID> \
  -H "Authorization: Bearer <COMETAPI_KEY>"
{ "id": "task_abc123", "model": "doubao-seedance-2-0-fast", "object": "video", "status": "IN_PROGRESS", "progress": 45, "created_at": 1776567610, "completed_at": null }
Użyj tego endpointu, aby odczytać stan zadania utworzonego za pomocą Create a Seedance video. id w ścieżce to wartość zwrócona przez wywołanie tworzące, niezależnie od tego, który model Seedance wygenerował zadanie.

Maszyna stanów

Zadanie przechodzi przez jeden z poniższych stanów. SUBMITTED i IN_PROGRESS są stanami nieterminalnymi; SUCCESS, FAILED i ERROR są terminalne i zadanie nie zmieni już stanu.
StatusZnaczenieTerminalny
SUBMITTEDZaakceptowane i dodane do kolejki renderowania.nie
IN_PROGRESSRenderowanie w toku.nie
SUCCESSZakończone. video_url jest obecny w odpowiedzi.tak
FAILEDDostawca odrzucił zadanie.tak
ERRORWewnętrzny błąd uniemożliwił ukończenie.tak

Częstotliwość odpytywania

Odpytuj co 10 do 20 sekund. Większość zadań kończy się w ciągu 1 do 3 minut w zależności od modelu, czasu trwania i rozdzielczości.
import time
import requests

TASK_ID = "<TASK_ID>"
headers = {"Authorization": "Bearer <COMETAPI_KEY>"}
TERMINAL = {"SUCCESS", "FAILED", "ERROR"}

while True:
    response = requests.get(
        f"https://api.cometapi.com/v1/videos/{TASK_ID}",
        headers=headers,
        timeout=15,
    )
    response.raise_for_status()
    data = response.json()
    if data["status"] in TERMINAL:
        print(data.get("video_url"))
        break
    time.sleep(10)

Pola do monitorowania

  • status — określa warunek zatrzymania dla pętli odpytywania.
  • progress — liczba całkowita od 0 do 100, którą możesz wyświetlić w interfejsie użytkownika.
  • video_url — podpisany URL pobierania, obecny tylko przy SUCCESS. Podpis jest ograniczony czasowo; pobierz plik lub hostuj go ponownie, zanim podpis wygaśnie.
  • completed_at — znacznik czasu Unix uzupełniany, gdy zadanie osiągnie status terminalny.
  • model — zwraca id modelu Seedance użytego podczas tworzenia zadania.

Typowe błędy

  • HTTP 400 z message: "task_not_exist" oznacza, że id jest nieznane. Potwierdź, że zapisano id z poprawnej odpowiedzi POST /v1/videos i że używasz go dokładnie w tej postaci.
  • HTTP 401 oznacza, że token bearer nie został podany lub jest nieprawidłowy. Sprawdź, czy nagłówek żądania to Authorization: Bearer <COMETAPI_KEY>.

Autoryzacje

Authorization
string
header
wymagane

Bearer token authentication. Use your CometAPI key.

Parametry ścieżki

id
string
wymagane

Task id returned by POST /v1/videos.

Odpowiedź

Current task state.

id
string
wymagane

Task id.

object
string
wymagane

Object type, always video.

model
string
wymagane

Model id that generated the task.

status
enum<string>
wymagane

Task status. SUBMITTED and IN_PROGRESS are non-terminal. SUCCESS, FAILED, and ERROR are terminal.

Dostępne opcje:
SUBMITTED,
IN_PROGRESS,
SUCCESS,
FAILED,
ERROR
progress
integer
wymagane

Completion percentage.

Wymagany zakres: 0 <= x <= 100
created_at
integer
wymagane

Task creation time as a Unix timestamp in seconds.

video_url
string | null

Signed download URL for the finished video. Present only when status is SUCCESS. The signature is time-limited, so download or re-upload the file to your own storage soon after you receive it.

completed_at
integer | null

Task completion time as a Unix timestamp in seconds. null while the task is non-terminal.