Sign inGet started

WhatsApp रिएक्शन प्राप्त करना

रिएक्शन परिवर्तनों को सब्सक्राइब करें ताकि आपको पता चले कि कोई संपर्क आपके किसी संदेश पर emoji कब जोड़ता है, बदलता है या हटाता है। रिएक्शन किसी मौजूदा संदेश से जुड़ते हैं और whatsapp.reacted के माध्यम से आते हैं।

पूर्वापेक्षाएँ

अपने वर्कस्पेस के लिए एक webhook endpoint सेट अप करें। मौजूदा रिएक्शन या उनका इतिहास प्राप्त करने के लिए, WhatsApp read अनुमति वाली API key का उपयोग करें।

1. रिएक्शन परिवर्तनों को सब्सक्राइब करें

अपनी webhook subscription में whatsapp.reacted जोड़ें। whatsapp.received की subscription में रिएक्शन शामिल नहीं होते। सिग्नेचर सत्यापन, डिलीवरी रीट्राई और endpoint कॉन्फ़िगरेशन के लिए webhooks गाइड का पालन करें।
रिएक्शन मैसेज लिस्ट में नया संदेश नहीं बनाते और न ही कस्टमर सर्विस विंडो खोलते हैं। अगर आपको जवाब देना हो, तो फ़्री-फ़ॉर्म संदेश भेजने से पहले सर्विस विंडो नियम देखें।

2. संदेश और परिवर्तन की पहचान करें

इवेंट का data.whatsapp_id पढ़ें ताकि वह संदेश मिल सके जिस पर संपर्क ने रिएक्ट किया। यह मूल Bird मैसेज ID (wam_…) है, कोई अलग रिएक्शन ID नहीं।
संपर्क की पहचान के लिए data.from और अपने WhatsApp सेंडर की पहचान के लिए data.to का उपयोग करें। ये WhatsApp address ऑब्जेक्ट हैं; जब संपर्क के address में कोई फ़ोन नंबर न हो तो business-scoped user IDs को हैंडल करें।
एक संपर्क द्वारा thumbs-up रिएक्शन जोड़ने पर यह webhook उत्पन्न होता है:
कोड उदाहरण
{
  "data": {
    "emoji": "👍",
    "from": { "phone_number": "+14155550100" },
    "to": { "phone_number": "+13124495569" },
    "whatsapp_id": "wam_01ky8b3xq4gd7pmzn2ka51f7te",
    "workspace_id": "ws_01ky7m235keycbnwyajabe1a6b"
  },
  "timestamp": "2026-08-28T19:01:10.000Z",
  "type": "whatsapp.reacted"
}
data.emoji को इस प्रकार समझें:
  • एक non-null emoji संदर्भित संदेश पर उस संपर्क का रिएक्शन जोड़ता या बदलता है।
  • एक null emoji उस संपर्क का रिएक्शन हटाता है। यह फ़ील्ड removal इवेंट में मौजूद होती है।
एक प्रतिस्थापन एकल इवेंट के रूप में नए emoji के साथ आता है; पुराने emoji के लिए कोई अलग removal इवेंट नहीं होता। सटीक स्ट्रिंग को संरक्षित रखें: और ❤️ पेलोड में अलग-अलग मान हैं।

3. मौजूदा रिएक्शन प्राप्त करें

अगर आपका एप्लिकेशन किसी संदेश से जुड़ा मौजूदा रिएक्शन दिखाता है, तो संदेश प्राप्त करें और उसका reactions पढ़ें। इस सूची में प्रति सेंडर एक स्थायी रिएक्शन होता है और जब कोई रिएक्शन नहीं होता तो इसे छोड़ दिया जाता है।
GET /v1/whatsapp/messages/wam_01ky8b3xq4gd7pmzn2ka51f7te के लिए, रिएक्शन-संबंधित फ़ील्ड इस आकार में होते हैं (अन्य मैसेज फ़ील्ड छोड़े गए हैं):
कोड उदाहरण
{
  "id": "wam_01ky8b3xq4gd7pmzn2ka51f7te",
  "reactions": [
    {
      "emoji": "👍",
      "from": { "phone_number": "+14155550100" }
    }
  ]
}
संदेश अपनी मूल सामग्री, दिशा और डिलीवरी स्थिति बनाए रखता है। reactions[].from उस व्यक्ति की पहचान करता है जिसने रिएक्ट किया।
आपको प्राप्त हुए अंतिम webhook को मौजूदा स्थिति न मानें। WhatsApp रिएक्शन समय सेकंड तक रिपोर्ट करता है, इसलिए परिवर्तन एक ही टाइमस्टैम्प साझा कर सकते हैं, और webhook रीट्राई आगमन क्रम बदल सकती हैं। संदेश के मौजूदा रिएक्शन रीफ़्रेश करने के लिए webhooks का उपयोग करें।

4. रिएक्शन इतिहास देखें

संदर्भित संदेश पर हुए परिवर्तनों को देखने के लिए रिएक्शन इवेंट सूचीबद्ध करें। आने वाले संपर्क परिवर्तनों की स्थिति received होती है; removal में emoji: null होता है। सूची में आपके वर्कस्पेस द्वारा भेजे गए रिएक्शन के परिणाम भी शामिल हैं।
reaction-events API एक पेजिनेटेड प्रतिक्रिया लौटाता है। यह उदाहरण एक अस्वीकृत बिज़नेस रिएक्शन और एक पहले प्राप्त संपर्क रिएक्शन दिखाता है:
कोड उदाहरण
{
  "data": [
    {
      "id": "war_01krdgeqcxet5s7t44vh8rt9mh",
      "emoji": "🎉",
      "status": "rejected",
      "from": {
        "phone_number": "+13124495569"
      },
      "error": {
        "code": "internal_error",
        "description": "the receiving number is no longer connected",
        "occurred_at": "2026-08-28T19:04:22Z"
      },
      "occurred_at": "2026-08-28T19:04:22Z"
    },
    {
      "id": "war_01krdgeqcxet5s7t44vh8rt9mg",
      "emoji": "👍",
      "status": "received",
      "from": {
        "phone_number": "+14155550100",
        "bsuid": "US.13491208655302741918"
      },
      "occurred_at": "2026-08-28T19:01:10Z"
    }
  ],
  "next_cursor": null,
  "prev_cursor": null,
  "refresh_cursor": "eyJ2IjoxLCJzIjoiMjAyNi0wOC0yOFQxOTowNDoyMloiLCJpIjoiMDE5ZTFiMDctNWQ5ZC03NjhiLTkzZTgtODRkYzUxOGQyNjkxIn0"
}
रिएक्शन इतिहास संदेश के डिलीवरी इवेंट से अलग है। message-events endpoint में whatsapp.reacted परिवर्तन शामिल नहीं हैं। रिटेंशन और पेजिनेशन के लिए रिएक्शन लॉग रेफ़रेंस का पालन करें।

समस्या निवारण

  • कोई रिएक्शन webhook नहीं: जाँचें कि subscription में whatsapp.reacted शामिल है। किसी पुराने संदेश पर रिएक्शन, जिसका provider reference अब resolve नहीं हो सकता, कोई मिलान किया गया रिएक्शन, लॉग एंट्री या webhook उत्पन्न नहीं करता।
  • मैसेज लिस्ट में रिएक्शन दिखाई नहीं दे रहा: मूल संदेश देखें। रिएक्शन उससे जुड़ा होता है और इसकी कोई अलग मैसेज पंक्ति नहीं होती।
  • रिएक्शन स्थिति अप्रत्याशित रूप से बदल रही है: webhook इवेंट को आगमन समय या टाइमस्टैम्प के अनुसार क्रमित करने के बजाय मूल संदेश का reactions रीफ़्रेश करें।

अगले कदम