Clips Export API

April 1, 2026

Clips Export API

Gunakan API ini ketika Anda telah membuat tugas AI Clipping atau Find Moments dan ingin merender klip nanti, atau mengekspornya ulang dengan gaya subtitel berbeda, rasio aspek, AI hook, atau pengaturan ekspor lainnya.

project_id harus berupa ID tugas asli yang dikembalikan oleh:

  • POST /api/v2/clips
  • POST /api/v2/clips/find-moments

Kirim Tugas Ekspor

POST https://wayinvideo-api.wayin.ai/api/v2/clips/export

Body Permintaan

ParameterTipeWajibDefaultDeskripsi
project_idstringYaID tugas AI Clipping atau Find Moments asli.
clip_indicesinteger[]TidaknullIndeks klip yang akan diekspor. Jika dihilangkan, sistem mengekspor semua klip dalam proyek.
target_langstringTidaknullBahasa target untuk konten output termasuk subtitel (lihat Bahasa yang Didukung). Jika null, bahasa output mengikuti bahasa tugas sumber.
resolutionstringTidakSD_480Resolusi output: SD_480, HD_720, FHD_1080, QHD_2K, UHD_4K.
enable_captionbooleanTidakfalseApakah akan menambahkan Animated Caption saat rendering. Jika true, caption_display dan cc_style_tpl berlaku; jika false, ekspor tidak memiliki Animated Caption.
caption_displaystringTidakoriginalMode subtitel: both, original, translation. Hanya digunakan saat enable_caption adalah true.
cc_style_tplstringTidaktemp-7ID template gaya subtitel (lihat Gaya Subtitel). Hanya digunakan saat enable_caption adalah true.
enable_ai_hookbooleanTidakfalseApakah akan menambahkan hook teks yang menarik perhatian dan dihasilkan secara otomatis di awal atau akhir setiap klip yang diekspor. Jika true, ai_hook_script_style dan ai_hook_position berlaku; jika false, tidak ada AI hook yang ditambahkan.
ai_hook_script_stylestringTidakseriousGaya teks hook yang dihasilkan. Nilai yang diizinkan: serious, casual, informative, conversational, humorous, parody, inspirational, dramatic, empathetic, persuasive, neutral, excited, calm. Hanya digunakan saat enable_ai_hook adalah true.
ai_hook_positionstringTidakbeginningPosisi teks hook yang dihasilkan. Nilai yang diizinkan: beginning, end. Hanya digunakan saat enable_ai_hook adalah true.
ai_hook_keywordsstringTidaknullKata kunci opsional untuk mengarahkan teks AI hook yang dihasilkan. Hanya digunakan saat enable_ai_hook adalah true.
ai_hook_text_durationintegerTidaknullDurasi overlay teks AI hook dalam milidetik. Hanya digunakan saat enable_ai_hook adalah true.
enable_ai_reframebooleanTidakfalseAktifkan AI Reframe. Jika true, ratio wajib diisi; jika false, klip diekspor dengan rasio aspek aslinya tidak berubah.
ratiostringYa jika enable_ai_reframe adalah trueRasio aspek: RATIO_9_16, RATIO_1_1, RATIO_4_5, RATIO_16_9. Wajib saat enable_ai_reframe adalah true.

Contoh Permintaan

curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips/export \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -d '{
    "project_id": "proj_abc123",
    "clip_indices": [0, 2],
    "resolution": "UHD_4K",
    "enable_caption": true,
    "caption_display": "both",
    "cc_style_tpl": "word-focus",
    "enable_ai_hook": true,
    "ai_hook_script_style": "serious",
    "ai_hook_position": "beginning",
    "enable_ai_reframe": true,
    "ratio": "RATIO_9_16"
  }'

Respons Pengiriman

{
  "data": {
    "export_task_id": "export_task_xyz789",
    "name": "sample export task",
    "status": "CREATED"
  }
}
FieldTipeDeskripsi
export_task_idstringIdentifier tugas ekspor unik. Gunakan nilai ini untuk melakukan polling progres ekspor.
namestringNama tugas ekspor
statusstringCREATED, QUEUED, ONGOING, SUCCEEDED, FAILED

Ambil Hasil Ekspor

Lakukan polling tugas ekspor hingga status menjadi SUCCEEDED.

GET https://wayinvideo-api.wayin.ai/api/v2/clips/export/{taskId}

Parameter Path

ParameterTipeWajibDeskripsi
taskIdstringYaexport_task_id yang dikembalikan oleh endpoint pengiriman ekspor

Contoh Permintaan

curl -X GET https://wayinvideo-api.wayin.ai/api/v2/clips/export/export_task_xyz789 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2"

Contoh Respons

{
  "data": {
    "export_task_id": "export_task_xyz789",
    "name": "sample export task",
    "status": "SUCCEEDED",
    "expire_at": 1775831883112,
    "cost_usage": 48.0,
    "clips": [
      {
        "idx": 0,
        "title": "sample title",
        "begin_ms": 15000,
        "end_ms": 75000,
        "thumbnail": "https://cdn.example.com/thumb/clip_001.jpg",
        "tags": ["insight", "analysis"],
        "desc": "sample description",
        "score": 81,
        "export_link": "https://cdn.example.com/export/clip_001.mp4"
      }
    ]
  }
}

Field Respons

FieldTipeDeskripsi
export_task_idstringIdentifier tugas ekspor unik
namestringNama tugas ekspor
statusstringCREATED, QUEUED, ONGOING, SUCCEEDED, FAILED
error_messagestringAlasan error (hanya ada saat status adalah FAILED)
expire_atintegerStempel waktu kedaluwarsa dalam milidetik (epoch). Setelah waktu ini, tugas kedaluwarsa dan hasil tidak dapat lagi diambil melalui endpoint hasil ekspor.
cost_usagenumberKredit API yang digunakan untuk permintaan ekspor ini
clipsarrayDaftar objek klip yang diekspor. Saat status adalah ONGOING, mungkin berisi hasil ekspor parsial; saat status adalah SUCCEEDED, berisi semua klip yang diekspor.

Objek clips yang dikembalikan oleh endpoint hasil ekspor menggunakan struktur yang sama dengan objek klip di endpoint hasil utama, termasuk export_link untuk setiap klip yang telah dirender.