मुख्य सामग्री पर जाएं
Wbiztool

मैसेजिंग API

WhatsApp ग्रुप में संदेश भेजें API

किसी ऐसे WhatsApp ग्रुप में WhatsApp टेक्स्ट, इमेज या डॉक्यूमेंट भेजें जिसका आपका कनेक्टेड नंबर सदस्य है। इसका इस्तेमाल टीम अनाउंसमेंट, कम्युनिटी अपडेट और ब्रॉडकास्ट नोटिफिकेशन के लिए करें।

POSThttps://wbiztool.com/api/v1/send_msg/group/

बॉडी: JSON, फॉर्म फील्ड, या फाइल अपलोड करते समय multipart/form-data

संदेश कतार में जाता है और आपके WhatsApp नंबर से ग्रुप में भेजा जाता है। रिस्पॉन्स में आपको एक msg_id मिलता है, जिससे आप उसका स्टेटस जांच सकते हैं।

छोटा उदाहरण#

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."
  }'

12345, YOUR_API_KEY और 678 की जगह अपनी वैल्यू डालें। ये कहां मिलेंगी, यह जानने के लिए ऑथेंटिकेशन देखें।

रिक्वेस्ट पैरामीटर#

ऑथेंटिकेशन

client_idintegerआवश्यक

सेटिंग्स → API Keys से आपका API क्लाइंट ID।

api_keystringआवश्यक

उसी पेज से आपकी API की।

whatsapp_clientintegerमालिक के एक से ज़्यादा कनेक्टेड नंबर होने पर ज़रूरी

जिस WhatsApp नंबर से भेजना है उसका ID, WhatsApp सेटिंग्स से। यह ऐसा नंबर होना चाहिए जो वर्कस्पेस के मालिक का हो। अगर आप इसे नहीं भेजते और मालिक का ठीक एक कनेक्टेड नंबर है, तो वही नंबर इस्तेमाल होता है।

ग्रुप और संदेश

group_namestringआवश्यक

WhatsApp ग्रुप का नाम, ठीक वैसा ही जैसा WhatsApp में दिखता है। इसे string के रूप में भेजें। 2024 जैसा JSON नंबर एक HTML एरर पेज (HTTP 500) लौटाता है। ग्रुप कैसे ढूंढा जाता है देखें।

msg_typeintegerवैकल्पिक

0 टेक्स्ट (डिफ़ॉल्ट), 1 इमेज, 2 फाइल या डॉक्यूमेंट।

msgstringmsg_type 0 होने पर ज़रूरी

संदेश का टेक्स्ट। इमेज और फाइलों के लिए यह कैप्शन होता है और खाली भी हो सकता है। WhatsApp फॉर्मेटिंग काम करती है: *bold*, _italic_, ~strikethrough~message को भी इसके दूसरे नाम (alias) के रूप में स्वीकार किया जाता है।

इमेज और फाइलें

img_urlstringmsg_type 1 होने और कोई फाइल अपलोड न होने पर ज़रूरी

इमेज का सार्वजनिक http या https URL।

file_urlstringmsg_type 2 होने और कोई फाइल अपलोड न होने पर ज़रूरी

सार्वजनिक http या https URL, जिससे फाइल सीधे डाउनलोड की जा सके।

filefileवैकल्पिक

URL देने के बजाय इमेज या फाइल अपलोड करें। रिक्वेस्ट को multipart/form-data के रूप में भेजें, और फील्ड का नाम file रखें।

file_namestringवैकल्पिक

ग्रुप को दिखने वाला फाइल नाम, जैसे price-list.pdf। इसके एक्सटेंशन से तय होता है कि फाइल कैसे भेजी जाएगी, इसलिए एक्सटेंशन ज़रूर लिखें। यह छोटे अक्षरों (lower case) में भेजा जाता है, & : ? * $ ; जैसे कैरेक्टर _ से बदल दिए जाते हैं, और इसे 150 कैरेक्टर तक काट दिया जाता है। अगर आप इसे नहीं भेजते, तो नाम URL या अपलोड की गई फाइल से लिया जाता है।

डिलीवरी विकल्प

expire_after_secondsintegerवैकल्पिक

अगर संदेश इतने सेकंड में नहीं भेजा गया, तो उसे एक्सपायर (स्टेटस 4) मार्क करें, जैसे एक घंटे के लिए 3600। यह काम एक बैकग्राउंड जॉब डेडलाइन के कम से कम 30 सेकंड बाद करता है, इसलिए एक मिनट से छोटी डेडलाइन के लिए इस पर भरोसा न करें।

webhookstringवैकल्पिक

वह URL जिसे संदेश भेजे जाने या फेल होने पर एक POST मिलता है। पेलोड वही है जो संदेश भेजें में है।

इमेज और फाइलों पर वही नियम लागू होते हैं जो संदेश भेजें पर: URL API कॉल करते समय डाउनलोड किए जाते हैं (100 MB तक)। संदेश भेजते समय 16 MB से बड़ी इमेज और 64 MB से बड़े वीडियो फेल होते हैं, WAV और OGG ऑडियो सपोर्ट नहीं होते, और बिना समर्थित एक्सटेंशन वाली फाइलों (msg_type 2) में .pdf जुड़ जाता है, अपलोड की गई फाइलों में भी। फाइल के नाम छोटे अक्षरों (lower case) में भेजे जाते हैं। एक्सटेंशन और एरर की पूरी सूची के लिए इमेज और फाइलें भेजना देखें।

फाइल अपलोड करने के लिए संदेश भेजें पर दिए multipart उदाहरण इस्तेमाल करें, URL को /api/v1/send_msg/group/ से और phone/country_code को group_name से बदलकर।

URL से इमेज
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"
  }'

ग्रुप कैसे ढूंढा जाता है#

API कॉल करते समय Wbiztool ग्रुप का नाम नहीं जांचता। संदेश भेजते समय Wbiztool आपकी WhatsApp चैट में group_name खोजता है और पहला नतीजा खोलता है। इसलिए:

  • आपका कनेक्टेड WhatsApp नंबर ग्रुप का सदस्य होना चाहिए।
  • ग्रुप का पूरा नाम ठीक वैसा ही लिखें जैसा WhatsApp में दिखता है, इमोजी और विराम चिह्नों समेत। शुरुआत और आखिर के स्पेस नज़रअंदाज़ किए जाते हैं।
  • नाम यूनिक रखें। छोटा या अधूरा नाम किसी दूसरी चैट से मैच हो सकता है जो खोज में पहले दिखती है।
  • अगर कुछ भी मैच नहीं होता, ग्रुप में सिर्फ एडमिन संदेश भेज सकते हैं और आपका नंबर एडमिन नहीं है, या सिर्फ कम्युनिटी एडमिन पोस्ट कर सकते हैं, तो संदेश Group not found एरर के साथ फेल हो जाता है।
  • अगर आपका नंबर ग्रुप छोड़ चुका है, तो संदेश Group member blocked एरर के साथ फेल हो जाता है।

ग्रुप से जुड़ी समस्याएं API रिस्पॉन्स में नहीं दिखतीं। संदेश भेजा गया या नहीं, यह जानने के लिए वेबहुक या संदेश स्टेटस इस्तेमाल करें।

आधिकारिक क्लाइंट का इस्तेमाल#

Python क्लाइंट आपके लिए यह एंडपॉइंट कॉल करता है।

Python
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)

एरर होने पर requests.HTTPError रेज़ होता है। वजह e.response.json()["message"] से पढ़ें।

रिस्पॉन्स#

सफल रिक्वेस्ट HTTP 200 लौटाती है:

{
  "status": 1,
  "message": "Created",
  "msg_id": 9817263
}
फील्डटाइपविवरण
statusintegerसंदेश कतार में चला गया हो तो 1, रिक्वेस्ट फेल हुई हो तो 0
messagestringसफल होने पर Created, वरना एरर।
msg_idintegerकतार में गए संदेश का ID। बाद में स्टेटस जांचने के लिए इसे सेव करें। केवल सफल होने पर मौजूद होता है।

"status": 1 का मतलब है कि संदेश कतार में चला गया है, यह नहीं कि वह ग्रुप तक पहुंच गया है। संदेश भेजा गया या नहीं, यह पक्का करने के लिए वेबहुक या संदेश स्टेटस इस्तेमाल करें।

एरर#

एरर HTTP 400 लौटाते हैं और status की वैल्यू 0 होती है:

{ "status": 0, "message": "Group Name cant be null" }
संदेशकैसे ठीक करें
Auth Error - Please send correct API key and Client idखाली न हो ऐसा api_key भेजें।
Invalid client id.client_id को नंबर के रूप में भेजें।
Auth Error: invalid api keyजांचें कि की मौजूद है, डिलीट नहीं हुई है और इसी client_id की है।
Group Name cant be nullgroup_name जोड़ें।
Msg cant be nullटेक्स्ट संदेशों (msg_type 0) के लिए msg ज़रूरी है।
Image Url Can't be nullmsg_type 1 के लिए img_url भेजें या file अपलोड करें।
File Url Can't be nullmsg_type 2 के लिए file_url भेजें या file अपलोड करें।
Invalid file url, Can't download / Invalid file urlURL सार्वजनिक नहीं है, टाइम आउट हो गया, या फाइल 100 MB से बड़ी है।
Invalid whatsapp client Noneवह whatsapp_client ID वर्कस्पेस के मालिक का नहीं है। ऊपर दी गई चेतावनी देखें।
Invalid whatsapp client id.whatsapp_client भेजें। यह तब तक ज़रूरी है जब तक मालिक का ठीक एक कनेक्टेड नंबर न हो।
Not enough creditsआपके प्लान में कोई संदेश नहीं बचा है।
Demo Account can not access apisसामान्य अकाउंट इस्तेमाल करें।
Account Disabledआपका अकाउंट डिसेबल है। सपोर्ट से संपर्क करें
Invalid JSON format: …JSON बॉडी सही नहीं है, अक्सर आखिर में लगे अतिरिक्त कॉमा या msg में बिना escape किए लाइन ब्रेक की वजह से। नई लाइन के लिए \n इस्तेमाल करें।

सुझाव#

  • पहले नाम टेस्ट करें: कुछ भी ऑटोमेट करने से पहले ग्रुप में एक छोटा टेक्स्ट भेजें और संदेश स्टेटस जांचें।
  • नाम बदले गए ग्रुप: अगर कोई WhatsApp में ग्रुप का नाम बदल देता है, तो अपने इंटीग्रेशन में भी group_name अपडेट करें।
  • संदेश टाइप: msg_type के लिए सिर्फ 0, 1 और 2 मान्य वैल्यू हैं। पूर्ण संख्या के अलावा कोई भी वैल्यू JSON की जगह HTML एरर पेज (HTTP 500) लौटाती है।
  • एक साथ कई ग्रुप: कई नंबरों पर भेजें एक ही रिक्वेस्ट में फोन नंबरों के साथ ग्रुप के नाम भी स्वीकार करता है।