Media

/v1/media

Gunakan node media untuk mengunggah, mengambil, atau menghapus media.

Edge

Edge berikut terhubung ke node ini:

EdgeDeskripsi

/{media-id}

Gunakan edge ini untuk mengambil dan menghapus media.

Sebelum Memulai

Saat pesan media dikirim, media tersebut disimpan di server WhatsApp untuk 14 hari. Jika pengguna membuat permintaan untuk mengunduh media setelah 14 hari, server WhatsApp akan meminta file media yang sama dari klien di tempat WhatsApp Business. Jika media telah dihapus, pengguna akan diberi tahu bahwa media tidak tersedia.

Tidaklah aman untuk berasumsi bahwa media diunduh hanya berdasarkan tanda terima yang dikirimkan dan telah dibaca. Media keluar umumnya aman untuk dihapus dalam 30 hari terakhir, tetapi Anda harus menggunakan strategi yang paling sesuai dengan bisnis Anda.

Batasan

  • Jika Anda menggunakan proses unggah media daripada menautkan ke URL media, file harus diunggah ke volume media. Setelah unggahan selesai, Anda dapat mengirim pesan menggunakan ID media.
  • Aplikasi akan memproses media yang diunggah sebelum dikirim ke server. Sedangkan ukuran file maksimal untuk media yang bisa diunggah ke node media adalah sebesar 100MB, ada batasan pasca-pemrosesan untuk berbagai jenis media yang diuraikan di Tabel Ukuran Media Pasca-Pemrosesan di bawah.
  • Penyimpanan media perlu ditangani oleh bisnis. Jika volume media penuh, pengiriman pesan akan mulai gagal.
  • Tidak ada dukungan untuk:
    • Mengirim media dengan aliran bita.
    • Mengirim pesan dengan stiker animasi.

Mengunggah

Buat permintaan POST ke /v1/media untuk mengunggah media Anda. Badan permintaan di tempat harus berisi data media biner dan header Content-Type diatur ke jenis media yang sedang diunggah. Lihat bagian Jenis Konten yang Didukung untuk opsi yang didukung.

Mengirim data biner pada permintaan POST HTTP adalah cara standar untuk mengunggah data biner. Jika ingin mengunggah gambar, contoh: Anda mengeluarkan permintaan POST dengan bita gambar sesungguhnya di muatan. Alternatifnya, Anda dapat menggunakan cURL jika Anda ingin --data-binary membaca dan menggunakan file yang diberikan dalam biner persis seperti yang diberikan.

Contoh

Mengunggah media:

POST /v1/media
Content-Type: image/jpeg or other appropriate media type

your-binary-media-data

Mengunggah media dengan cURL:

curl -X POST \
https://your-webapp-hostname:your-webapp-port/v1/media \
-H 'Authorization: Bearer your-auth-token' \ 
-H 'Content-Type: image/jpeg'  \ # or other appropriate media type
--data-binary @your-file-path

Di kedua kasus, tanggapan yang berhasil mengembalikan kolom id, yang Anda perlukan untuk mengambil media atau mengirim pesan media kepada pelanggan Anda.

{
    "media": [
        {
            "id": "f043afd0-f0ae-4b9c-ab3d-696fb4c8cd68"
        }
    ]
}

Jika Anda menerima pesan kesalahan, lihat Pesan Kesalahan dan Status untuk informasi selengkapnya.

Jenis Konten yang Didukung

Media Jenis Konten yang Didukung

audio

audio/aac, audio/mp4, audio/amr, audio/mpeg,
audio/ogg; codecs=opus


Catatan: Untuk ogg/opus, hanya file audio saluran tunggal yang didukung oleh klien WhatsApp.

document

Apa saja jenis MIME yang valid.

image

image/jpeg, image/png


Saat ini, kami tidak mendukung gambar dengan latar belakang transparan.

sticker

image/webp

video

video/mp4, video/3gpp


Catatan:

  • Hanya codec video H.264 dan codec audio AAC yang didukung.
  • Kami mendukung video dengan streaming audio tunggal atau tanpa sreaming audio.

Ukuran Media Pasca-Pemrosesan

Ini adalah ukuran maksimum yang diizinkan untuk file media setelah kompresi dan enkripsi.

Jenis Media Ukuran

audio

16 MB

document

100 MB

image

5 MB

sticker

100 KB

video

16 MB

Pertanyaan Umum

Untuk gambar, keterangan akan ditambahkan sebagai deskripsi. Teks keterangan muncul secara penuh untuk gambar di Android dan iPhone.

Untuk dokumen, keterangan menggantikan nama file. Ini tidak dimaksudkan untuk ditampilkan di perangkat pengguna sebagai teks deskripsi tetapi untuk menunjukkan nama file. iPhone menampilkan teks lengkap sementara Android memotong nama file; ini adalah batasan teknis dari penerapan WhatsApp saat ini di kedua perangkat.

Terserah Anda kapan harus menghapus media.

Setelah mengunggah media, Anda akan menerima ID media, yang dapat Anda gunakan untuk mengirim pesan yang menyertakan elemen media yang diunggah. Setelah mengirim pesan media, API WhatsApp Business akan mengenkripsi dan mengunggah media ke server WhatsApp yang akan tetap ada selama 14 hari. Setelah itu, Anda dapat memutuskan untuk menghapus media tersebut dengan memberikan ID media tersebut atau menyimpannya untuk digunakan nanti. Meskipun kami menyarankan menyimpan media selama 30 hari, terserah Anda untuk memutuskan kebijakan penyimpanan berdasarkan kebijakan atau kasus penggunaan bisnis Anda.

Tidak ada mekanisme pembersihan baik untuk file media yang keluar maupun yang masuk. Anda dapat menghapus file media Anda secara manual dengan menemukan file tersebut di sistem file Anda.

Untuk menemukan titik pemasangan volume media Anda, jalankan perintah docker.

Permintaan

docker volume inspect whatsappMedia

Tanggapan

[
    {
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/whatsappMedia/_data",
        "Name": "whatsappMedia",
        "Options": {},
        "Scope": "local"
    }
]

Kemudian, untuk melihat semua file media yang masuk, Anda dapat menjalankan perintah ls dengan jalur file Mountpoint yang diterima:

ls /var/lib/docker/volumes/whatsappMedia/_data/

Untuk penyiapan AWS, volume media dipasang ke jalur /mnt/wa/media pada host.

Saat mengirimkan gambar sebagai album dari API WhatsApp Business, Anda akan harus mengirimkan setidaknya 4 gambar secara beruntun. Jika tampilan percakapan pengguna sedang aktif saat gambar-gambar itu diterima, tampilan album tidak akan tersedia hingga kunjungan berikutnya.

Album tidak akan dibuat jika salah satu kriteria berikut terpenuhi:

  1. Gambar dengan keterangan
  2. Pembagi belum dibaca - pengguna melihat beberapa gambar saja, tetapi tidak semuanya
  3. Header tanggal - hari baru di antara pengiriman

Tidak, saat ini kami harus menggunakan AWS EFS untuk berbagi volume media antara Coreapp dan Webapp.

Ukuran unggahan file maksimum adalah 64 MB, yang berarti batas ini juga berlaku untuk gambar, dokumen, atau video apa pun yang Anda kirim dengan pesan.

Pelajari Selengkapnya