dokumentácia
API

Video a hudba

Markdown

Generovanie videí a hudby: požiadavka vytvorí úlohu, výsledok sa načíta pomocou jej identifikátora.

Úplný sprievodca
POSThttps://api.ailoot.ai/v1/videos
Video a hudba
# Uložte si Request ID: podpora ho používa na vyhľadanie vašej požiadavky.
# Úlohu vytvorte iba raz; cyklus nižšie iba zisťuje jej stav.
curl --fail-with-body --max-time 120 -D video-create-headers-v1.txt \
  https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"grok-imagine-video-1.5","prompt":"pokojné jazero","seconds":"8","size":"1280x720"}' \
  -o video-create-v1.json || exit 1
VIDEO_ID=$(jq -er '.id // .request_id' video-create-v1.json) || exit 1
VIDEO_STATUS=""
# Tento cyklus iba zisťuje stav pôvodnej úlohy. Požiadavku na vytvorenie nikdy neodosiela znova.
for ATTEMPT in $(seq 1 60); do
  curl --fail-with-body --max-time 30 \
    "https://api.ailoot.ai/v1/videos/$VIDEO_ID" \
    -H "Authorization: Bearer $AILOOT_API_KEY" \
    -o video-status-v1.json || exit 1
  VIDEO_STATUS=$(jq -r '.status // empty' video-status-v1.json)
  # result_pending_check: true (stav zostáva in_progress): výsledok sa overuje. Zastavte sa; úlohu nikdy nevytvárajte znova.
  if jq -e '.result_pending_check == true' video-status-v1.json >/dev/null; then
    cat video-status-v1.json
    echo "The result is being checked. Do not create the job again: check GET /v1/videos/$VIDEO_ID later or contact support with the Request ID." >&2
    exit 1
  fi
  case "$VIDEO_STATUS" in
    done|completed) break ;;
    queued|in_progress|pending|processing) sleep 5 ;;
    # failed alebo akýkoľvek iný stav: zobrazte ho a zastavte sa. Úlohu nikdy nevytvárajte znova.
    *) cat video-status-v1.json; exit 1 ;;
  esac
done
case "$VIDEO_STATUS" in
  done|completed) ;;
  *) echo "The job is not finished yet (status: ${VIDEO_STATUS:-none}). Check it later: GET /v1/videos/$VIDEO_ID" >&2; exit 1 ;;
esac
curl --fail-with-body --max-time 120 -L --max-redirs 3 \
  "https://api.ailoot.ai/v1/videos/$VIDEO_ID/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video-v1.mp4
# Po vypršaní časového limitu pri vytváraní skontrolujte Request ID v histórii používania, skôr než tento skript spustíte znova.
Odpoveď · skrátené
// Identifikátor úlohy je v poli id alebo request_id
{ "id": "…", … }

// Formát závisí od modelu: použite identifikátor
// z odpovede na vytvorenie bez úprav.

Autorizácia

  • Authorizationheaderpovinné

    Kľúč vo formáte Bearer sk-…. Možno použiť aj hlavičky x-api-key alebo x-goog-api-key.

Video: telo požiadavky

  • modelstringpovinné

    Video model: google/omni-1.1-flash, grok-imagine-video, happyhorse-1.1-t2v, MiniMax-Hailuo-2.3, grok-imagine-video-1.5, happyhorse-1.1-r2v, grok-imagine-video-1.5-preview, happyhorse-1.1-i2v.

  • promptstringpovinné

    Opis videa.

  • duration / secondsinteger / stringvoliteľné

    Závisí od rodiny modelov: Grok 1–15 sekúnd, MiniMax 6/10 pri 768P alebo 6 pri 1080P, HappyHorse 3–15; Google Omni 4/6/8/10. Pole jednej rodiny nepoužívajte pri inej.

  • resolution / sizestringvoliteľné

    Grok: 480p/720p/1080p (1080p pri video-1.5) alebo size 1280x720/720x1280/1920x1080/1080x1920. MiniMax: 768P/1080P. HappyHorse: 480P/720P/1080P. Google Omni: 360p/720p.

  • image / first_frame_image / image_urlsstring / arrayvoliteľné

    Polia zdrojových obrázkov závisia od rodiny a režimu. MiniMax Fast vyžaduje first_frame_image. HappyHorse t2v je bez images, i2v vyžaduje presne jeden obrázok bez ratio, r2v 1–9 obrázkov.

Odpoveď obsahuje identifikátor úlohy (pole id alebo request_id). Použite ho bez zmien a bez rozoberania: formát závisí od modelu. Stav a hotový súbor:

GEThttps://api.ailoot.ai/v1/videos/{id}
GEThttps://api.ailoot.ai/v1/videos/{id}/content

Rovnaké adresy fungujú aj s prefixom /v1/videos/generations/{id}. Stav dokončenej úlohy a polia odpovede závisia od modelu – riaďte sa poľom stavu a súbor načítajte cez /content.

Vytvorenie → stav → stiahnutie

Uložte odpoveď na vytvorenie a jej Request ID. Pri MiniMax/HappyHorse znamená dokončenie status: completed, odpoveď obsahuje content_url, data[] a usage. Pri Grok status: done s video.url. Google Omni vracia 202 queued, potom in_progress s Retry-After, completed alebo partial/content_revoked. Nepovažujte každú odpoveď 200 za hotové video. Ak odpoveď so stavom obsahuje result_pending_check: true (status je pritom in_progress), výsledok sa ešte overuje. Úlohu nevytvárajte znova – overte ju neskôr cez GET /v1/videos/{id} alebo napíšte podpore s Request ID.

/content môže vrátiť priamo MP4 alebo presmerovať na podpísaný súbor. Ak odpoveď obsahuje viac výsledkov v data[], uložte každý z nich: účtujú sa všetky doručené výsledky. Video úlohu nemožno cez API zrušiť ani odstrániť. Odstránenie hotového súboru zruší prístup k nemu, ale nezruší generovanie.

Účtuje sa za sekundy hotového videa vo vybranom rozlíšení alebo za video podľa údajov v katalógu. Plná cena sa rezervuje pri vytvorení úlohy.

Hudba

POSThttps://api.ailoot.ai/v1/music/generations
  • modelstringpovinné

    google/lyria, google/lyria-3-clip-preview.

  • promptstringpovinné

    Opis skladby: žáner, nástroje, nálada.

V odpovedi data[] – odkazy na hotové klipy. Model môže na jednu požiadavku vrátiť viac klipov; účtuje sa každý doručený klip.

Máte ďalšie otázky? Pošlite Request ID a opis problému – pomôžeme vám ho vyriešiť.Napísať podpore