İçeriğe geç
Wbiztool

Medya API'si

Medya dosyası getirme API'si

Medya kitaplığınızdaki bir dosyanın ayrıntılarını ve indirme URL'sini ID'siyle alın. Bir dosyayı göndermeden önce hâlâ var olduğunu kontrol etmek için kullanın.

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

Gövde: Sorgu dizesi veya POST ile bir JSON gövdesi

Yoldaki {media_id} değerini Medya yükleme veya Medya listeleme tarafından döndürülen id ile değiştirin; örneğin /api/v1/media/5122/.

Hızlı örnek#

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

12345 ve YOUR_API_KEY değerlerini kendi değerlerinizle değiştirin. Bunları nerede bulacağınız için Kimlik doğrulama bölümüne bakın.

İstek parametreleri#

client_id ve api_key değerlerini bir GET isteğinin sorgu dizesinde veya bir POST isteğinde JSON gövdesi olarak gönderin. client_id sorgu dizesindeyse JSON gövdesi yok sayılır.

Yol

media_idintegerzorunlu

Medya dosyasının ID'si. Bir tam sayı olmalıdır; diğer her şey JSON yerine bir HTML „sayfa bulunamadı" yanıtı döndürür.

Kimlik doğrulama

client_idintegerzorunlu

Ayarlar → API anahtarları sayfasındaki API Client ID'niz.

api_keystringzorunlu

Aynı sayfadaki API anahtarınız.

Yanıt#

{
  "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]"
  }
}
AlanTürAçıklama
statusintegerBaşarıda 1, istek başarısız olduysa 0.
messagestringMedia file retrieved successfully, aksi halde hata mesajı.
data.idintegerMedya dosyasının ID'si.
data.file_namestringDosyanın kaydedildiği ad.
data.original_file_namestringDosyanın yüklendiği andaki adı.
data.file_urlstringDoğrudan indirme URL'si. Gönderirken img_url veya file_url olarak kullanın.
data.file_typestringimage veya file.
data.file_sizeintegerBayt cinsinden boyut.
data.file_size_displaystringTek ondalıklı okunabilir boyut, örneğin 242.5 KB.
data.mime_typestringMIME türü, örneğin application/pdf.
data.is_imagebooleanfile_type değeri image olduğunda true.
data.file_extensionstringoriginal_file_name değerinin noktasız, küçük harfli uzantısı.
data.created_atstringYükleme zamanı, +00:00 farkıyla UTC'de ISO 8601.
data.modified_atstringDosya kaydının son değiştirildiği zaman, aynı biçimde.
data.uploaded_bystring veya nullDosyayı yükleyen ekip üyesinin giriş kullanıcı adı (genellikle e-posta adresi).

Hatalar#

Hatalar da status değeri 0 olarak HTTP 200 döndürür:

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

Bir istisna: media_id bir sayı değilse URL hiçbir endpoint ile eşleşmez ve JSON yerine bir HTML 404 sayfası alırsınız.

MesajNasıl düzeltilir
client_id is requiredclient_id ekleyin.
api_key is requiredapi_key ekleyin.
client_id must be a valid integerclient_id değerini sayı olarak gönderin.
Invalid API keyAnahtarın mevcut olduğunu ve silinmediğini veya devre dışı bırakılmadığını kontrol edin.
Invalid client_id for this API keyAnahtar farklı bir client_id değerine ait.
Media file not foundAPI anahtarının çalışma alanında bu ID'ye sahip bir dosya yok veya silinmiş.
Error retrieving media file: …Bizim tarafımızda bir sorun oluştu. Tekrar deneyin.

Göndermeden önce dosyayı kontrol etme#

Dosyayı ID ile getirin, artık yoksa durun, ardından file_url değerini gönderin: görseller için msg_type 1 ile img_url olarak, diğer her şey için msg_type 2 ile file_url olarak.

Kayıtlı bir medya dosyasını gönderme
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())

.doc, .ppt, .csv, .zip, .wav ve .mov gibi görsel olmayan dosyalar adlarına .pdf eklenerek teslim edilir ve 16 MB'tan büyük görseller gönderilemez. Bkz. Medya yükleme → Yükleme ve gönderme.

İpuçları#

  • Silinen dosyalar Media file not found döndürür, ancak file_url adresleri hâlâ indirilebilir olabilir. URL'yi getirerek değil, bu endpoint ile kontrol edin. Yüklenen dosya URL'leri herkese açık ve kalıcıdır; bkz. Medya yükleme → Yükleme ve gönderme.
  • Dosyalar çalışma alanına özeldir. Bir çalışma alanında yüklenen bir dosya, başka bir çalışma alanının API anahtarıyla okunamaz.
  • ID'yi bilmiyor musunuz? Medya listeleme ile ada göre arayın.