Video Transcription API

March 16, 2026

Video Transcription API

Kirimkan video atau file audio dan terima transkrip tingkat kata dengan identifikasi pembicara. API ini mendukung video dari platform utama dan file video/audio yang diunggah secara lokal, beserta pengaturan bahasa.

Sumber Video yang Didukung

API menerima URL dari platform berikut: YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble, dan lainnya.

Anda juga dapat mengunggah file video atau audio secara lokal. Unggah lokal memerlukan paket Standard atau lebih tinggi. Lihat Upload API untuk detailnya.

Alur Kerja

  1. Kirim tugas transkripsi dari URL video
  2. Polling hasil hingga status menjadi SUCCEEDED

Kirim Tugas Transkripsi

Kirimkan tugas transkripsi baru dari URL video atau audio.

POST https://wayinvideo-api.wayin.ai/api/v2/transcripts

Body Permintaan

ParameterTipeWajibDefaultDeskripsi
video_urlstringYaURL video/audio sumber atau identifier file yang diunggah
source_langstringTidaknullBahasa sumber video (lihat Bahasa yang Didukung). Jika null, sistem mendeteksi bahasa asli secara otomatis.
target_langstringTidaknullBahasa target untuk transkrip (lihat Bahasa yang Didukung). Jika null, tidak ada penerjemahan yang diterapkan. Jika target_lang berbeda dari bahasa asli video, transkrip akan diterjemahkan secara otomatis ke bahasa target.

Contoh Permintaan

curl -X POST https://wayinvideo-api.wayin.ai/api/v2/transcripts \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -d '{
    "video_url": "https://www.youtube.com/watch?v=example",
    "target_lang": "en"
  }'

Respons

{
  "data": {
    "id": "trans_proj_001",
    "name": "sample project name",
    "status": "CREATED"
  }
}
FieldTipeDeskripsi
idstringIdentifier tugas (digunakan untuk mengambil hasil)
namestringNama tugas
statusstringCREATED, QUEUED, ONGOING, SUCCEEDED, FAILED

Ambil Hasil Transkripsi

Ambil transkrip dengan stempel waktu tingkat kata dan label pembicara. Lakukan polling hingga status menjadi SUCCEEDED.

GET https://wayinvideo-api.wayin.ai/api/v2/transcripts/results/{id}

Parameter Path

ParameterTipeWajibDeskripsi
idstringYaID tugas yang dikembalikan oleh endpoint pengiriman

Contoh Permintaan

curl -X GET https://wayinvideo-api.wayin.ai/api/v2/transcripts/results/trans_proj_001 \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2"

Respons

{
  "data": {
    "status": "SUCCEEDED",
    "cost_usage": 27.0,
    "transcript": [
      {
        "text": "Welcome to today's presentation",
        "language": null,
        "start": 200,
        "end": 4500,
        "speaker": "Speaker 1"
      },
      {
        "text": "Thanks for coming",
        "language": null,
        "start": 5000,
        "end": 8200,
        "speaker": "Speaker 2"
      }
    ]
  }
}

Field Respons

FieldTipeDeskripsi
statusstringCREATED, QUEUED, ONGOING, SUCCEEDED, FAILED
error_messagestringAlasan error (hanya ada saat status adalah FAILED)
cost_usagenumberKredit API yang digunakan untuk permintaan ini
transcriptarrayDaftar segmen transkrip (lihat di bawah)

Segmen Transkrip

FieldTipeDeskripsi
textstringTeks yang ditranskripsikan
languagestring | nullKode bahasa yang terdeteksi, atau null jika tidak terdeteksi
startintegerWaktu mulai dalam milidetik
endintegerWaktu berakhir dalam milidetik
speakerstringLabel pembicara (mis. "Speaker 1")