Skip to content

Unggah Media ​

Kirim gambar, dokumen, atau audio tanpa perlu menyediakan hosting sendiri. Unggah berkasnya ke WAQ, dapatkan URL publik, lalu pakai URL itu di image_url / document_url / audio_url.

Mengunggah ​

Permintaan multipart/form-data dengan satu field bernama file:

bash
curl -X POST https://waq.karyawah.id/v1/media \
  -H "Authorization: Bearer $TOKEN" \
  -F "file=@promo.jpg"
json
{
  "url": "https://waq.karyawah.id/media/5f11802ed4e91525e39eebd7e28a4730.jpg",
  "filename": "5f11802ed4e91525e39eebd7e28a4730.jpg",
  "original_name": "promo.jpg",
  "mime": "image/png",
  "size": 84213
}

API key juga berlaku di endpoint ini:

bash
curl -X POST https://waq.karyawah.id/v1/media \
  -H "X-API-Key: $API_KEY" -F "file=@invoice.pdf"

Memakainya ​

bash
curl -X POST https://waq.karyawah.id/v1/messages/send \
  -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
  -d '{
    "device_id": "<device_id>",
    "to": "6281234567890",
    "type": "image",
    "image_url": "https://waq.karyawah.id/media/5f11802ed4e91525e39eebd7e28a4730.jpg",
    "caption": "Promo bulan ini"
  }'

Jenis berkas yang diterima ​

KategoriTipe
GambarJPEG, PNG, WebP, GIF
DokumenPDF, DOC, DOCX, XLS, XLSX
AudioMP3, OGG, M4A

Ukuran maksimal 16 MB per berkas. Tipe di luar daftar ditolak dengan 400 unsupported_type.

Catatan keamanan ​

  • Nama berkas selalu diganti dengan 32 karakter acak; ekstensinya diturunkan dari tipe berkas yang terdeteksi, bukan dari nama yang kamu kirim. Berkas berbahaya tak bisa menyelinap lewat penamaan.
  • URL hasil unggah bersifat publik tapi tidak bisa ditebak — WhatsApp perlu mengambilnya dari luar, jadi tidak bisa dikunci di balik login. Jangan mengunggah dokumen rahasia yang tak boleh dilihat siapa pun yang memegang URL-nya.
  • Berkas tersimpan permanen sampai dihapus manual oleh admin.