Langsung ke konten
Wbiztool

API Media

API Ambil file media

Dapatkan detail dan URL unduhan dari satu file di pustaka media Anda berdasarkan ID-nya. Gunakan untuk memastikan file masih ada sebelum Anda mengirimnya.

GEThttps://wbiztool.com/api/v1/media/{media_id}/

Body: Query string, atau body JSON dengan POST

Ganti {media_id} di path dengan id yang dikembalikan oleh Unggah media atau Daftar media, misalnya /api/v1/media/5122/.

Contoh singkat#

curl -G https://wbiztool.com/api/v1/media/5122/ \
  --data-urlencode client_id=12345 \
  --data-urlencode api_key=YOUR_API_KEY

Ganti 12345 dan YOUR_API_KEY dengan nilai Anda sendiri. Lihat Autentikasi untuk mengetahui di mana menemukannya.

Parameter request#

Kirim client_id dan api_key di query string request GET, atau sebagai body JSON di request POST. Jika client_id ada di query string, body JSON diabaikan.

Path

media_idintegerwajib

ID file media. Harus berupa bilangan bulat; nilai lain mengembalikan respons HTML „halaman tidak ditemukan“, bukan JSON.

Autentikasi

client_idintegerwajib

API Client ID Anda dari Settings → API keys (Pengaturan → Kunci API).

api_keystringwajib

API key Anda dari halaman yang sama.

Respons#

{
  "status": 1,
  "message": "Media file retrieved successfully",
  "data": {
    "id": 5122,
    "file_name": "media_12345_17895804001234.pdf",
    "original_file_name": "invoice-4821.pdf",
    "file_url": "https://wbiztool-static.s3.ap-southeast-1.amazonaws.com/media/org_12345/media_12345_17895804001234.pdf",
    "file_type": "file",
    "file_size": 248312,
    "file_size_display": "242.5 KB",
    "mime_type": "application/pdf",
    "is_image": false,
    "file_extension": "pdf",
    "created_at": "2026-09-16T10:20:31.512934+00:00",
    "modified_at": "2026-09-16T10:20:31.512961+00:00",
    "uploaded_by": "[email protected]"
  }
}
FieldTipeDeskripsi
statusinteger1 jika berhasil, 0 jika request gagal.
messagestringMedia file retrieved successfully, selain itu berisi error.
data.idintegerID file media.
data.file_namestringNama penyimpanan file.
data.original_file_namestringNama file saat diunggah.
data.file_urlstringURL unduhan langsung. Gunakan sebagai img_url atau file_url saat mengirim.
data.file_typestringimage atau file.
data.file_sizeintegerUkuran dalam byte.
data.file_size_displaystringUkuran yang mudah dibaca dengan satu desimal, misalnya 242.5 KB.
data.mime_typestringTipe MIME, misalnya application/pdf.
data.is_imagebooleantrue jika file_type bernilai image.
data.file_extensionstringEkstensi original_file_name dalam huruf kecil, tanpa titik.
data.created_atstringWaktu unggah, ISO 8601 dalam UTC dengan offset +00:00.
data.modified_atstringWaktu terakhir data file diubah, dengan format yang sama.
data.uploaded_bystring atau nullUsername login (biasanya alamat email) anggota tim yang mengunggah file.

Error#

Error juga mengembalikan HTTP 200, dengan status bernilai 0:

{ "status": 0, "message": "Media file not found" }

Satu pengecualian: jika media_id bukan angka, URL tidak cocok dengan endpoint mana pun dan Anda mendapatkan halaman HTML 404, bukan JSON.

PesanCara memperbaikinya
client_id is requiredTambahkan client_id.
api_key is requiredTambahkan api_key.
client_id must be a valid integerKirim client_id sebagai angka.
Invalid API keyPastikan key tersebut ada dan belum dihapus atau dinonaktifkan.
Invalid client_id for this API keyKey tersebut milik client_id lain.
Media file not foundTidak ada file dengan ID ini di workspace API key, atau file sudah dihapus.
Error retrieving media file: …Terjadi masalah di sisi kami. Coba lagi.

Periksa file sebelum mengirimnya#

Ambil file berdasarkan ID, berhenti jika file sudah tidak ada, lalu kirim file_url-nya: sebagai img_url dengan msg_type 1 untuk gambar, atau sebagai file_url dengan msg_type 2 untuk jenis lainnya.

Kirim file media yang tersimpan
import requests

BASE = "https://wbiztool.com/api/v1"
AUTH = {"client_id": 12345, "api_key": "YOUR_API_KEY"}

result = requests.get(f"{BASE}/media/5122/", params=AUTH, timeout=60).json()
if result["status"] != 1:
    raise SystemExit("Can't use this file: " + result["message"])

media = result["data"]
message = {
    **AUTH,
    "whatsapp_client": 678,
    "country_code": "91",
    "phone": "9876543210",
    "msg": "Here is the document you asked for.",
}
if media["is_image"]:
    message.update(msg_type=1, img_url=media["file_url"])
else:
    message.update(msg_type=2, file_url=media["file_url"], file_name=media["original_file_name"])

print(requests.post(f"{BASE}/send_msg/", json=message, timeout=60).json())

File non-gambar seperti .doc, .ppt, .csv, .zip, .wav, dan .mov diterima dengan tambahan .pdf di namanya, dan gambar lebih dari 16 MB gagal dikirim. Lihat Unggah media → Unggah lalu kirim.

Tips#

  • File yang dihapus mengembalikan Media file not found, meskipun file_url-nya mungkin masih bisa diunduh. Periksa dengan endpoint ini, bukan dengan mengakses URL-nya. URL file yang diunggah bersifat publik dan permanen; lihat Unggah media → Unggah lalu kirim.
  • File bersifat per workspace. File yang diunggah di satu workspace tidak dapat dibaca dengan API key dari workspace lain.
  • Tidak tahu ID-nya? Cari berdasarkan nama dengan Daftar media.