Skip to main content
Flux Videos API używa POST /flux/videos do generowania wideo, generowania wideo z obrazów klatek kluczowych, kontynuacji wideo i ulepszania szkiców. action=generate (domyślnie), mode wybiera tryb generowania; do zapytań o wyniki jednolicie używany jest istniejący POST /flux/tasks.
Obecnie w wersji Beta. Generowanie wideo z tekstu, generowanie wideo z obrazów, kontynuacja wideo i ulepszanie szkiców są dostępne. HTTP 200 i ID zadania oznaczają jedynie przyjęcie zadania, należy kontynuować zapytania o wynik końcowy.

1. Uzyskiwanie API Token

  1. Zarejestruj się lub zaloguj w konsoli Ace Data Cloud, utwórz aplikację i uzyskaj API Token. Jeden uniwersalny API Token może wywoływać usługi platformy; upewnij się, że aplikacja ma uprawnienia do wywoływania usługi Flux oraz dostępne saldo.
  2. Na stronie usługi Flux sprawdź plany oraz ceny poszczególnych operacji. Gdy saldo jest niewystarczające, doładuj je na stronie salda konsoli.
  3. Żądania używają Authorization: Bearer <twój Token>. Token powinien być przechowywany w zmiennych środowiskowych po stronie serwera; nie zapisuj go na stronach frontendowych, w publicznych repozytoriach, zrzutach ekranu ani adresach URL callbacków.
Uzyskiwanie API Token w konsoli Kod w tym artykule jednolicie odczytuje zmienną środowiskową:
Pełne pola i debugowanie online znajdziesz w Flux Videos API, a zapytania o zadania w Flux Tasks API.

2. Wybór operacji i danych wejściowych

Model generowania to flux-3, a action to generate (domyślnie). Za pomocą mode wybiera się generowanie wideo z tekstu, generowanie wideo z obrazów, kontynuację wideo lub ulepszanie szkicu.

Wspólne parametry generowania

Adres URL materiału musi być dostępny dla usługi. W przypadku tymczasowego podpisanego adresu URL należy zapewnić wystarczający okres ważności na pobranie i przetworzenie. Nie używaj adresu strony internetowej jako adresu pliku obrazu lub wideo.

3. Generowanie wideo z tekstu: pełne przetestowane żądanie i wynik

Poniższe żądanie zostało pomyślnie wykonane w interfejsie produkcyjnym przed zmianą cen 2026-10-02. Pominięcie action zweryfikowało domyślne zachowanie generowania; async=true pozwala uniknąć długiego oczekiwania na połączenie HTTP.
Odpowiedź przyjęcia (rzeczywiste ID zadania):
Zapisz task_id z własnej odpowiedzi i kontynuuj zapytania; nie używaj ID zadania z przykładu w dokumentacji do zapytań o wyniki innych kont.
Pole response zwracane przez zapytanie o zadanie zawiera końcowy wynik biznesowy. Poniżej znajduje się pomyślny response z tego testu, z pominięciem zewnętrznych metadanych zadania. Adres URL wideo w dokumentacji został zastąpiony kopią tego samego pliku w długoterminowym przykładowym CDN (SHA-256 jest zgodne); rzeczywiste wywołanie zwróci własny adres URL wyniku dla tego zadania:
Zobacz rzeczywisty film z tego testu。Kontrola multimediów potwierdza, że wynikiem jest plik MP4 o rozdzielczości 1280×704, 24 fps i długości 5.041667 sekundy, o rozmiarze 2,607,276 bajtów. To jest historyczny rzeczywisty test sprzed zmiany cen: list_amount=2.9871876975 Credits, konto miało wówczas 10% rabatu na konsumpcję, a rzeczywiste amount=2.68846892775 Credits. Nowa cena z 2026-10-02 została obniżona o około 6.33%; ten sam szkic o długości 5.041667 sekundy kosztuje według aktualnej ceny 2.798125185 Credits (przed rabatem na konsumpcję), a przy nadal obowiązującym 10% rabacie na konsumpcję — 2.5183126665 Credits. Rozliczenia historycznych zadań nie są przeliczane ponownie. Plany i rabaty dla innych kont mogą się różnić; nie jest to stała cena w dolarach dla wszystkich użytkowników.

4. Obraz do wideo: zwykłe i z klatkami kluczowymi z czasem

Poniżej znajdują się przykłady parametrów, wymagające zastąpienia adresów URL materiałów; nie stanowią one deklaracji, że ten przykład został już pomyślnie wykonany. Po zakończeniu generowania wykonaj zapytanie zgodnie z powyższym procesem; struktura wyniku jest taka sama. Dla jednego lub dwóch obrazów użyj zwykłej tablicy:
Przy określaniu momentów klatek kluczowych użyj par [liczba sekund, URL obrazu]:
Dozwolonych jest 1–10 klatek kluczowych. Tablica z czasem musi być uporządkowana rosnąco według czasu, czas wynosi 0–20 sekund i nie można mieszać zwykłych URL-i z elementami zawierającymi czas. Trzy lub więcej zwykłych klatek kluczowych musi mieć wyraźnie określone duration, nie można używać auto.

Rzeczywiste wyjście testowe obrazu do wideo

Pasujące dane wejściowe tego rzeczywistego testu są następujące (pełny base64 zastąpiono wyłącznie tekstem objaśniającym, pozostałe pola są rzeczywistym żądaniem):
Referencyjna klatka kluczowa obrazu do wideo z tego testu Po pobraniu tej klatki kluczowej PNG można użyć w Pythonie base64.b64encode(image_bytes).decode("ascii"), aby uzyskać oryginalny ciąg znaków, i umieścić go w tablicy keyframes. Nie używaj tekstu objaśniającego z dokumentu jako wejścia obrazu. Poniżej znajduje się rzeczywista końcowa response zadania produkcyjnego z 2026-10-01 (nie jest to odpowiedź symulowana); tylko adres URL wideo został zamieniony na długoterminową przykładową kopię o tym samym hashu. Rzeczywiste dane wejściowe testu używają oryginalnego ciągu base64 PNG 1280×720 jako pojedynczej klatki kluczowej; powyższe wejście URL jest niezależnym przykładem parametru.
Obejrzyj wideo z testów rzeczywistych。

5. Kontynuacja wideo

Do start_video przekaż adres istniejącego pliku wideo, mode=v2v, czas trwania maksymalnie 15 sekund.

Wynik testowy kontynuacji wideo

Pełne dane wejściowe tego rzeczywistego testu są następujące; podczas odtwarzania ulepszenia szkicu należy zastąpić je własnym ID szkicu. URL materiału używa długoterminowej przykładowej kopii tego samego pliku:
Poniżej znajduje się rzeczywista końcowa response zadania produkcyjnego z 2026-10-01 (nie jest to odpowiedź symulowana); jedynie URL wideo został zmieniony na długoterminową przykładową kopię o tym samym hashu.
Obejrzyj wideo z testów rzeczywistych。 Testowe dane wejściowe start_video to ukończone wideo szkicu, pozostałe parametry to duration=5、resolution=hd、generate_audio=false。

6. Najpierw szkic, następnie ulepszenie

  1. Wygeneruj szkic za pomocą draft=true、resolution=hd i poczekaj na powodzenie.
  2. Pobierz ID szkicu platformy z końcowego data[0].draft_task_id.
  3. Prześlij żądanie ulepszenia przy użyciu poświadczeń aplikacji o tym samym przypisaniu:
Do ulepszenia szkicu nie można przekazywać prompt、duration、aspect_ratio、version、generate_audio、draft、keyframes、start_video, aby nadpisać oryginalną zawartość. Pamięć podręczna szkicu jest zasobem tymczasowym, prosimy o terminowe ulepszenie; nie gwarantuje się stałego przechowywania ani określonej liczby dni przechowywania. Szkice niebędące własnymi/niepochodzące z bieżącej aplikacji, nieukończone szkice oraz wygasłe pamięci podręczne nie mogą być ponownie użyte. Szkic i ulepszenie to dwa zadania, za które po powodzeniu naliczane są opłaty osobno.

Wynik testowy ulepszenia szkicu

Pełne dane wejściowe tego rzeczywistego testu są następujące; podczas odtwarzania ulepszenia szkicu należy zastąpić je własnym ID szkicu. URL materiału używa długoterminowej przykładowej kopii tego samego pliku:
Poniżej znajduje się rzeczywista końcowa response zadania produkcyjnego z 2026-10-01 (nie jest to odpowiedź symulowana); jedynie URL wideo został zmieniony na długoterminową przykładową kopię o tym samym hashu.
Obejrzyj wideo z testów rzeczywistych。 Dane wejściowe testu to własne draft_task_id=b41293be-94c0-4dc7-9f39-ce04f0a8798d、resolution=hd;końcowe usage.mode=t2v wskazuje tryb oryginalnego szkicu. To zadanie i oryginalny szkic są rozliczane osobno.

7. Wywołanie Python end-to-end

Zainstaluj requests, ustaw własny Token, a uruchomienie poniższego skryptu pozwoli zakończyć „jedno przesłanie → odpytywanie → wyprowadzenie URL wideo”. Zarówno zapytania, jak i ponowienia sieciowe powinny używać oryginalnego task_id, aby uniknąć wielokrotnego przesyłania płatnych zadań.
Po przekroczeniu limitu czasu sieciowego nie traktuj nieznanego stanu jako niepowodzenia i nie przesyłaj natychmiast ponownie. Jeżeli uzyskano już task_id, kontynuuj odpytywanie tego zadania; zapisuj task_id i trace_id, aby ułatwić diagnozowanie. Sam interfejs odpytywania nie pobiera opłat za generowanie.

8. Korzystanie z callbacków

Podczas przesyłania dodaj callback_url; po ukończeniu zadania końcowy wynik JSON zostanie wysłany metodą POST pod ten adres. Struktura sukcesu jest zgodna z opisanym wcześniej response, a w przypadku niepowodzenia zawiera error.
Adres callbacka powinien być dostępny z publicznego Internetu. Po otrzymaniu powiadomienia przetwarzaj je idempotentnie według task_id i jak najszybciej zwróć 2xx; przetwarzanie biznesowe można umieścić w kolejce. Niniejszy dokument nie deklaruje, że callback posiada uwierzytelnianie podpisem: przed wykonaniem wrażliwych operacji, takich jak przyznanie uprawnień biznesowych, użyj własnego Tokena, aby zapytać o to samo zadanie i zweryfikować wynik. Jeżeli callback nie zostanie otrzymany, można również kontynuować odpytywanie; nie generuj ponownie.

9. Aktualne rozliczenia i tabela cen

Aktualizacja z 2026-10-02: ceny jednostkowe wszystkich wariantów tego interfejsu wideo zostały obniżone o około 6,33%; sposób naliczania, pakiety i zasady rabatów za zużycie pozostają bez zmian. Cost w historycznych, rzeczywistych response przytoczonych wcześniej jest rachunkiem z chwili ukończenia zadania i nie reprezentuje aktualnej wyceny. Generowanie wideo jest rozliczane według rzeczywistej liczby sekund wyjściowych. Poniżej znajdują się aktualne ceny jednostkowe w Credits przed zastosowaniem rabatów za zużycie konta, zgodne z zasadami na stronie cen Flux. Przeliczenie na USD: rzeczywisty koszt (USD) = cost.amount (Credits) × price pakietu / amount pakietu. Poziomy doładowań i rabaty za zużycie wpływają na rzeczywistą cenę; Credits nie mogą być bezpośrednio traktowane jako USD. Nieudane zadania nie są obciążane opłatą za generowanie; ostateczna kwota zależy od wyniku ukończenia i zapisów wywołań w konsoli.

10. Częste problemy i diagnostyka

Przy zgłaszaniu opinii podaj task_id, trace_id, czas żądania i zanonimizowane parametry; nie wysyłaj API Tokena. Więcej metod znajdziesz w przewodniku integracji Flux MCP.