Zum Inhalt springen
Wbiztool

Media-API

Medien hochladen (API)

Laden Sie ein Bild, ein Dokument, eine Audio- oder eine Videodatei in die Medienbibliothek Ihres Arbeitsbereichs hoch und erhalten Sie eine Download-URL zurück. Übergeben Sie diese URL an Nachricht senden oder, nur bei Bildern, als img_url an Erinnerung erstellen, wenn Sie kein eigenes Datei-Hosting haben.

POSThttps://wbiztool.com/api/v1/media/upload/

Body: multipart/form-data

Die Datei wird sofort gespeichert, und die Antwort enthält ihre file_url. Hochgeladene Dateien erscheinen außerdem auf der Seite Medienverzeichnis in Ihrem Dashboard.

Kurzes Beispiel#

curl -X POST https://wbiztool.com/api/v1/media/upload/ \
  -F client_id=12345 \
  -F api_key=YOUR_API_KEY \
  -F media_file=@./invoice-4821.pdf

Ersetzen Sie 12345 und YOUR_API_KEY durch Ihre eigenen Werte. Wo Sie diese finden, steht unter Authentifizierung.

Request-Parameter#

Senden Sie den Request als multipart/form-data. JSON-Bodys und Query-String-Parameter werden von diesem Endpoint nicht gelesen.

client_idintegererforderlich

Ihre API-Client-ID aus Einstellungen → API-Schlüssel.

api_keystringerforderlich

Ihr API-Schlüssel von derselben Seite.

media_filefileerforderlich

Die hochzuladende Datei, bis zu 64 MB. Ihr Typ wird anhand der Endung des Dateinamens bestimmt, der Name muss daher auf eine der unterstützten Endungen enden.

Unterstützte Dateitypen#

KategorieEndungen
Bilder.jpg, .jpeg, .png, .gif
Dokumente.pdf, .doc, .xls, .ppt, .txt, .csv
Audio.mp3, .wav
Video.mp4, .mov
Archive.zip

Bilder werden mit file_type gleich image gespeichert, alles andere als file.

Antwort#

Ein erfolgreicher Request gibt HTTP 200 zurück:

{
  "status": 1,
  "message": "File uploaded 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"
  }
}
FeldTypBeschreibung
statusinteger1, wenn die Datei hochgeladen wurde, 0, wenn der Request fehlgeschlagen ist.
messagestringFile uploaded successfully, andernfalls der Fehler.
data.idintegerID der Mediendatei. Verwenden Sie sie mit Mediendatei abrufen.
data.file_namestringName, unter dem die Datei gespeichert ist, von Wbiztool generiert.
data.original_file_namestringDer Name der hochgeladenen Datei.
data.file_urlstringDirekte Download-URL. Verwenden Sie sie beim Senden als img_url oder file_url.
data.file_typestringimage oder file.
data.file_sizeintegerGröße in Bytes.
data.file_size_displaystringLesbare Größe mit einer Nachkommastelle, zum Beispiel 242.5 KB.
data.mime_typestringAus der Endung ermittelter MIME-Typ, zum Beispiel application/pdf.
data.is_imagebooleantrue, wenn file_type den Wert image hat.
data.file_extensionstringEndung von original_file_name in Kleinbuchstaben, ohne Punkt.
data.created_atstringUpload-Zeitpunkt, ISO 8601 in UTC mit der Abweichung +00:00.

Fehler#

Auch Fehler geben HTTP 200 zurück, mit status gleich 0:

{ "status": 0, "message": "File is too large. Maximum size is 64MB. Your file: 71.3MB" }
MeldungLösung
Only POST method is supportedSenden Sie einen POST-Request.
client_id is requiredFügen Sie client_id als Formularfeld hinzu. Prüfen Sie, ob der Body multipart/form-data ist und nicht JSON.
api_key is requiredFügen Sie api_key als Formularfeld hinzu.
media_file is requiredSenden Sie die Datei in einem Feld namens media_file.
client_id must be a valid integerSenden Sie client_id als Zahl.
Invalid API keyPrüfen Sie, ob der Schlüssel existiert und nicht gelöscht oder deaktiviert wurde.
Invalid client_id for this API keyDer Schlüssel gehört zu einer anderen client_id.
File is too large. Maximum size is 64MB. Your file: …MBLaden Sie eine Datei mit höchstens 64 MB hoch.
File type not supported. Type detected: …Verwenden Sie eine der unterstützten Endungen.
Error uploading file: …Der Upload konnte nicht abgeschlossen werden. Versuchen Sie es erneut. Diese Meldung erhalten Sie auch, wenn der API-Schlüssel mit keinem Arbeitsbereich verknüpft ist; erstellen Sie einen neuen Schlüssel in dem Arbeitsbereich, den Sie verwenden möchten.

Hochladen und senden#

Laden Sie die Datei hoch und übergeben Sie dann file_url an Nachricht senden: als img_url mit msg_type 1 für Bilder oder als file_url mit msg_type 2 für andere Dateien.

PDF hochladen und senden
import requests

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

with open("invoice-4821.pdf", "rb") as f:
    upload = requests.post(f"{BASE}/media/upload/", data=AUTH, files={"media_file": f}, timeout=120).json()
if upload["status"] != 1:
    raise SystemExit("Upload failed: " + upload["message"])

media = upload["data"]
message = {
    **AUTH,
    "whatsapp_client": 678,
    "country_code": "91",
    "phone": "9876543210",
    "msg": "Your invoice for order #4821 is attached.",
}
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"])

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

Nachricht senden hat eine eigene Liste von Dateiendungen. Von den Typen, die diese API akzeptiert, werden .doc-, .ppt-, .csv-, .zip-, .wav- und .mov-Dateien, die mit msg_type 2 gesendet werden, mit angehängtem .pdf im Namen zugestellt (zum Beispiel brochure.doc.pdf). Konvertieren Sie Dokumente vor dem Senden in PDF. Siehe Bilder und Dateien senden. Der Name wird außerdem in Kleinbuchstaben gesendet (Invoice-4821.PDF kommt als invoice-4821.pdf an).

Mit msg_type 1 gesendete Bilder dürfen höchstens 16 MB groß sein. Größere Bilder lassen sich hier zwar hochladen, schlagen aber beim Senden mit File exceeds WhatsApp size limit (16MB max) fehl. Komprimieren Sie sie vorher oder senden Sie sie als Datei mit msg_type 2.

Tipps#

  • Uploads wiederverwenden. Speichern Sie die id oder file_url und senden Sie dieselbe Datei mehrfach, statt sie erneut hochzuladen.
  • Aussagekräftige Originalnamen verwenden. original_file_name sehen Sie im Dashboard, und der Wert eignet sich gut als file_name beim Senden.
  • Frühere Uploads finden Sie mit Medien auflisten.