Felo API PlatformFelo API Platform
v0.4.0
OpenAPI 3.1.0

Kirim tugas pembuatan video

Server:https://openapi.felo.ai
Pustaka Klien

Kirim tugas pembuatan video

​

Membuat tugas pembuatan video asinkron dan langsung mengembalikan task_id (HTTP 202). Lakukan polling GET /api/v1/videos/generations/{task_id} hingga berhasil. Body permintaan dapat diberikan dalam bentuk datar ({model, prompt, ...}) atau bertingkat ({model, input: {prompt, ...}}); objek input diutamakan jika ada. Field callback (callBackUrl / callback_url / callbackUrl) diabaikan.

Tiga mode input yang saling eksklusif:

  • text-to-video: hanya prompt;
  • image-to-video (frame pertama/terakhir): first_frame_url (+ last_frame_url opsional);
  • omni-reference: reference_image_urls / reference_video_urls / reference_audio_urls. Mencampur frame pertama/terakhir dengan input referensi multimodal apa pun akan mengembalikan 400 invalid_request_error.
Header
  • X-Request-Id
    Tipe: string

    ID permintaan pemanggil opsional yang dikembalikan untuk diagnostik.

  • X-Felo-Channel
    Tipe: string

    Kode kanal publik yang dipisahkan koma dan berurutan. Hilangkan header ini untuk menggunakan default; default harus digunakan sendiri. Dalam mode wallet, default memindai urutan kanal publik efektif model secara terbalik, melewati kanal yang tidak dipublikasikan atau tidak tersedia, dan memilih penyedia kanal pertama yang tersedia. Ini mencakup endpoint yang tersedia dari penyedia tersebut dengan ID model upstream dan tingkat layanan yang sama. Kanal eksplisit divalidasi dalam urutan yang ditentukan klien; hanya grup penyedia kanal pertama yang dikirimkan. Tidak ada fallback otomatis ke penyedia lain. Header penyedia lama tidak dapat menimpa perutean kanal.

Isi·VideoGenerationRequest
wajib
application/json

Input pembuatan video. Berupa datar ({model, prompt, ...}) atau bertingkat ({model, input: {...}}). input diutamakan. Tepat satu mode input harus digunakan; mencampur frame pertama/terakhir dengan input referensi multimodal akan ditolak.

  • model
    Tipe: string
    wajib

    Nama model yang digunakan di Felo, misalnya seedance-2.0-mini.

  • aspect_ratio
    Tipe: string enum
    nilai
    • 16:9
    • 9:16
    • 1:1
    • 4:3
    • 3:4
    • 21:9
    • adaptive
  • duration
    Tipe: integer
    min:  
    4
    maks:  
    15

    Integer numbers.

  • first_frame_url
    Tipe: string Format: uri
  • generate_audio
    Tipe: boolean
  • input
    Tipe: object

    Objek input bertingkat opsional; jika ada, field-nya diutamakan di atas field sejajar.

    • aspect_ratio
      Tipe: string enum

      Rasio aspek keluaran; adaptive mengikuti rasio gambar input.

      nilai
      • 16:9
      • 9:16
      • 1:1
      • 4:3
      • 3:4
      • 21:9
      • adaptive
    • duration
      Tipe: integer
      min:  
      4
      maks:  
      15

      Durasi keluaran dalam detik.

    • first_frame_url
      Tipe: string Format: uri

      URL gambar frame pertama (mode image-to-video).

    • generate_audio
      Tipe: boolean

      Apakah akan menghasilkan trek audio yang tersinkronisasi.

    • last_frame_url
      Tipe: string Format: uri

      URL gambar frame terakhir; harus digunakan bersama first_frame_url.

    • prompt
      Tipe: string
      panjang maks:  
      2000

      Prompt. Wajib untuk mode text-to-video dan omni-reference.

    • reference_audio_urls
      Tipe: array string[] …3Format: uri

      Klip audio referensi omni.

    • reference_image_urls
      Tipe: array string[] …9Format: uri

      Gambar referensi omni. Saling eksklusif dengan frame pertama/terakhir.

    • reference_video_urls
      Tipe: array string[] …3Format: uri

      Video referensi omni. Saling eksklusif dengan frame pertama/terakhir. Menyertakan video mengubah harga satuan tagihan dan menambahkan durasi input ke jumlah token.

    • resolution
      Tipe: string enum

      Resolusi keluaran. Resolusi lebih tinggi menghabiskan lebih banyak token dan lebih mahal.

      nilai
      • 480p
      • 720p
      • 1080p
      • 4k
    • service_tier
      Tipe: string | null

      Saat ini hanya default (standard) yang didukung. Nilai yang dihilangkan, null, alias, dan string yang tidak didukung akan kembali ke default; tipe lain mengembalikan HTTP 400. Kanal dan harga yang dikonfigurasi tetap tidak berubah. API teks mengirim nilai standar penyedia; API Decisions dan pembuatan menghilangkan field upstream.

  • last_frame_url
    Tipe: string Format: uri
  • prompt
    Tipe: string
    panjang maks:  
    2000
  • reference_audio_urls
    Tipe: array string[] …3Format: uri
  • reference_image_urls
    Tipe: array string[] …9Format: uri
  • reference_video_urls
    Tipe: array string[] …3Format: uri
  • resolution
    Tipe: string enum
    nilai
    • 480p
    • 720p
    • 1080p
    • 4k
  • service_tier
    Tipe: string | null

    Saat ini hanya default (standard) yang didukung. Nilai yang dihilangkan, null, alias, dan string yang tidak didukung akan kembali ke default; tipe lain mengembalikan HTTP 400. Kanal dan harga yang dikonfigurasi tetap tidak berubah. API teks mengirim nilai standar penyedia; API Decisions dan pembuatan menghilangkan field upstream.

Respons
  • 202
    Tipe: object · VideoGenerationAccepted

    Tugas diterima

    • kind
      enum
      const:  
      video
      wajib
      nilai
      • video
    • outputs
      Tipe: array string[]
      wajib

      Kosong hingga tugas berhasil.

    • status
      enum
      const:  
      queued
      wajib
      nilai
      • queued
    • task_id
      Tipe: string
      wajib

      ID tugas yang digunakan untuk polling.

    application/json
  • 400
    Tipe: object · GenerationError

    Permintaan tidak valid (model tidak dikenal, mode input tercampur, field tidak valid)

    Envelope error yang kompatibel dengan OpenAI.

    • error
      Tipe: object
      • message
        Tipe: string
        wajib
      • type
        Tipe: string enum
        wajib
        nilai
        • invalid_request_error
        • server_error
      • code
        Tipe: string
      • param
        Tipe: string boleh null
    application/json
  • 401
    Tipe: object · GenerationError

    Kunci API Felo tidak valid atau tidak ada

    Envelope error yang kompatibel dengan OpenAI.

    • error
      Tipe: object
      • message
        Tipe: string
        wajib
      • type
        Tipe: string enum
        wajib
        nilai
        • invalid_request_error
        • server_error
      • code
        Tipe: string
      • param
        Tipe: string boleh null
    application/json
  • 402
    Tipe: object · GenerationError

    Saldo tidak cukup / persyaratan tagihan tidak terpenuhi

    Envelope error yang kompatibel dengan OpenAI.

    • error
      Tipe: object
      • message
        Tipe: string
        wajib
      • type
        Tipe: string enum
        wajib
        nilai
        • invalid_request_error
        • server_error
      • code
        Tipe: string
      • param
        Tipe: string boleh null
    application/json
  • 403
    Tipe: object · GenerationError

    Akun tidak diizinkan (diperlukan langganan atau pengguna diblokir). Model yang dinonaktifkan juga ditolak sebelum panggilan upstream. Permintaan dan tugas yang sudah diterima tetap berlanjut.

    Envelope error yang kompatibel dengan OpenAI.

    • error
      Tipe: object
      • message
        Tipe: string
        wajib
      • type
        Tipe: string enum
        wajib
        nilai
        • invalid_request_error
        • server_error
      • code
        Tipe: string
      • param
        Tipe: string boleh null
    application/json
  • 429
    Tipe: object · GenerationError

    Batas permintaan atau pengeluaran tercapai

    Envelope error yang kompatibel dengan OpenAI.

    • error
      Tipe: object
      • message
        Tipe: string
        wajib
      • type
        Tipe: string enum
        wajib
        nilai
        • invalid_request_error
        • server_error
      • code
        Tipe: string
      • param
        Tipe: string boleh null
    application/json
  • 502
    Tipe: object · GenerationError

    Penyedia upstream gagal

    Envelope error yang kompatibel dengan OpenAI.

    • error
      Tipe: object
      • message
        Tipe: string
        wajib
      • type
        Tipe: string enum
        wajib
        nilai
        • invalid_request_error
        • server_error
      • code
        Tipe: string
      • param
        Tipe: string boleh null
    application/json
  • 503
    Tipe: object · GenerationError

    Layanan pembuatan atau layanan tagihan sementara tidak tersedia

    Envelope error yang kompatibel dengan OpenAI.

    • error
      Tipe: object
      • message
        Tipe: string
        wajib
      • type
        Tipe: string enum
        wajib
        nilai
        • invalid_request_error
        • server_error
      • code
        Tipe: string
      • param
        Tipe: string boleh null
    application/json
Request Example for post/api/v1/videos/generations
curl https://openapi.felo.ai/api/v1/videos/generations \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "model": "seedance-2.0-mini",
  "prompt": "a cinematic trailer shot, 720p",
  "resolution": "720p",
  "duration": 5,
  "generate_audio": true
}'
{
  "task_id": "string",
  "status": "queued",
  "kind": "video",
  "outputs": [
    "string"
  ]
}
Submit a video generation task