Mengenal File Media

Fitur File Media memungkinkan upload berbagai jenis file ke dalam aplikasi Whapi untuk digunakan saat pengiriman pesan media melalui API atau dashboard.
Prasyarat
- Sudah login ke dashboard Whapi
- Perangkat sudah terhubung dan aktif
- API Key tersedia untuk upload via API
Format File yang Didukung
| Kategori | Format |
|---|---|
| Gambar | .jpg, .jpeg, .gif, .png, .webp |
| Video | .mp4, .3gp |
| Audio | .mp3, .ogg, .m4a |
| Dokumen | .pdf, .docx, .xlsx, .pptx, .txt |
| Stiker | .webp (animasi atau statis) |
File dengan format .jpg, .jpeg, .gif, dan .pdf mendukung tombol pratinjau di dashboard untuk melihat isi file sebelum digunakan.
Upload File via Dashboard
- Masuk ke menu Utilitas > File Media di dashboard
- Klik tombol Upload
- Pilih file dari komputer
- File yang terupload akan muncul di daftar dan siap digunakan
Upload File via API
File juga bisa diupload langsung melalui endpoint API menggunakan multipart/form-data.
- Script PHP
- Script Javascript/Nodejs
- Script Python
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://localhost:3000/api/uploadFileMedia',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('apiKey' => 'api_key','file_whapi'=> new CURLFILE('/C:/Users/d0v3riz/Downloads/a.jpeg','mime_type_file')),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var axios = require('axios');
var FormData = require('form-data');
var fs = require('fs');
var data = new FormData();
data.append('apiKey', 'api_key');
data.append('file_whapi', fs.createReadStream('/C:/Users/d0v3riz/Downloads/a.jpeg'));
var config = {
method: 'post',
url: 'http://localhost:3000/api/uploadFileMedia',
headers: {
...data.getHeaders()
},
data : data
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
import requests
url = "http://localhost:3000/api/uploadFileMedia"
payload={'apiKey': 'api_key'}
files=[
('file_whapi',('a.jpeg',open('/C:/Users/d0v3riz/Downloads/a.jpeg','rb'),'image/jpeg'))
]
headers = {}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Menggunakan File yang Sudah Diupload
Setelah file terupload, gunakan URL atau ID file tersebut di endpoint pengiriman media berikut:
| Endpoint | Keterangan |
|---|---|
| POST /api/sendMediaFromLocal | Kirim media ke nomor personal |
| POST /api/sendMediaFromLocalGroup | Kirim media ke grup WhatsApp |
Error Umum dan Solusinya
| Kondisi | Penyebab | Solusi |
|---|---|---|
| File tidak muncul setelah upload | Format file tidak didukung | Periksa daftar format yang didukung dan pastikan file tidak corrupt |
| Ukuran file terlalu besar | Melebihi batas ukuran yang diizinkan | Kompres file atau gunakan URL eksternal via endpoint sendMediaFromUrl |
| Preview tidak tersedia | Format file tidak mendukung preview | Preview hanya tersedia untuk .jpg, .jpeg, .gif, dan .pdf |