Kling V4 Flash — Parametry
Kontrakt APIMaster dla kling-v4-flash, sprawdzony 2026-11-07. Kanał 317: tekst, pierwsza klatka, referencje, edycja i przedłużanie. Tylko 720p, 24 klatki/s, 3–20 sekund; osobny model względem Kling V4.
Kling V4 Flash
Kontrakt APIMaster dla kling-v4-flash, sprawdzony 2026-11-07. Kanał 317: tekst, pierwsza klatka, referencje, edycja i przedłużanie. Tylko 720p, 24 klatki/s, 3–20 sekund; osobny model względem Kling V4.
Punkty końcowe i autoryzacja
POST https://apimaster.ai/v1/videosPOST https://apimaster.ai/v1/videos/generationsGET https://apimaster.ai/v1/videos/{task_id}GET https://apimaster.ai/v1/videos/{task_id}/contentGET https://apimaster.ai/v1/video-submissions/by-key
Parametry
JSON i Authorization: Bearer YOUR_API_KEY; model=kling-v4-flash. prompt obowiązkowy poza pojedynczą klatką początkową. duration/seconds: całkowite liczby JSON 3–20, domyślnie 5; null oznacza pominięcie, 0 jest odrzucane. Oba aliasy muszą być poprawne i równe. Edycja bez czasu używa długości strumienia wideo zaokrąglonej w górę. resolution tylko 720p. aspect_ratio lub size: 16:9, 9:16, 1:1, 21:9; auto wyłącznie dla referencji. Domyślnie tekst 16:9, referencje auto, edycja według źródła. Pierwsza klatka i przedłużanie odrzucają niepuste aspect_ratio/size. audio tylko true, watermark tylko false.
| Parametr | Typ JSON | Wymagany | Domyślnie | Znaczenie i ograniczenia |
|---|---|---|---|---|
model |
string |
Tak | kling-v4-flash |
Zawsze kling-v4-flash we wszystkich pięciu operacjach; kling-v4 to inny model. |
prompt |
string |
Zależnie od trybu | — | Opis sceny, ruchu lub zmian. Opcjonalny tylko dla jednej klatki początkowej. @Image1 i @Video1 numerowane osobno od 1 według tablic; edytowane wideo to @Video1. |
duration |
integer / null |
Nie | 5 |
Liczba całkowita JSON 3–20 sekund, zwykle 5. Edycja bez obu pól zaokrągla czas strumienia wideo źródła w górę; rozszerzenie oznacza NOWY fragment. null oznacza pominięcie; 0, ułamki i ciągi liczbowe są odrzucane. |
seconds |
integer / null |
Nie | — | Alias duration, te same ograniczenia. Zalecane jedno pole; przy obu wartości muszą być poprawne i równe, inaczej 400. |
resolution |
string |
Nie | 720p |
Tylko 720p: poziom jakości, a nie gwarancja krótszego boku 720px. Brak 1080p i wyboru jakości przez mode. |
aspect_ratio |
string |
Nie | Zależnie od trybu | Tekst/referencje/edycja: 16:9, 9:16, 1:1, 21:9; auto tylko dla referencji. Domyślnie tekst 16:9, referencje auto, edycja według źródła. Klatka początkowa/rozszerzenie odrzucają niepuste wartości; pusty tekst oznacza pominięcie. |
size |
string |
Nie | — | Alias aspect_ratio, nie rozdzielczość ani wielkość w pikselach. Oba pola muszą być zgodne. Pomiń oba dla klatki początkowej i rozszerzenia. |
image_urls |
string[] |
Zależnie od trybu | — | Tablica publicznych URL obrazów. Auto przyjmuje jedną klatkę początkową; referencje z samych obrazów wymagają jawnego reference. Referencje/edycja: ≤10 obrazów z rolami reference_image. Nie mieszaj reprezentacji klatki początkowej; rozszerzenie nie przyjmuje obrazów. |
first_frame_image |
string |
Zależnie od trybu | — | Publiczny URL jedynej klatki początkowej, alternatywny wobec jednego image_urls lub roli first_frame. Oba wymiary ≥300px, proporcje 2:5–5:2; w razie potrzeby przytnij wcześniej. |
image_with_roles |
{url, role}[] |
Zależnie od trybu | — | Każdy obiekt wymaga publicznego url i role. first_frame dla jednej klatki początkowej, reference_image dla referencji/edycji. Bez klatek końcowych/pośrednich/kluczowych. Łącznie obrazy referencyjne≤10, obrazy i wideo≤15. |
video_url |
string |
Zależnie od trybu | — | Publiczny URL jednego źródła tylko z jawnym edit/extend, wyklucza video_urls. Edycja: MP4/MOV, strumień 3–20s, każdy wymiar 700–4553px. Rozszerzenie od ostatniej klatki zwraca wyłącznie nowy fragment; nie ID zadania/rozmowy. |
video_urls |
string[] |
Zależnie od trybu | — | Do 5 referencyjnych MP4/MOV, każdy strumień≥3s, każdy wymiar 700–4553px, suma≤20s. Jawne edit/extend mogą użyć jednego elementu zamiast video_url. Nadmiar jest odrzucany bez przycinania; tablica automatycznie wybiera referencje. |
omni_reference_task_type |
string |
Nie | auto |
auto rozpoznaje tekst/klatkę początkową/referencje; reference wymaga materiału; edit/extend wymagają jednego wideo. video_url bez jawnego trybu i dwa zwykłe obrazy w auto są niepoprawne. |
audio_setting |
string |
Nie | auto |
Tylko referencje Z WIDEO. auto tworzy dźwięk; origin zachowuje dźwięk PIERWSZEGO wideo, a brak ścieżki źródła oznacza brak ścieżki wyniku. Pomiń dla edycji, rozszerzenia, tekstu i referencji tylko z obrazów. |
audio |
boolean |
Nie | true |
Zgodnościowy boolean: pominięty lub true, false odrzucany. Oryginalny dźwięk przez audio_setting w obsługiwanych trybach; brak osobnych referencji audio. |
watermark |
boolean |
Nie | false |
Zgodnościowy boolean: pominięty lub false, true odrzucany. Nie usuwa znaków wodnych z materiału źródłowego. |
Bezpośrednie publiczne URL HTTP(S) bez danych uwierzytelniających; nie base64/lokalna ścieżka/ID zadania. Formatów i limitów bajtowych obrazów nie określono osobno. 100MiB to limit odczytu każdego badanego wideo referencyjnego/edycyjnego, nie ogólny limit przesyłania.
Tryby i materiały
| Operacja | Wybór i wymagane materiały | Domyślne ustawienia i wykluczenia |
|---|---|---|
| Tekst → wideo | Bez materiałów, prompt wymagany, typ auto lub pominięty. | 5s, 16:9; bez audio_setting. |
| Klatka początkowa → wideo | Jeden obraz przez JEDNĄ z trzech reprezentacji; prompt opcjonalny. | 5s, proporcje obrazu; bez aspect_ratio/size i klatki końcowej. |
| Referencje → wideo | reference + obrazy, role reference_image lub video_urls; prompt wymagany. | 5s, auto; obrazy≤10, wideo≤5, łącznie≤15; ustawienia dźwięku wymagają wideo. |
| Edycja wideo | edit + jedno wideo, prompt wymagany; do 10 obrazów referencyjnych. | Czas źródła zaokrąglony w górę, proporcje źródła; bez ról klatek/audio_setting. |
| Rozszerzenie | extend + jedno wideo, prompt wymagany. | 5 NOWYCH sekund; bez obrazów, zmiany proporcji/audio_setting; minima wymiarów/czasu z edycji/referencji nie obowiązują. |
omni_reference_task_type: auto, reference, edit, extend. Jedno image_urls, first_frame_image lub rola first_frame określa klatkę początkową. Wiele obrazów wymaga reference albo ról reference_image; dwa image_urls w auto są odrzucane. video_urls oznacza referencje, chyba że jawnie podano edit/extend. video_url wymaga edit/extend i wyklucza video_urls. Edycja/przedłużanie wymagają jednego filmu. Edycja dopuszcza obrazy referencyjne; przedłużanie nie przyjmuje obrazów/audio_setting i zwraca tylko NOWY fragment. Podaj publiczny URL źródła, nie identyfikator zadania lub rozmowy.
Bezpośrednie publiczne URL HTTP(S) bez danych logowania. Do 10 obrazów, razem do 15 referencji obraz/wideo. Obrazy minimum 300×300, proporcje 2:5–5:2. Do 5 MP4/MOV, każdy minimum 3 sekundy, łącznie najwyżej 20; edycja: jeden film 3–20 sekund. Szerokość I wysokość 700–4553 piksele. Brama czyta do 100 MiB na film i mierzy strumień wideo, nie kontener/audio. Te ograniczenia wymiarów/minimalnej długości nie dotyczą wejścia przedłużania. Dostawca dodatkowo sprawdza obrazy. audio_setting=origin zachowuje dźwięk pierwszego filmu referencyjnego lub ciszę; auto generuje dźwięk. Tylko referencje Z filmem. Edycja tworzy nowy dźwięk. Brak URL audio, ostatniej/pośredniej klatki, keyframes, negative_prompt, mode, seed, wielu scen i list postaci/głosów.
Piksele wyjściowe i liczba klatek
| Proporcje / operacja | Udokumentowane piksele | Liczba klatek |
|---|---|---|
16:9 |
1280×720 | 24 fps |
9:16 |
720×1280 | 24 fps |
1:1 |
960×960 | 24 fps |
21:9 |
1464×628 | 24 fps |
| Klatka początkowa → wideo | Proporcje obrazu, około 0,92MP; np. 604×1516 dla 2:5. | 24 fps |
Wymiary wyniku nie są wymaganiami wejścia. 21:9 ma wysokość 628px, poniżej minimum 700px dla referencji/edycji: przygotuj odpowiednie źródło. Minimum nie dotyczy rozszerzenia. Plik może być dłuższy o około jedną klatkę.
Przykłady bez wykonywania
1. text
{
"model": "kling-v4-flash",
"prompt": "A paper boat floats along a quiet stream.",
"duration": 3,
"aspect_ratio": "16:9"
}
2. first_frame
{
"model": "kling-v4-flash",
"image_urls": [
"https://example.com/start.png"
],
"duration": 3
}
3. reference_image
{
"model": "kling-v4-flash",
"prompt": "Animate the scene from @Image1.",
"omni_reference_task_type": "reference",
"image_urls": [
"https://example.com/style.png"
],
"duration": 3
}
4. mixed_reference
{
"model": "kling-v4-flash",
"prompt": "Animate @Image1 with the camera movement from @Video1.",
"omni_reference_task_type": "reference",
"image_with_roles": [
{
"url": "https://example.com/subject.png",
"role": "reference_image"
}
],
"video_urls": [
"https://example.com/camera.mp4"
],
"duration": 5,
"aspect_ratio": "auto",
"audio_setting": "origin"
}
5. reference_video
{
"model": "kling-v4-flash",
"prompt": "Follow the camera movement from @Video1.",
"video_urls": [
"https://example.com/input.mp4"
],
"duration": 3,
"aspect_ratio": "auto"
}
6. reference_video / origin
{
"model": "kling-v4-flash",
"prompt": "Follow @Video1 and preserve its original sound.",
"video_urls": [
"https://example.com/input.mp4"
],
"audio_setting": "origin",
"duration": 3
}
7. edit / duration
{
"model": "kling-v4-flash",
"prompt": "Change the light in @Video1 to sunset.",
"omni_reference_task_type": "edit",
"video_url": "https://example.com/input.mp4",
"duration": 3
}
8. edit / default
{
"model": "kling-v4-flash",
"prompt": "Change @Video1 to a snowy scene.",
"omni_reference_task_type": "edit",
"video_url": "https://example.com/input.mp4",
"image_with_roles": [
{
"url": "https://example.com/style.png",
"role": "reference_image"
}
]
}
9. extend
{
"model": "kling-v4-flash",
"prompt": "Continue the camera moving forward.",
"omni_reference_task_type": "extend",
"video_url": "https://example.com/input.mp4",
"duration": 3
}
Rozliczenie
Oficjalna baza nominalna: $0.094 za sekundę wyjścia (720P), $0.0628 za sekundę rozliczeniową z filmem (720P-input). Tekst, obrazy, referencje bez filmu i przedłużanie: wyjście/nowy fragment. Referencje wideo i edycja: wyjście + max(wejście, wyjście). Najpierw zsumuj długości strumieni wejściowych, potem zaokrąglij sumę w górę. Wejście 3.04 s, wyjście 3 s: 3+max(4,3)=7 sekund rozliczeniowych. Dodatkowa klatka nie zmienia żądanej całkowitej długości wyjścia. Rabaty pakietów i mnożniki konta są osobne; decydują karta oraz końcowa kwota w dzienniku. Potwierdzony błąd generowania zwraca rezerwę. Zatrzymanie sprawdzania nie anuluje zadania; niejasny timeout nie uprawnia do nowego generowania.
input_seconds = ceil(sum(input_video_stream_seconds))
billable_seconds = output_seconds + max(input_seconds, output_seconds)
Status, błędy i bezpieczne ponowienie
Pierwsze przyjęcie: HTTP 200, publiczny task_id, queued. GET /v1/videos/{task_id}: queued/in_progress/completed/failed, możliwe chwilowe unknown. url i metadata.url wymagają Bearer; również GET /v1/videos/{task_id}/content. Błąd: error.code=generation_failed z oczyszczonym komunikatem; błędne parametry: HTTP 400. Idempotency-Key: 8–128 widocznych znaków ASCII bez spacji. To samo konto/klucz/żądanie: HTTP 202 bez kolejnego generowania/rezerwy; zmiana: 409. GET /v1/video-submissions/by-key odczytuje potwierdzenie. accepted+task_ready=true: sprawdzaj task_id; pending/submitting lub niegotowe: czekaj. acceptance_unknown: zachowaj klucz i skontaktuj się z pomocą, bez automatycznego ponawiania. 404 nie dowodzi nieprzyjęcia. Przechowywanie minimum 30 dni; ochrona bramy, bez wyszukiwania u dostawcy. Końcowa opłata w dzienniku przez other.task_id; status nie gwarantuje faktury. /v1/videos/quote nieobsługiwane. Przykłady nie działają samodzielnie: zamień URL, nowy klucz dla każdej nowej operacji.
{
"id": "task_REDACTED_EXAMPLE",
"task_id": "task_REDACTED_EXAMPLE",
"object": "video",
"model": "kling-v4-flash",
"status": "queued",
"created_at": 1794052800
}
{
"id": "task_REDACTED_EXAMPLE",
"task_id": "task_REDACTED_EXAMPLE",
"object": "video",
"model": "kling-v4-flash",
"status": "completed",
"progress": 100,
"created_at": 1794052800,
"url": "https://apimaster.ai/v1/videos/task_REDACTED_EXAMPLE/content",
"metadata": {
"url": "https://apimaster.ai/v1/videos/task_REDACTED_EXAMPLE/content"
}
}
{
"id": "task_REDACTED_EXAMPLE",
"task_id": "task_REDACTED_EXAMPLE",
"object": "video",
"model": "kling-v4-flash",
"status": "failed",
"progress": 100,
"created_at": 1794052800,
"error": {
"code": "generation_failed",
"message": "Generation failed"
}
}
