Panduan media
Generasi Video
Hasilkan video dengan operasi publik eksplisit, polling asinkron, dan input media spesifik model.
Generasi video bersifat asinkron. POST /v1/videos/generations mengembalikan identitas tugas publik dan biasanya poll_url; video akhir muncul pada respons status selanjutnya.
Kirim URL HTTP(S) publik atau data URL yang didukung pada field gambar model pilihan. Input ini mengikuti pemrosesan media biasa dan tidak otomatis membuat ID material yang dapat digunakan kembali.
Jika material yang disebutkan secara eksplisit masih dipersiapkan, POST /v1/videos/generations mengembalikan 409 seedance_material_preparing beserta inactive_asset_ids. Periksa aset hingga ACTIVE, lalu ulangi dengan ID yang sama. Jika FAILED, periksa error_message dan perbaiki atau impor ulang terlebih dahulu.
Operasi yang Didukung
Gunakan operation eksplisit dalam produksi. TokenLab dapat menyimpulkan beberapa operasi dari input, tetapi nilai operasi eksplisit membuat validasi, dukungan, dan pengulangan lebih jelas.
| Operasi | Input yang Diperlukan atau Tipikal | Kasus Penggunaan |
|---|---|---|
text-to-video | prompt | Menghasilkan dari teks saja |
image-to-video | image_url atau image yang kompatibel | Menganimasi gambar awal |
reference-to-video | reference_images dan opsional video_urls / audio_urls pada model yang didukung | Menjaga identitas, gaya, atau referensi aset |
start-end-to-video | start_image, end_image | Mengontrol frame pertama dan terakhir |
video-to-video | video_url atau task_id spesifik model | Mengubah atau meningkatkan klip yang ada |
motion-control | image_url ditambah video_url | Menerapkan referensi gerakan pada subjek |
audio-to-video | audio_url | Aliran video yang dikondisikan oleh audio |
video-extension | task_id, extend_at, atau bidang ekstensi spesifik model | Melanjutkan video yang dihasilkan |
Penemuan Model
curl "https://api.tokenlab.sh/v1/models?recommended_for=video" \
-H "Authorization: Bearer sk-your-api-key"Gunakan ID model yang ditampilkan TokenLab di model, lalu pilih varian fitur melalui operation dan input media yang sesuai. Contoh: wan-2.7, happyhorse-1.0, viduq3, viduq3-mix, pixverse-v6, veo3.1, dan seedance-2.0; jangan gunakan sufiks khusus operasi sebagai nama model TokenLab.
Baca detail model yang dipilih sebelum bergantung pada bidang khusus seperti reference_images, kling_elements, output_audio, duration, resolution, atau aspect_ratio.
Buat Permintaan
curl https://api.tokenlab.sh/v1/videos/generations \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "veo3.1",
"operation": "text-to-video",
"prompt": "Sebuah pengambilan sinematik tenang dari seekor kucing yang berjalan melalui taman yang diterangi sinar matahari",
"duration": 4,
"aspect_ratio": "16:9"
}'Untuk input media produksi, lebih baik gunakan URL publik https daripada URL inline data:. Jika Anda menggunakan URL sementara, pastikan URL tetap valid sampai TokenLab selesai membuat tugas.
Input Dan Bidang Spesifik Model
Perilaku audio bergantung pada model dan operasi. Video dapat memiliki suara meskipun tidak menyediakan sakelar audio. Menghilangkan parameter berbeda dengan mengirim false.
veo3.1danveo3.1-fastselalu menghasilkan audio sesuai kontrak Gemini API. Pembuatan videowan-2.6danwan-2.7juga tidak mendukung penonaktifan suara. Hilangkanoutput_audioatau gunakantruejika diizinkan detail model.hailuo-h3dan model video Grok menghasilkan audio native. Jangan menambahkan sakelar yang tidak tercantum pada detail model.- Seedance 1.5/2.x dan
viduq3-pro/viduq3-turbomengaktifkan audio secara default dan mendukung keluaran tanpa suara. PixVerse C1/V5.6/V6 menonaktifkannya secara default. Gunakanoutput_audiohanya untuk operasi yang mencantumkannya; Vidu juga menerima kolom booleanaudioyang dinyatakan dalam kontraknya. audio_url/audio_urlsmenyediakan audio masukan atau referensi, bukan sakelar keluaran. Pengeditan video, transfer gerakan, dan transfer gaya dapat mempertahankan trek asli. Mempertahankan audio asli tidak berarti membisukannya.
Lihat detail model untuk nilai yang diizinkan dan harga audio. Alias yang didukung outputAudio, generate_audio, dan boolean audio harus sama dengan output_audio jika digabungkan. Kontrol dapat berbeda antarversi dan operasi.
- Untuk keluarga Seedance 2.0, baca panduan model video Seedance 2.0 sebelum memakai output 4K, batas resolusi Fast/Mini, atau input referensi multimodal.
- Untuk video-to-video dengan
grok-imagine-video, kirimpromptdan URL HTTPS publik.mp4sebagaivideo_url. Operasi ini tidak menggunakan pilihanduration,resolution, atauaspect_ratio.
PixVerse dan HappyHorse
| Model | Operasi | Input | Resolusi | Durasi | Pemilih audio |
|---|---|---|---|---|---|
pixverse-c1, pixverse-v6 | text-to-video, image-to-video, start-end-to-video, reference-to-video | prompt; image_url; start_image + end_image; reference_images | 360p, 540p, 720p, 1080p | Bilangan bulat dari 1 hingga 15 detik | output_audio, default false |
pixverse-v5.6 | text-to-video, image-to-video, start-end-to-video, reference-to-video | Field yang sama dengan C1 dan V6 | 360p, 540p, 720p, 1080p | 5, 8, atau 10 detik; 1080p mendukung 5 atau 8 detik | output_audio, default false |
happyhorse-1.0 | text-to-video, image-to-video, reference-to-video, video-to-video | prompt; image_url; reference_images; video_url + reference_images | 720p, 1080p | 3 hingga 15 detik untuk operasi generasi; output video-to-video dibatasi maksimal 15 detik | Jangan kirim output_audio |
Di TokenLab, model-model PixVerse di atas tidak mendukung operation=video-extension.
curl https://api.tokenlab.sh/v1/videos/generations \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "pixverse-v6",
"operation": "image-to-video",
"prompt": "A slow camera move through a neon-lit street",
"image_url": "https://example.com/start.jpg",
"resolution": "1080p",
"duration": 5,
"output_audio": true
}'Memantau Hasil
Gunakan poll_url yang dikembalikan terlebih dahulu. Jika Anda memerlukan endpoint tetap, gunakan GET /v1/tasks/{id} dengan id / task_id yang sama dari respons pembuatan.
Tugas video yang selesai dapat mengembalikan video_url, video, atau videos bergantung pada model dan jumlah output. Perlakukan billing_transaction_id sebagai pengidentifikasi penagihan, bukan sebagai pengidentifikasi tugas.
Kesalahan Umum
- Jangan mengkodekan jalur status video lama secara keras; lebih baik menggunakan
poll_url. - Jangan menggabungkan bidang frame pertama dengan aliran gambar referensi khusus kecuali kontrak model mengizinkannya.
- Jangan menganggap
durationmenggambarkan panjang video referensi input; biasanya mengontrol panjang output yang dihasilkan. - Jangan mencoba ulang permintaan pembuatan setelah waktu habis tanpa memeriksa apakah tugas sudah dibuat.
Referensi API
| Topik | Referensi |
|---|---|
| Buat Video | Buat Video |
| Dapatkan Status Video | Dapatkan Status Video |
| Dapatkan Status Tugas | Dapatkan Status Tugas |
| Batalkan Tugas | Batalkan Tugas |
| Penagihan & Harga | Penagihan & Harga |
API video gaya OpenAI dan kompatibel Volc
Gunakan /v1/videos/generations untuk API video terpadu TokenLab lintas model. Jika Anda memigrasikan integrasi Seedance 2.0 yang sudah memakai content[] atau permintaan Action bergaya Volc, gunakan endpoint kompatibilitas Seedance di bawah /api/v3. Kedua gaya memakai TokenLab Bearer API key dan polling asinkron, tetapi bentuk permintaan dan responsnya berbeda.
Hailuo H3-Max menghasilkan video berdurasi 5–15 detik dalam resolusi 480p atau 768p dari teks, bingkai pertama, atau bingkai pertama dan terakhir. Alur yang berfokus pada kecepatan ini berguna untuk mengubah ide pengambilan gambar menjadi klip pendek dengan cepat.
{
"model": "hailuo-h3-max",
"operation": "text-to-video",
"prompt": "A slow camera move through a quiet garden",
"resolution": "768p",
"duration": 5,
"aspect_ratio": "16:9"
}