Lompati ke dokumentasi
Pada halaman ini

Seedance 2.5

Buat video dengan Seedance 2.5 menggunakan teks, bingkai pertama dan terakhir, atau referensi multimodal. Halaman ini menjelaskan alur kerja lengkap dari permintaan hingga hasil untuk model ini.

ID model API: seedance-2-5

Pembuatan video bersifat asinkron. Simpan taskId yang dikembalikan saat membuat tugas, lalu lakukan kueri statusnya atau terima melalui webhook.

Kemampuan

FiturNilai yang didukung
Resolusi output480p · 720p · 1080p
Durasi output4–30 detik
Rasio aspek16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive
Gambar referensiHingga 30 gambar
Video referensiHingga 10 video
File audio referensiHingga 10 file audio
Semua gabungan referensiHingga total 50 file referensi
Total durasi per grup video/audio30 detik
seedTidak didukung
Juga menerima duration=-1 dalam mode referensi-ke-video; lihat pengeditan video dan harga di bawah ini. image-to-video hanya menerima adaptive; kosongkan kolom ini atau atur ke adaptive.

Harga & kredit

Pembuatan video dikenakan biaya dalam bentuk kredit berdasarkan durasi tagihan dalam hitungan detik. Tanpa input video, durasi tagihan adalah durasi output; dengan input video, durasi tagihan juga mencakup durasi video referensi.

Tabel di bawah ini mencantumkan biaya kredit yang dikenakan per detik, bukan total biaya dari suatu tugas. Tarif bergantung pada model, resolusi output, dan apakah video referensi disediakan dalam mode reference-to-video. Lihat rumus dan contoh di bawah tabel untuk perhitungan total biaya.

Resolusi outputTanpa input videoDengan input video
480p10 kredit/detik6 kredit/detik
720p20 kredit/detik12 kredit/detik
1080p30 kredit/detik20 kredit/detik
  • Tanpa input video: detik output × tarif tanpa-video.
  • Dengan input video: (detik output + detik video referensi yang terukur) × tarif dengan-video. Server mengukur total durasi video referensi dan membulatkannya ke atas ke detik terdekat sebelum penagihan.
  • Referensi gambar atau audio saja menggunakan tarif tanpa-video. Tarif penagihan video referensi hanya berlaku dalam mode referensi-ke-video saat referensi video disertakan.

Contoh perhitungan biaya

Teks-ke-video 720p berdurasi 5 detik: 5 × 20 = 100 kredit.

Output 720p berdurasi 5 detik dengan video referensi 5 detik: (5 + 5) × 12 = 120 kredit.

Kredit ini dipotong di muka saat tugas dibuat. Jika tugas berhasil, jumlah ini adalah biaya akhir; tidak akan ada penambahan biaya atau pengembalian dana sebagian berdasarkan durasi output aktual. Tugas yang gagal atau habis waktu (timeout) akan masuk ke proses pengembalian dana.

Kredit dicadangkan saat pengiriman dan didebit setelah berhasil. Tugas yang gagal atau habis waktu (timeout) akan masuk ke alur pengembalian dana. Status penagihan refund_failed berarti pengembalian dana tidak selesai; periksa log API atau hubungi dukungan.

Cara pemotongan kredit saat durasi=-1

Jika durasi diatur ke -1, durasi hasil akhir tidak akan dikunci; model yang akan menentukannya secara otomatis.

Sangat disarankan untuk mengatur durasi sesuai dengan panjang video yang Anda butuhkan, alih-alih menggunakan -1. Sebaiknya gunakan -1 hanya untuk keperluan pengeditan video (video editing), bukan untuk skenario pembuatan video (video generation) lainnya.

Input referensiCara penghitungan biayaContoh
Dengan video referensiJumlahkan durasi semua video referensi dan bulatkan totalnya ke atas ke detik utuh berikutnya, sebut saja T. Biayanya adalah (T + T) × tarif dengan-video: T pertama mewakili estimasi durasi output, dan T kedua mewakili durasi video input.720p dengan video referensi 5 detik: (5 + 5) × 12 = 120 kredit.
Tanpa video referensi (hanya gambar atau audio)Menggunakan 30 detik sebagai estimasi durasi output. Biayanya adalah 30 × tarif tanpa-video.720p tanpa video referensi: 30 × 20 = 600 kredit.

Autentikasi

Buat kunci API di dasbor. Kunci lengkap hanya akan ditampilkan sekali. Simpan di server Anda dan kirimkan sebagai Bearer token pada setiap permintaan.

URL Basis

https://api.seevio.ai
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json

Atur variabel lingkungan SEEVIO_API_KEY sebelum menjalankan contoh ini. Contoh JavaScript dijalankan di server Anda menggunakan Node.js; contoh Python menggunakan paket requests.

Mulai cepat

Kirim permintaan minimal ini, simpan taskId yang dikembalikan, lalu gunakan contoh kueri tugas di bawah ini. Nilai kredit dalam respons pembuatan adalah jumlah yang dicadangkan.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "A cat surfing at sunset, cinematic lighting",
    "duration": 5,
    "resolution": "720p",
    "generation_type": "text-to-video",
    "aspect_ratio": "16:9",
    "generate_audio": true
  }
}'

Contoh respons pembuatan tugas

Setelah permintaan di atas diterima, API akan mengembalikan respons JSON ini. taskId adalah pengenal tugas yang digunakan untuk kueri status berikutnya; credits adalah jumlah kredit yang dicadangkan untuk tugas ini. Respons ini hanya mengonfirmasi pembuatan tugas, bukan berarti video telah siap. Anda perlu melakukan polling status tugas atau menggunakan Webhook untuk menerima hasil video.

{
  "taskId": "3f2aK9mR7xQp4TnZ8bLc6YwH",
  "credits": 100
}

Buat tugas

POST https://api.seevio.ai/v1/videos/generations

Kirim objek JSON yang berisi model dan input, serta callback_url opsional. Selalu tentukan ID model yang ditunjukkan pada halaman ini; mengosongkan model akan memilih seedance-2-0.

Isi permintaan

KolomTipeWajibDeskripsi & batasan
model
stringYa

ID Model. Untuk menggunakan Seedance 2.5, atur bidang ini ke seedance-2-5.

callback_url
stringTidak

Endpoint HTTPS publik untuk callback POST selesai dan gagal. Jaringan privat dan localhost tidak diizinkan.

Contoh: https://example.com/webhooks/seevio
input
objectYa

Pengaturan pembuatan. Harus berisi prompt yang tidak kosong.

Parameter input

image_urls wajib ada dalam image-to-video. reference-to-video memerlukan setidaknya satu referensi di seluruh image_urls, video_urls, dan audio_urls.

Berikan image_urls, video_urls, dan audio_urls dalam bentuk array string URL (string[]). Setiap URL yang dimasukkan harus dapat diakses secara publik melalui HTTPS, termasuk media yang diabaikan oleh mode yang dipilih.

KolomTipeWajibDefaultDeskripsi & batasan
input.prompt
stringYa

Wajib di setiap mode, termasuk referensi khusus media. Hingga 10.000 karakter sebelum dipangkas; harus berisi teks selain spasi kosong.

Contoh: A cat surfing at sunset
input.generation_type
stringTidaktext-to-video

text-to-video hanya menggunakan prompt; image-to-video menggunakan 1–2 gambar; reference-to-video menggunakan referensi gambar, video, dan/atau audio.

Nilai yang didukung
text-to-video | image-to-video | reference-to-video
input.image_urls
string[]Kondisional[]

image-to-video: 1 gambar untuk bingkai pertama, atau 2 gambar berurutan untuk bingkai pertama dan terakhir. reference-to-video: hingga 30 gambar. Diabaikan dalam text-to-video.

Contoh: ["https://example.com/first-frame.jpg"]
input.video_urls
string[]Kondisional[]

Hanya diteruskan dalam reference-to-video; hingga 10 video dan total 30 detik gabungan. Diabaikan dalam mode lain.

Contoh: ["https://example.com/source.mp4"]
input.audio_urls
string[]Kondisional[]

Hanya diteruskan dalam reference-to-video; hingga 10 file audio dan total 30 detik gabungan. Diabaikan dalam mode lain.

Contoh: ["https://example.com/music.mp3"]
input.duration
integerTidak5

Durasi output integer dari 4 hingga 30 detik. Juga menerima -1 hanya dalam reference-to-video. Gunakan dengan video sumber untuk pengeditan; penagihan mengikuti aturan khusus di atas.

Nilai yang didukung
-1 | 4–30
Contoh: 5
input.aspect_ratio
stringTidakadaptive

Rasio aspek output. adaptive memungkinkan model menentukan rasionya. image-to-video hanya menerima adaptive; kosongkan kolom ini atau atur ke adaptive.

Nilai yang didukung
16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive
Contoh: adaptive
input.resolution
stringTidak720p

Gunakan salah satu resolusi output yang didukung yang tercantum di sini.

Nilai yang didukung
480p | 720p | 1080p
Contoh: 720p
input.generate_audio
booleanTidaktrue

Minta pembuatan audio yang disinkronkan.

Nilai yang didukung
true | false
Contoh: true
input.watermark
booleanTidakfalse

Minta watermark AI pada video yang dihasilkan.

Nilai yang didukung
true | false
Contoh: false
input.web_search
booleanTidakfalse

Izinkan pencarian web jika didukung oleh model.

Nilai yang didukung
true | false
Contoh: false
input.return_last_frame
booleanTidakfalse

Minta bingkai terakhir. Hasil kueri berisi data.last_frame_url saat bingkai tersedia; jika tidak, nilainya null.

Nilai yang didukung
true | false
Contoh: true

Kolom boolean harus berupa JSON true atau false, bukan string atau angka.

Respons pembuatan

HTTP 200 mengembalikan taskId (string) dan credits (number). Ini menyatakan diterimanya pembuatan tugas, bukan penyelesaiannya. Jumlah di bawah ini sesuai dengan mulai cepat 720p berdurasi 5 detik.

{
  "taskId": "3f2aK9mR7xQp4TnZ8bLc6YwH",
  "credits": 100
}

Mode pembuatan & contoh

Ganti URL media example.com dengan file HTTPS Anda sendiri yang dapat diakses publik. URL contoh ini hanya menunjukkan struktur permintaan dan bukan aset sampel yang dapat diunduh.

Teks ke video

Hasilkan dari prompt teks. URL media tidak diteruskan dalam mode ini.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "A cat surfing at sunset, cinematic lighting",
    "duration": 5,
    "resolution": "720p",
    "generation_type": "text-to-video",
    "aspect_ratio": "16:9",
    "generate_audio": true
  }
}'

Bingkai pertama

Sediakan satu gambar sebagai bingkai pertama, lalu deskripsikan gerakannya dalam prompt Anda.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "A cat surfing at sunset, cinematic lighting",
    "duration": 5,
    "resolution": "720p",
    "generation_type": "image-to-video",
    "image_urls": [
      "https://example.com/first-frame.jpg"
    ],
    "aspect_ratio": "adaptive"
  }
}'

Bingkai pertama dan terakhir

Sediakan dua URL gambar secara berurutan: bingkai pertama, lalu bingkai terakhir. Contoh ini juga meminta bingkai terakhir dari video yang dihasilkan.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "A cat surfing at sunset, cinematic lighting",
    "duration": 5,
    "resolution": "720p",
    "generation_type": "image-to-video",
    "image_urls": [
      "https://example.com/first-frame.jpg",
      "https://example.com/last-frame.jpg"
    ],
    "aspect_ratio": "adaptive",
    "return_last_frame": true
  }
}'

Referensi multimodal

Gabungkan referensi gambar, video, dan audio. Prompt tetap wajib diisi. Input video referensi akan mengubah formula penagihan.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "Follow the reference camera movement and keep the character consistent. Use the audio for ambience.",
    "duration": 5,
    "resolution": "720p",
    "generation_type": "reference-to-video",
    "image_urls": [
      "https://example.com/character.jpg"
    ],
    "video_urls": [
      "https://example.com/camera.mp4"
    ],
    "audio_urls": [
      "https://example.com/ambience.mp3"
    ],
    "aspect_ratio": "adaptive"
  }
}'

Referensi audio

Gunakan audio sebagai satu-satunya jenis referensi, dengan prompt teks wajib yang mendeskripsikan video yang diinginkan.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "Create a coastal sunrise scene matching the rhythm of this audio.",
    "duration": 5,
    "resolution": "720p",
    "generation_type": "reference-to-video",
    "audio_urls": [
      "https://example.com/music.mp3"
    ]
  }
}'

Pengeditan video

Untuk pengeditan video Seedance 2.5, durasi harus diatur ke -1 dan aspect_ratio harus diatur ke adaptive. Kedua pengaturan ini wajib diisi; jika tidak, pembuatan video akan gagal.

Deskripsikan pengeditan dan sertakan video sumber. Atur duration=-1 dan gunakan rasio aspek adaptif. Gunakan klip sumber minimal 4 detik untuk alur kerja ini. Aturan penagihan untuk duration=-1 ditunjukkan di atas.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "Edit the source video: change the character’s coat to blue and preserve the camera movement.",
    "duration": -1,
    "resolution": "720p",
    "generation_type": "reference-to-video",
    "video_urls": [
      "https://example.com/source.mp4"
    ],
    "aspect_ratio": "adaptive"
  }
}'

Ekstensi video

Untuk ekstensi video Seedance 2.5, aspect_ratio harus diatur ke adaptive; jika tidak, proses pembuatan video mungkin gagal. Atur duration seperti biasa ke panjang video output yang diinginkan dalam batas yang didukung; Anda tidak perlu menggunakan -1.

Deskripsikan bagaimana kelanjutan video sumber seharusnya. Gunakan rasio aspek adaptif dan atur durasi output normal dalam rentang model.

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "Continue the camera movement from the source video, revealing a forest clearing.",
    "duration": 8,
    "resolution": "720p",
    "generation_type": "reference-to-video",
    "video_urls": [
      "https://example.com/source.mp4"
    ],
    "aspect_ratio": "adaptive"
  }
}'

Kueri tugas

GET https://api.seevio.ai/v1/tasks/{taskId}

Ganti ID contoh dengan taskId yang dikembalikan oleh pembuatan. Kueri hanya mengembalikan tugas milik pengguna dari kunci API tersebut; ID yang tidak dapat diakses atau tidak dikenal akan mengembalikan HTTP 404.

Lakukan polling setiap 10–20 detik sebagai permulaan, kurangi frekuensi pada HTTP 429, dan hentikan saat status telah selesai atau gagal. Gunakan webhook untuk produksi. Setiap contoh kode di bawah ini melakukan satu kueri.

curl --fail-with-body https://api.seevio.ai/v1/tasks/3f2aK9mR7xQp4TnZ8bLc6YwH \
  -H "Authorization: Bearer $SEEVIO_API_KEY"
StatusDeskripsi & batasan
queuedDiterima dan menunggu pengiriman.
generatingPembuatan sedang berlangsung.
completedSelesai dengan sukses. Unduh data.results sebelum kedaluwarsa.
failedGagal total. Periksa failed_reason dan billing_status.
KolomTipeDeskripsi & batasan
idstring
Pengidentifikasi tugas. Ini adalah taskId dari respons pembuatan.
created_atnumber
Waktu pembuatan tugas dalam detik Unix.
modelstring
ID model publik yang digunakan untuk tugas ini.
billing_statusstring
reserved, charged, refunded, atau refund_failed.
creditsnumber
Kredit yang dicadangkan untuk tugas ini. Nilai ini tetap ada setelah pengembalian dana; periksa billing_status untuk menentukan hasil akhir penagihan.
failed_reasonstring | null
Alasan kegagalan pada tugas yang gagal; jika tidak, nilainya null. Respons kueri yang gagal mengosongkan data.
dataobject
Ada pada kueri tugas yang tidak gagal. Berisi detail output dan pemrosesan.
data.resultsstring[]
Array URL video. Kosong hingga selesai atau setelah masa kedaluwarsa video.
data.video_expires_atstring | null
Kedaluwarsa video sebagai stempel waktu ISO 8601, atau null sebelum tersedia. Simpan hasilnya sebelum waktu ini.
data.last_frame_urlstring | null
URL bingkai terakhir saat diminta dan tersedia, jika tidak nilainya null.
data.processing_timenumber | null
Durasi pemrosesan penyedia dalam detik saat tersedia, jika tidak nilainya null.

Tugas selesai: respons kueri dengan hasil video

Ketika kueri mengembalikan status=completed, pembuatan video telah selesai. Ambil URL video dari data.results dan unduh sebelum data.video_expires_at. billing_status=charged menunjukkan bahwa kredit yang dicadangkan telah terpotong.

{
  "id": "3f2aK9mR7xQp4TnZ8bLc6YwH",
  "created_at": 1788652800,
  "model": "seedance-2-5",
  "status": "completed",
  "billing_status": "charged",
  "credits": 100,
  "failed_reason": null,
  "data": {
    "results": [
      "https://cdn.seevio.ai/api/videos/example.mp4"
    ],
    "video_expires_at": "2026-09-07T00:00:00Z",
    "last_frame_url": null,
    "processing_time": 48
  }
}

Tugas gagal: respons kueri dengan detail kegagalan dan penagihan

Ketika kueri mengembalikan status=failed, proses pembuatan video gagal. Lihat failed_reason untuk mengetahui penyebabnya dan billing_status untuk hasil pengembalian dana. Pada contoh ini, refunded berarti kredit telah dikembalikan. credits tetap menampilkan jumlah awal yang dicadangkan, dan respons tidak menyertakan data.

{
  "id": "3f2aK9mR7xQp4TnZ8bLc6YwH",
  "created_at": 1788652800,
  "model": "seedance-2-5",
  "status": "failed",
  "billing_status": "refunded",
  "credits": 100,
  "failed_reason": "provider_failed"
}

Webhook

Atur callback_url dalam permintaan buat untuk menerima POST JSON saat tugas selesai atau gagal. Kembalikan respons 2xx dalam waktu 15 detik. Pengiriman yang gagal akan dicoba kembali; proses pengiriman berulang secara idempoten berdasarkan ID tugas.

Endpoint callback Anda harus menerima permintaan POST dengan body permintaan JSON (Content-Type: application/json).

Buat tugas dengan callback

curl --fail-with-body https://api.seevio.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEVIO_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "model": "seedance-2-5",
  "input": {
    "prompt": "A cat surfing at sunset, cinematic lighting",
    "duration": 5,
    "resolution": "720p",
    "generation_type": "text-to-video",
    "aspect_ratio": "16:9",
    "generate_audio": true
  },
  "callback_url": "https://example.com/webhooks/seevio"
}'

Muatan webhook berbeda dari respons kueri tugas: webhook tidak menyertakan billing_status dan credits; detail kegagalan ada di dalam data.failed_reason dan data.credits_refunded. created_at pada webhook adalah waktu pembuatan peristiwa dalam detik Unix.

Tugas selesai: payload callback sukses

Saat pembuatan berhasil, callback akan berisi status=completed. Gunakan id untuk mengidentifikasi tugas dan data.results untuk mengambil URL video. Unduh dan simpan hasilnya sebelum data.video_expires_at.

{
  "id": "3f2aK9mR7xQp4TnZ8bLc6YwH",
  "created_at": 1788652800,
  "model": "seedance-2-5",
  "status": "completed",
  "data": {
    "results": [
      "https://cdn.seevio.ai/api/videos/example.mp4"
    ],
    "video_expires_at": "2026-09-07T00:00:00Z",
    "last_frame_url": null,
    "processing_time": 48
  }
}

Tugas gagal: payload callback gagal

Saat pembuatan gagal, callback akan berisi status=failed. Gunakan id untuk mengidentifikasi tugas, data.failed_reason untuk melihat alasan kegagalan, dan data.credits_refunded untuk melihat jumlah kredit yang dikembalikan.

{
  "id": "3f2aK9mR7xQp4TnZ8bLc6YwH",
  "created_at": 1788652800,
  "model": "seedance-2-5",
  "status": "failed",
  "data": {
    "failed_reason": "provider_failed",
    "credits_refunded": 100
  }
}

Contoh penerima

export async function POST(request: Request) {
  const callbackData = await request.json();

  if (callbackData.status === "completed") {
    const videoUrls = callbackData.data.results;
    // Save the video URLs and mark this task as completed in your application.
    console.log(callbackData.id, videoUrls);
  }

  if (callbackData.status === "failed") {
    const { failed_reason, credits_refunded } = callbackData.data;
    // Record the failure reason and refunded credits for this task.
    console.error(callbackData.id, failed_reason, credits_refunded);
  }

  return new Response(null, { status: 200 });
}

Contoh Next.js ini membaca body callback JSON dan menangani tugas yang berhasil serta gagal secara langsung. Tambahkan persistensi dan deduplikasi ID tugas untuk aplikasi Anda; antrekan pekerjaan yang lambat sebelum mengonfirmasi callback.

Persyaratan & batasan media

  • Semua media dan URL callback harus berupa URL HTTPS publik. Hindari localhost, IP privat, dan file yang memerlukan cookie atau masuk log. URL referensi video/audio harus mengarah ke media yang dapat dibaca secara langsung.
  • Dalam reference-to-video, sediakan setidaknya satu referensi, dengan tidak lebih dari 30 gambar, 10 video, 10 file audio, dan total gabungan 50 materi. Total durasi video dan total durasi audio masing-masing maksimal 30 detik.
  • text-to-video mengabaikan semua referensi media. image-to-video hanya meneruskan gambar bingkai pertama/terakhir dan mengabaikan referensi video dan audio. Gunakan reference-to-video untuk menggabungkan media.
  • Setiap referensi file video dan audio harus berdurasi 2–30 detik. Untuk contoh pengeditan video, gunakan klip sumber minimal 4 detik.

Ketentuan foto

  • Ukuran setiap foto tidak boleh lebih dari 30 MB.
  • Format yang didukung: jpeg, png, webp, bmp, tiff, gif.
  • Rasio aspek (lebar ÷ tinggi): Antara 0,4 hingga 2,5.
  • Lebar dan tinggi masing-masing harus antara 300 dan 6.000 piksel.

Ketentuan video

  • Format yang didukung: mp4, mov.
  • Ukuran setiap video tidak boleh lebih dari 100 MB.
  • Frame rate: 24 hingga 60 FPS.
  • Rasio aspek (lebar ÷ tinggi): Antara 0,4 hingga 2,5.
  • Total piksel (lebar × tinggi): Antara 407.696 hingga 8.295.044. Sebagai contoh, 614 × 664 = 407.696 dan 3.326 × 2.494 = 8.295.044. Ini adalah contoh jumlah piksel, bukan ketentuan mutlak untuk lebar dan tinggi.

Ketentuan audio

  • Format yang didukung: wav, mp3.
  • Ukuran setiap file audio tidak boleh lebih dari 15 MB.

Error

Error HTTP memiliki objek error dengan kode dan pesan. Tugas yang berhasil diterima masih bisa gagal nanti; kueri tugas atau tangani callback kegagalannya.

{
  "error": {
    "code": "invalid_request",
    "message": "input.prompt is required."
  }
}
HTTPKolomTindakan
400invalid_request
Perbaiki JSON, prompt yang hilang, rentang parameter, atau URL media sebelum mencoba lagi.
401invalid_api_key
Periksa Bearer token dan apakah kunci API aktif.
402insufficient_credits
Tambahkan kredit atau kurangi biaya tugas. Respons mungkin menyertakan jumlah yang diperlukan dan yang tersedia.
403forbidden
Periksa batasan tingkat akun yang dijelaskan dalam pesan kesalahan.
404not_found
Periksa ID tugas dan pastikan kunci tersebut milik pengguna tugas.
429rate_limited
Tunggu interval Retry-After sebelum mencoba lagi.
500internal_error
Periksa pesan error dan log API. Coba lagi dengan hati-hati; mengirim ulang permintaan pembuatan dapat membuat tugas berbayar lainnya.

Batas frekuensi

Membuat tugas: secara default, setiap kunci API mengizinkan hingga 100 permintaan per menit. Batas frekuensi kustom saat ini belum tersedia.

Kueri tugas: secara default, setiap kunci API mengizinkan hingga 120 permintaan per menit. Permintaan kueri dan permintaan pembuatan tugas dihitung secara terpisah.

HTTP 429 menyertakan Retry-After: 60 untuk pembuatan dan Retry-After: 5 untuk kueri. Gunakan backoff dan hindari polling lebih sering dari yang diperlukan.