Messaging-API
An WhatsApp-Gruppe senden (Send Message to a WhatsApp Group API)
Senden Sie einen WhatsApp-Text, ein Bild oder ein Dokument an eine WhatsApp-Gruppe, in der Ihre verbundene Nummer Mitglied ist. Nutzen Sie die API für Team-Ankündigungen, Community-Updates und Rundbenachrichtigungen.
https://wbiztool.com/api/v1/send_msg/group/Body: JSON, Formularfelder oder multipart/form-data beim Hochladen einer Datei
Die Nachricht wird in die Warteschlange gestellt und von Ihrer WhatsApp-Nummer an die Gruppe gesendet. Die Antwort enthält eine msg_id, mit der Sie ihren Status prüfen können.
Kurzes Beispiel#
curl -X POST https://wbiztool.com/api/v1/send_msg/group/ \
-H "Content-Type: application/json" \
-d '{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 0,
"group_name": "Sales Team Mumbai",
"msg": "Reminder: *weekly review* starts at 4 PM today."
}'import requests
response = requests.post(
"https://wbiztool.com/api/v1/send_msg/group/",
json={
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 0,
"group_name": "Sales Team Mumbai",
"msg": "Reminder: *weekly review* starts at 4 PM today.",
},
timeout=60,
)
result = response.json() # read the body even when the HTTP code is 400
if result.get("status") == 1:
print("Queued with msg_id", result["msg_id"])
else:
print("Failed:", result.get("message"))// Node.js 18+ (built-in fetch). Save as .mjs to use top-level await.
const response = await fetch("https://wbiztool.com/api/v1/send_msg/group/", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
client_id: 12345,
api_key: "YOUR_API_KEY",
whatsapp_client: 678,
msg_type: 0,
group_name: "Sales Team Mumbai",
msg: "Reminder: *weekly review* starts at 4 PM today.",
}),
});
const result = await response.json(); // read the body even when the HTTP code is 400
if (result.status === 1) {
console.log("Queued with msg_id", result.msg_id);
} else {
console.error("Failed:", result.message);
}<?php
$payload = [
'client_id' => 12345,
'api_key' => 'YOUR_API_KEY',
'whatsapp_client' => 678,
'msg_type' => 0,
'group_name' => 'Sales Team Mumbai',
'msg' => 'Reminder: *weekly review* starts at 4 PM today.',
];
$ch = curl_init('https://wbiztool.com/api/v1/send_msg/group/');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode($payload),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 60,
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
if (($result['status'] ?? 0) === 1) {
echo 'Queued with msg_id ' . $result['msg_id'];
} else {
echo 'Failed: ' . ($result['message'] ?? 'no response');
}Ersetzen Sie 12345, YOUR_API_KEY und 678 durch Ihre eigenen Werte. Wo Sie diese finden, steht unter Authentifizierung.
Request-Parameter#
Authentifizierung
client_idintegererforderlichIhre API-Client-ID aus Einstellungen → API-Schlüssel.
api_keystringerforderlichIhr API-Schlüssel von derselben Seite.
whatsapp_clientintegerErforderlich, wenn der Inhaber mehr als eine verbundene Nummer hatID der WhatsApp-Nummer, von der gesendet wird, aus den WhatsApp-Einstellungen. Es muss eine Nummer sein, die dem Inhaber des Arbeitsbereichs gehört. Wenn Sie den Parameter weglassen und der Inhaber genau eine verbundene Nummer hat, wird diese Nummer verwendet.
Gruppe und Nachricht
group_namestringerforderlichName der WhatsApp-Gruppe, genau so geschrieben, wie er in WhatsApp angezeigt wird. Senden Sie ihn als String. Eine JSON-Zahl wie
2024liefert eine HTML-Fehlerseite (HTTP500). Siehe Wie die Gruppe gefunden wird.msg_typeintegeroptional0Text (Standard),1Bild,2Datei oder Dokument.msgstringErforderlich, wenn msg_type 0 istNachrichtentext. Bei Bildern und Dateien ist es die Bildunterschrift, die leer sein darf. WhatsApp-Formatierung funktioniert:
*bold*,_italic_,~strikethrough~.messagewird als Alias akzeptiert.
Bilder und Dateien
img_urlstringErforderlich, wenn msg_type 1 ist und keine Datei hochgeladen wirdÖffentliche
http- oderhttps-URL des Bildes.file_urlstringErforderlich, wenn msg_type 2 ist und keine Datei hochgeladen wirdÖffentliche
http- oderhttps-URL, von der die Datei direkt heruntergeladen werden kann.filefileoptionalLaden Sie das Bild oder die Datei hoch, statt eine URL anzugeben. Senden Sie den Request als
multipart/form-datamit einem Feld namensfile.file_namestringoptionalDateiname, den die Gruppe sieht, zum Beispiel
price-list.pdf. Die Dateiendung bestimmt, wie die Datei gesendet wird, geben Sie also eine an. Er wird in Kleinbuchstaben gesendet, Zeichen wie& : ? * $ ;werden durch_ersetzt, und er wird auf 150 Zeichen gekürzt. Wenn Sie den Parameter weglassen, wird der Name aus der URL oder der hochgeladenen Datei übernommen.
Zustelloptionen
expire_after_secondsintegeroptionalMarkiert die Nachricht als abgelaufen (Status
4), wenn sie nicht innerhalb dieser Anzahl Sekunden gesendet wurde, zum Beispiel3600für eine Stunde. Ein Hintergrundjob erledigt das frühestens 30 Sekunden nach Fristablauf. Verlassen Sie sich daher bei Fristen unter einer Minute nicht darauf.webhookstringoptionalURL, die einen
POSTerhält, wenn die Nachricht gesendet wird oder fehlschlägt. Der Payload ist derselbe wie bei Nachricht senden.
Für Bilder und Dateien gelten dieselben Regeln wie bei Nachricht senden: URLs werden beim Aufruf der API heruntergeladen (bis zu 100 MB). Beim Senden der Nachricht schlagen Bilder über 16 MB und Videos über 64 MB fehl, WAV- und OGG-Audio wird nicht unterstützt, und an Dateien (msg_type 2) ohne unterstützte Endung wird .pdf angehängt, auch an hochgeladene. Dateinamen werden in Kleinbuchstaben gesendet. Die vollständige Liste der Endungen und Fehler finden Sie unter Bilder und Dateien senden.
Um eine Datei hochzuladen, verwenden Sie die Multipart-Beispiele unter Nachricht senden und ersetzen die URL durch /api/v1/send_msg/group/ sowie phone/country_code durch group_name.
curl -X POST https://wbiztool.com/api/v1/send_msg/group/ \
-H "Content-Type: application/json" \
-d '{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 1,
"group_name": "Sales Team Mumbai",
"img_url": "https://example.com/reports/weekly-sales.png",
"msg": "This week'\''s sales summary"
}'import requests
response = requests.post(
"https://wbiztool.com/api/v1/send_msg/group/",
json={
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 1,
"group_name": "Sales Team Mumbai",
"img_url": "https://example.com/reports/weekly-sales.png",
"msg": "This week's sales summary",
},
timeout=60,
)
print(response.json())// Node.js 18+ (built-in fetch). Save as .mjs to use top-level await.
const response = await fetch("https://wbiztool.com/api/v1/send_msg/group/", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
client_id: 12345,
api_key: "YOUR_API_KEY",
whatsapp_client: 678,
msg_type: 1,
group_name: "Sales Team Mumbai",
img_url: "https://example.com/reports/weekly-sales.png",
msg: "This week's sales summary",
}),
});
console.log(await response.json());<?php
$ch = curl_init('https://wbiztool.com/api/v1/send_msg/group/');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'client_id' => 12345,
'api_key' => 'YOUR_API_KEY',
'whatsapp_client' => 678,
'msg_type' => 1,
'group_name' => 'Sales Team Mumbai',
'img_url' => 'https://example.com/reports/weekly-sales.png',
'msg' => "This week's sales summary",
]),
CURLOPT_RETURNTRANSFER => true,
]);
echo curl_exec($ch);
curl_close($ch);Wie die Gruppe gefunden wird#
Wbiztool prüft den Gruppennamen nicht, wenn Sie die API aufrufen. Beim Senden der Nachricht sucht Wbiztool in Ihren WhatsApp-Chats nach group_name und öffnet das erste Ergebnis. Deshalb gilt:
- Ihre verbundene WhatsApp-Nummer muss Mitglied der Gruppe sein.
- Verwenden Sie den vollständigen Gruppennamen genau so, wie WhatsApp ihn anzeigt, einschließlich Emojis und Satzzeichen. Leerzeichen am Anfang und Ende werden ignoriert.
- Wählen Sie einen eindeutigen Namen. Ein kurzer oder unvollständiger Name kann auf einen anderen Chat passen, der in der Suche zuerst erscheint.
- Wenn nichts passt, in der Gruppe nur Admins Nachrichten senden dürfen und Ihre Nummer kein Admin ist, oder nur Community-Admins posten dürfen, schlägt die Nachricht mit dem Fehler
Group not foundfehl. - Wenn Ihre Nummer die Gruppe verlassen hat, schlägt die Nachricht mit dem Fehler
Group member blockedfehl.
Probleme mit der Gruppe erscheinen nicht in der API-Antwort. Verwenden Sie einen Webhook oder Nachrichtenstatus, um herauszufinden, ob die Nachricht gesendet wurde.
Offiziellen Client verwenden#
Der Python-Client ruft diesen Endpoint für Sie auf.
from wbiztool_client import WbizToolClient
client = WbizToolClient(api_key="YOUR_API_KEY", client_id=12345)
result = client.send_message_to_group(
group_name="Sales Team Mumbai",
msg="Reminder: weekly review starts at 4 PM today.",
whatsapp_client=678,
)
print(result)Fehler lösen requests.HTTPError aus. Den Grund lesen Sie mit e.response.json()["message"].
Antwort#
Ein erfolgreicher Request gibt HTTP 200 zurück:
{
"status": 1,
"message": "Created",
"msg_id": 9817263
}
| Feld | Typ | Beschreibung |
|---|---|---|
status | integer | 1, wenn die Nachricht in die Warteschlange gestellt wurde, 0, wenn der Request fehlgeschlagen ist. |
message | string | Created bei Erfolg, andernfalls der Fehler. |
msg_id | integer | ID der Nachricht in der Warteschlange. Speichern Sie sie, um später den Status zu prüfen. Nur bei Erfolg vorhanden. |
"status": 1 bedeutet, dass die Nachricht in die Warteschlange gestellt wurde, nicht, dass sie die Gruppe erreicht hat. Verwenden Sie einen Webhook oder Nachrichtenstatus, um den Versand zu bestätigen.
Fehler#
Fehler geben HTTP 400 mit status gleich 0 zurück:
{ "status": 0, "message": "Group Name cant be null" }
| Meldung | Lösung |
|---|---|
Auth Error - Please send correct API key and Client id | Senden Sie einen nicht leeren api_key. |
Invalid client id. | Senden Sie client_id als Zahl. |
Auth Error: invalid api key | Prüfen Sie, ob der Schlüssel existiert, nicht gelöscht wurde und zu dieser client_id gehört. |
Group Name cant be null | Fügen Sie group_name hinzu. |
Msg cant be null | Textnachrichten (msg_type 0) benötigen msg. |
Image Url Can't be null | Senden Sie für msg_type 1 eine img_url oder laden Sie eine file hoch. |
File Url Can't be null | Senden Sie für msg_type 2 eine file_url oder laden Sie eine file hoch. |
Invalid file url, Can't download / Invalid file url | Die URL ist nicht öffentlich, das Zeitlimit wurde überschritten oder die Datei ist größer als 100 MB. |
Invalid whatsapp client None | Diese whatsapp_client-ID gehört nicht dem Inhaber des Arbeitsbereichs. Siehe den Warnhinweis oben. |
Invalid whatsapp client id. | Senden Sie whatsapp_client. Der Parameter ist erforderlich, es sei denn, der Inhaber hat genau eine verbundene Nummer. |
Not enough credits | Ihr Plan hat keine Nachrichten mehr übrig. |
Demo Account can not access apis | Verwenden Sie ein reguläres Konto. |
Account Disabled | Ihr Konto ist deaktiviert. Kontaktieren Sie den Support. |
Invalid JSON format: … | Der JSON-Body ist ungültig, oft wegen eines abschließenden Kommas oder eines nicht maskierten Zeilenumbruchs in msg. Verwenden Sie \n für neue Zeilen. |
Tipps#
- Namen zuerst testen: Senden Sie einen kurzen Text an die Gruppe und prüfen Sie Nachrichtenstatus, bevor Sie etwas automatisieren.
- Umbenannte Gruppen: Wenn jemand die Gruppe in WhatsApp umbenennt, passen Sie
group_nameauch in Ihrer Integration an. - Nachrichtentypen: Für
msg_typesind nur0,1und2gültig. Jeder Wert, der keine ganze Zahl ist, liefert statt JSON eine HTML-Fehlerseite (HTTP500). - Mehrere Gruppen auf einmal: An mehrere Nummern senden akzeptiert Gruppennamen gemischt mit Telefonnummern in einem Request.
