Sign inGet started

Menerima video WhatsApp

Klip yang direkam atau dilampirkan kontak masuk sebagai pesan inbound yang membawa video: referensi media yang sama dengan yang digunakan setiap cabang media inbound, ditambah caption yang mereka ketik di bawahnya.

Isi video inbound

Contoh kode
{
  "id": "wam_01kyc5r9pewu7s3j6m0xyd5qgb",
  "direction": "inbound",
  "from": { "phone_number": "+14155550100" },
  "to": { "phone_number": "+13124495569" },
  "status": "received",
  "video": {
    "id": "waf_01kyc4n5yr8xit1e9o4qsw7ufa",
    "url": "https://platform.bird.com/v1/whatsapp/messages/wam_01kyc5r9pewu7s3j6m0xyd5qgb/media/waf_01kyc4n5yr8xit1e9o4qsw7ufa",
    "mime_type": "video/mp4",
    "caption": "The rattle starts around 0:12"
  },
  "created_at": "2026-08-25T09:11:48Z"
}
FieldIsinya
idFile tersimpan, diteruskan sebagai media_id saat mengambil byte
urlURL Bird, diambil dengan kunci API Anda
mime_typeTipe media yang dilaporkan WhatsApp untuk klip tersebut, misalnya video/mp4
captionTeks yang diketik kontak di bawah video; tidak ada jika mereka tidak mengirimnya
Cabang ini tidak membawa durasi, dimensi, maupun thumbnail. Baca informasi tersebut dari file itu sendiri setelah Anda mendapatkan byte-nya, atau dari pipeline media Anda sendiri.
id dan mime_type hanya muncul pada video inbound, karena Bird mengetahui keduanya dengan mengambil file tersebut. Video outbound terbaca kembali dengan url yang Anda berikan dan tanpa id.

Mengambil byte

Teruskan ID pesan dan id media ke metode media channel. Halaman mengambil media inbound di hub memuat panggilan tersebut dalam setiap bahasa, beserta aturan redirect dan header yang diikutinya.
Video adalah hal terbesar yang kemungkinan dikirim kontak kepada Anda, dan pengambilan menyajikan byte langsung dari penyimpanan, bukan melalui API, jadi streaming respons ke disk atau bucket Anda sendiri alih-alih menyimpannya di buffer. Pesan dan medianya kedaluwarsa bersamaan, 30 hari setelah pesan tiba; halaman mengambil media inbound di hub mengatur jendela waktu tersebut dan apa yang dikembalikan setelah jendela itu berlalu.

Payload webhook

whatsapp.received membawa cabang video pada envelope event:
Contoh kode
{
  "type": "whatsapp.received",
  "timestamp": "2026-08-25T09:11:48.204Z",
  "data": {
    "whatsapp_id": "wam_01kyc5r9pewu7s3j6m0xyd5qgb",
    "workspace_id": "ws_01ky7m235keycbnwyajabe1a6b",
    "direction": "inbound",
    "from": { "phone_number": "+14155550100" },
    "to": { "phone_number": "+13124495569" },
    "video": {
      "id": "waf_01kyc4n5yr8xit1e9o4qsw7ufa",
      "url": "https://platform.bird.com/v1/whatsapp/messages/wam_01kyc5r9pewu7s3j6m0xyd5qgb/media/waf_01kyc4n5yr8xit1e9o4qsw7ufa",
      "mime_type": "video/mp4",
      "caption": "The rattle starts around 0:12"
    },
    "tags": null,
    "metadata": null
  }
}
Ambil klip dari worker antrean, bukan di dalam handler webhook: endpoint harus merespons dengan cepat, dan media tetap tersedia selama seluruh jendela retensi.

Hal yang perlu diperhatikan

  • Video note terbaca sebagai video. Video note bulat dari WhatsApp masuk pada cabang ini tanpa flag pembeda, tidak seperti audio, di mana voice note menyetel voice.
  • Satu klip per pesan. Beberapa video masuk sebagai beberapa pesan inbound, masing-masing dengan referensi medianya sendiri.

Langkah selanjutnya