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

मैसेजिंग API

संदेश कैंसल करें API

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

POSThttps://wbiztool.com/api/v1/cancel_msg/

बॉडी: JSON या फॉर्म फील्ड

आप कोई भी ऐसा संदेश कैंसल कर सकते हैं जो अभी भेजे जाने का इंतज़ार कर रहा है (स्टेटस 0, Created): शेड्यूल किए गए संदेश, और संदेश भेजें, ग्रुप में भेजें या कई नंबरों पर भेजें से कतार में डाले गए संदेश। जो संदेश पहले ही भेजा जा चुका है, उसे वापस नहीं लिया जा सकता। अगर उसी पल कोई बॉट वह संदेश भेज रहा है, तो वह फिर भी जा सकता है, इसलिए ज़रूरी कैंसलेशन के लिए संदेश स्टेटस से पुष्टि करें।

छोटा उदाहरण#

curl -X POST https://wbiztool.com/api/v1/cancel_msg/ \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": 12345,
    "api_key": "YOUR_API_KEY",
    "msg_id": 9817263
  }'

12345 और YOUR_API_KEY की जगह अपनी वैल्यू डालें, और 9817263 की जगह वह msg_id डालें जो आपको संदेश भेजते या शेड्यूल करते समय मिला था।

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

client_idintegerआवश्यक

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

api_keystringआवश्यक

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

msg_idintegerआवश्यक

भेजने या शेड्यूल करने वाली रिक्वेस्ट से लौटा msg_id। यह आपकी API की वाले वर्कस्पेस का होना चाहिए।

इस एंडपॉइंट को whatsapp_client की ज़रूरत नहीं है।

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

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

from wbiztool_client import WbizToolClient

client = WbizToolClient(api_key="YOUR_API_KEY", client_id=12345)

result = client.cancel_message(msg_id=9817263)
print(result)

दोनों क्लाइंट ऑथेंटिकेशन एरर (HTTP 400/403) पर एक्सेप्शन देते हैं: Python requests.HTTPError raise करता है, और Node.js API error: 400 - {…} throw करता है। Msg has been … वाला जवाब status: 0 के साथ एक सामान्य नतीजे के रूप में आता है।

रिस्पॉन्स#

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

{
  "message": "Cancelled",
  "status": 1
}
फील्डटाइपविवरण
statusintegerसंदेश कैंसल हो गया तो 1, नहीं हुआ तो 0
messagestringसफल होने पर Cancelled, वरना वजह।

कैंसल करने के बाद संदेश स्टेटस संदेश को 3 (Cancelled) बताता है। कैंसल किया गया संदेश भेजा नहीं जाता, उसका वेबहुक ट्रिगर नहीं होता और वह आपके बचे हुए क्रेडिट में नहीं गिना जाता।

एरर#

ज़्यादातर एरर HTTP 200 के साथ आते हैं और उनमें status 0 होता है, इसलिए हमेशा बॉडी में status जांचें:

{ "message": "Msg has been Sent", "status": 0 }
संदेशकैसे ठीक करें
Msg has been Sentसंदेश पहले ही भेजा जा चुका है। इसे कैंसल नहीं किया जा सकता।
Msg has been Failedसंदेश पहले ही फेल हो चुका है, इसलिए कैंसल करने को कुछ नहीं है।
Msg has been Cancelledसंदेश पहले ही कैंसल किया जा चुका है।
Msg has been Expiredसंदेश भेजे जाने से पहले ही एक्सपायर हो गया, इसलिए कैंसल करने को कुछ नहीं है।
No msg found for given msg_idmsg_id जांचें। यह नंबर होना चाहिए और आपकी API की वाले वर्कस्पेस का होना चाहिए।
Msg_id cant be nullmsg_id जोड़ें।
Auth Errorclient_id और api_key दोनों भेजें।
Invalid Client Idclient_id को नंबर के रूप में भेजें। HTTP 403 के साथ लौटता है।
Auth Error: invalid api keyजांचें कि की मौजूद है, डिलीट नहीं हुई है और इसी client_id की है। HTTP 400 के साथ लौटता है।
Invalid JSON format: …JSON बॉडी सही नहीं है, अक्सर आखिर में छूटे कॉमा (trailing comma) की वजह से, या आपने client_id के बिना फॉर्म फील्ड भेजे हैं।
खाली ऑब्जेक्ट {}JSON बॉडी POST के अलावा किसी दूसरे मेथड से भेजी गई।

सुझाव#

  • हर msg_id सेव करें: कैंसल करने के लिए आपको इसकी ज़रूरत होगी। कई नंबरों पर भेजें के लिए, रिस्पॉन्स के हर msg_id को अलग-अलग कैंसल करें।
  • जल्दी कैंसल करें: एक बार भेजा गया संदेश वापस नहीं होता, इसलिए जैसे ही पता चले कि शेड्यूल किए गए संदेशों की ज़रूरत नहीं है, उन्हें कैंसल कर दें।
  • दोबारा शेड्यूल करना: शेड्यूल किया गया समय बदलने के लिए कोई एंडपॉइंट नहीं है। संदेश कैंसल करें और नया संदेश शेड्यूल करें
  • पहले से अंतिम स्टेटस वाले संदेशों को पूरा मानें: Msg has been … जवाब का मतलब है कि संदेश अब कतार में नहीं है, इसलिए दोबारा कोशिश करने की ज़रूरत नहीं है।