Langsung ke konten utama
POST

Autentikasi

string
wajib
Semua permintaan memerlukan autentikasi Bearer Token.Dapatkan API Key:Kunjungi halaman manajemen API Key untuk mendapatkan API Key Anda.Tambahkan header berikut saat membuat permintaan:

Parameter Permintaan

string
wajib
Nama model pembuatan video. Selalu gemini-omni-1.2-flash-ext.
string
wajib
Deskripsi video atau instruksi pengeditan. Tidak boleh kosong setelah spasi di awal dan akhir dihapus. Untuk teks-ke-video, jelaskan adegan, karakter, aksi, kamera, dan suara; jika menyertakan gambar atau video, jelaskan gerakan, gaya, atau perubahan yang diinginkan.Contoh: "Aerial shot over a misty mountain lake at sunrise."
prompt wajib diisi di semua mode, termasuk frame pertama, referensi multi-gambar, pengeditan, dan perpanjangan. Jika tidak ada, error 400 dikembalikan.
integer
default:"10"
Durasi video dalam detik. Harus berupa bilangan bulat.
  • Teks-ke-video / frame pertama / referensi multi-gambar: durasi output, 3–15
  • Frame pertama dan terakhir: durasi output, 3–10
  • Perpanjangan (extend): durasi segmen tambahan, 3–10
  • Pengeditan (edit): tidak boleh dikirim; durasi output mengikuti video sumber
Alias seconds juga diterima. Jika keduanya dikirim, nilainya harus sama.
Mengirim duration dalam mode pengeditan mengembalikan error video edit does not accept duration.
string
default:"720p"
Resolusi video, tidak peka huruf besar/kecil. Menentukan harga per detik.Nilai yang didukung:
  • 360p
  • 720p
  • 1080p
  • 4k (2160p juga diterima)
Resolusi lain mengembalikan error 400.
string
default:"16:9"
Hanya mendukung 16:9 (lanskap, default) dan 9:16 (potret); nilai lain mengembalikan error 400.
string
Jenis tugas, yang menentukan cara materi input digunakan.Nilai yang didukung:
  • edit - Mengedit video; gunakan bersama video_urls atau extend_from_task_id
  • extend - Memperpanjang video dengan menambahkan konten baru di akhir; gunakan bersama video_urls atau extend_from_task_id
  • reference - Referensi multi-gambar; gunakan bersama image_urls
  • text_to_video / image_to_video / reference_to_video - Teks-ke-video / frame pertama / gambar referensi
  • auto - Ditentukan otomatis berdasarkan input; diperlakukan sebagai edit jika ada video
Opsional jika tidak ada video; mode ditentukan otomatis berdasarkan input.
Saat mengirim video_urls atau extend_from_task_id, jenis tugas wajib diisi (omni_reference_task_type, atau field kompatibel generation_type); jika tidak dikirim, error 400 dikembalikan. Disarankan mengirim edit atau extend secara eksplisit; auto diperlakukan sebagai edit.
string
Field kompatibilitas, setara dengan omni_reference_task_type. Nilai yang didukung: frame (sama dengan image_to_video), reference, edit, extend.
generation_type dan omni_reference_task_type tidak boleh dikirim bersamaan.
array<url>
Array gambar referensi untuk referensi multi-gambar (karakter, produk, gaya, dll.). Mendukung 1–10 gambar.Hanya mendukung URL gambar HTTP/HTTPS yang dapat diakses publik. Unggah gambar lokal terlebih dahulu untuk mendapatkan URL publik, lalu kirim URL tersebut; Base64 Data URL saat ini tidak didukung dan mengembalikan error 400.Jika hanya 1 gambar yang dikirim, cara penggunaannya bergantung pada jenis tugas:
  • omni_reference_task_type tidak dikirim: digunakan sebagai gambar referensi
  • omni_reference_task_type bernilai auto atau image_to_video: digunakan sebagai frame pertama
Untuk pembuatan dari frame pertama, sebaiknya gunakan first_frame_image secara langsung, bukan mengandalkan jumlah gambar.
image_urls tidak boleh dikirim bersama first_frame_image atau last_frame_image, dan gambar di image_urls tidak pernah diperlakukan sebagai frame pertama; gambar juga tidak boleh dikirim saat mengedit atau memperpanjang video.
string
Gambar frame pertama: frame pertama video yang dihasilkan adalah gambar ini. Hanya mendukung URL gambar HTTP/HTTPS yang dapat diakses publik; Base64 Data URL tidak didukung.Jika dikirim bersama last_frame_image, akan menghasilkan video dari frame pertama dan terakhir.
string
Gambar frame terakhir untuk pembuatan video dari frame pertama dan terakhir; video bertransisi dari frame pertama ke gambar ini. Hanya mendukung URL gambar HTTP/HTTPS yang dapat diakses publik; Base64 Data URL tidak didukung.Dalam mode frame pertama dan terakhir:
  • duration mendukung 3–10; 10 detik jika tidak dikirim
  • system_prompt dan negative_prompt tidak boleh dikirim
last_frame_image wajib dikirim bersama first_frame_image; mengirim frame terakhir saja mengembalikan error last_frame_image requires first_frame_image. Tidak boleh dikirim bersama image_urls.
array<object>
Array gambar dengan peran, cara penulisan yang setara dengan first_frame_image / last_frame_image / image_urls.
array<url>
Array video yang akan diedit atau diperpanjang; hanya 1 video yang didukung. Anda juga dapat menggunakan field nilai tunggal video_url; kirim salah satunya saja.Hanya mendukung URL video HTTP/HTTPS yang dapat diakses publik. Format MP4 / MOV / WebM, maksimal 15 detik dan 64 MB.
Saat mengirim video_urls, jenis tugas wajib diisi; disarankan mengatur omni_reference_task_type ke edit atau extend (auto diperlakukan sebagai edit). Jika tidak dikirim, error 400 dikembalikan. Mengirim 2 video atau lebih mengembalikan error 400.
string
ID tugas di platform ini (task_01…). Gunakan untuk melanjutkan pengeditan atau perpanjangan salah satu tugas gemini-omni-1.2-flash-ext Anda yang sudah selesai, tanpa mengunggah ulang video.Persyaratan:
  • Tugas milik akun saat ini
  • Model tugas adalah gemini-omni-1.2-flash-ext
  • Status tugas adalah completed
  • Kanal yang menghasilkan tugas asli masih tersedia; jika tidak, 503 source_channel_unavailable dikembalikan
  • Video asli maksimal 15 detik (berlaku untuk pengeditan dan perpanjangan); dalam mode pengeditan, durasinya juga harus dapat dikenali
Jika kanal tidak tersedia atau durasi video asli tidak dapat dikenali, unduh video asli lalu unggah melalui video_urls. Jika video asli lebih dari 15 detik, potong menjadi maksimal 15 detik sebelum diunggah.
extend_from_task_id tidak boleh dikirim bersama video_urls, dan jenis tugas wajib diisi; disarankan mengatur omni_reference_task_type ke edit atau extend (auto diperlakukan sebagai edit).
string
Konten yang tidak ingin muncul dalam video.Contoh: "people, cars, color"
negative_prompt tidak boleh dikirim dalam mode frame pertama dan terakhir.
string
Instruksi sistem, misalnya untuk menetapkan gaya visual atau melarang teks di layar. Harus berupa string.Contoh: "Render as a black-and-white silent film."
system_prompt tidak boleh dikirim dalam mode frame pertama dan terakhir.

Respons

integer
Kode status respons. Permintaan yang berhasil mengembalikan 200.
array
Array tugas yang dikembalikan.

Kueri Hasil Tugas

Pembuatan video bersifat asinkron. Setelah dikirim, task_id dikembalikan. Gunakan API Dapatkan Status Tugas untuk mengueri progres dan hasil pembuatan.
cURL
Lakukan polling setiap 5-10 detik dan atur timeout klien minimal 10 menit. Perkiraan waktu pembuatan (termasuk antrean): sekitar 46 detik untuk video 15 detik 360p, sekitar 99 detik untuk 15 detik 1080p, dan sekitar 4-5 menit untuk 15 detik 4k. Selama pembuatan, progres dapat tertahan di 10% cukup lama hingga selesai.

Contoh Hasil Berhasil

URL video adalah data.result.videos[0].url[0]. data.actual_time adalah waktu pemrosesan tugas dalam detik, bukan durasi video. Output berupa MP4 (H.264, 24fps) dengan trek audio AAC dan watermark SynthID yang tidak terlihat; pada 4k terkadang tidak ada trek audio.

Contoh Hasil Gagal

Tugas yang gagal akan dikembalikan dananya secara penuh.

Penagihan

Ditagih per detik: biaya = harga per detik untuk resolusi yang dipilih × jumlah detik yang ditagih. Semua mode ditagih berdasarkan tingkat resolusi yang diminta. Lihat halaman harga untuk harga aktual.

Kasus Penggunaan

Skenario 1: Teks-ke-Video

Skenario 2: Video dari Frame Pertama

Skenario 3: Video dari Frame Pertama dan Terakhir

Dalam mode frame pertama dan terakhir, duration mendukung 3–10 detik (10 detik jika tidak dikirim), dan system_prompt / negative_prompt tidak boleh dikirim.

Skenario 4: Referensi Multi-Gambar

Skenario 5: Pengeditan Video

Jangan kirim duration saat mengedit; durasi output mengikuti video sumber.

Skenario 6: Perpanjangan Video

Skenario 7: Memperpanjang Tugas yang Sudah Ada

Skenario 8: Instruksi Sistem dan Prompt Negatif