सामग्री पर जाएं

पेलोड संदर्भ

Payload संदेश के लिए संदर्भ जिसका उपयोग Notify द्वारा किसी भी गैर-ईमेल चैनल (पुश, एसएमएस, टेलीग्राम, काकाओ, लाइन, वाइबर, व्हाट्सएप) के माध्यम से भेजते समय किया जाता है।

पेलोड

Anchor link to
  • preset (स्ट्रिंग): इस संदेश पर लागू करने के लिए पुश प्रीसेट कोड (प्रारूप XXXXX-XXXXX)।
  • sms_preset (स्ट्रिंग): सहेजे गए SMS प्रीसेट का कोड (प्रारूप XXXXX-XXXXX)। इसका प्रति-लोकेल टेक्स्ट प्रत्येक लोकेल के sms.body में हल हो जाता है। किसी दिए गए लोकेल के लिए एक इनलाइन sms.body उस लोकेल के लिए प्रीसेट को ओवरराइड करता है। प्रीसेट को संदेश के समान एप्लिकेशन से संबंधित होना चाहिए।
  • content (LocalizedContent): संदेश सामग्री। silent के साथ परस्पर अनन्य।
  • silent (बूल): एक साइलेंट (केवल-डेटा) पुश भेजें। content के साथ परस्पर अनन्य।
  • custom_data (ऑब्जेक्ट): फ्री-फॉर्म JSON जो क्लाइंट SDK को u पैरामीटर के रूप में अग्रेषित किया जाता है।
  • open_action (OpenAction): जब उपयोगकर्ता अधिसूचना खोलता है तो ट्रिगर की गई कार्रवाई।
  • open_actions (मैप<प्लेटफ़ॉर्म, OpenAction>): open_action का प्रति-प्लेटफ़ॉर्म ओवरराइड। कुंजी एक संख्यात्मक Platform एनम मान है।
  • voip_push (बूल): iOS VoIP अधिसूचना।
{
"payload": {
"preset": "XXXXX-XXXXX",
"content": { "localized_content": { "default": { "ios": { "title": "Hello", "body": "Tap to view" } } } },
"custom_data": { "order_id": "42" },
"open_action": { "link": { "url": "https://example.com/promo" } }
}
}

LocalizedContent

Anchor link to

लोकेल कोड को प्रति-प्लेटफ़ॉर्म सामग्री पर मैप करता है। कुंजियाँ ISO 639-1 दो-अक्षर कोड हैं (उदाहरण के लिए, "en", "es") और एक कैच-ऑल अनुवाद के लिए विशेष कुंजी "default"। ISO 639-1 के अपवाद पारंपरिक और सरलीकृत चीनी के लिए "zh-Hant" और "zh-Hans" हैं।

{
"localized_content": {
"default": {
"ios": { "title": "Hello", "body": "Tap to view" },
"android": { "title": "Hello", "body": "Tap to view" }
},
"es": {
"ios": { "title": "Hola", "body": "Toca para ver" },
"android": { "title": "Hola", "body": "Toca para ver" }
}
}
}

किसी डिवाइस के लिए लोकेल चयन

Anchor link to

किसी डिवाइस पर दी गई सामग्री इस क्रम में चुनी जाती है:

  1. डिवाइस की भाषा पर सटीक मिलान।
  2. कुंजी "default"
  3. कुंजी "en"
  4. मैप में मौजूद कोई अन्य लोकेल।

कम से कम "default" या "en" में से एक प्रदान करें ताकि प्रत्येक डिवाइस में एक नियतात्मक फ़ॉलबैक हो। यदि आप प्रति-लोकेल वेरिएंट की अपेक्षा नहीं करते हैं, तो केवल "default" भेजें।

प्रत्येक लोकेल प्रविष्टि वैकल्पिक प्रति-प्लेटफ़ॉर्म ब्लॉक के साथ एक Content ऑब्जेक्ट है। केवल उन प्लेटफ़ॉर्म को भरें जिन्हें आप लक्षित करते हैं।

प्लेटफ़ॉर्म ब्लॉकचैनल
iosiOS पुश
androidAndroid (FCM) पुश
huawei_androidHuawei Android पुश
baidu_androidBaidu Android पुश
mac_osmacOS पुश
amazonAmazon (ADM) पुश
safariSafari वेब पुश
chromeChrome वेब पुश
firefoxFirefox वेब पुश
ieInternet Explorer वेब पुश
windowsWindows पुश (टाइल / टोस्ट / बैज)
telegramTelegram संदेश
kakaoKakao संदेश
lineLINE संदेश
viberViber संदेश
whatsappWhatsApp संदेश
smsSMS संदेश

सामान्य पुश फ़ील्ड

Anchor link to

ये फ़ील्ड ios, android, huawei_android, baidu_android, mac_os, amazon, safari, chrome, और firefox ब्लॉक द्वारा साझा किए जाते हैं (समर्थन भिन्न होता है। अप्रयुक्त फ़ील्ड संबंधित प्लेटफ़ॉर्म द्वारा अनदेखा कर दिए जाते हैं)।

  • title (स्ट्रिंग): अधिसूचना शीर्षक।
  • body (स्ट्रिंग): अधिसूचना बॉडी।
  • time_to_live (अवधि, जैसे "3600s"): पुश सर्वर को ऑफ़लाइन डिवाइस के लिए अधिसूचना को कितने समय तक बनाए रखना चाहिए।
  • sound (स्ट्रिंग): ध्वनि फ़ाइल का नाम।
  • sound_enabled (बूल): ध्वनि सक्षम या दबाएं।
  • badges (स्ट्रिंग): बैज गणना (iOS) या एनालॉग।
  • root_params (ऑब्जेक्ट): रॉ प्लेटफ़ॉर्म-विशिष्ट पेलोड ओवरराइड।
  • inbox (Inbox): संदेश इनबॉक्स प्रविष्टि।
{
"android": {
"title": "Hello",
"body": "Tap to view",
"time_to_live": "3600s",
"sound": "default",
"sound_enabled": true,
"badges": "+1"
}
}
  • subtitle (स्ट्रिंग): iOS अधिसूचना उपशीर्षक।
  • is_critical (बूल): महत्वपूर्ण अलर्ट (पात्रता की आवश्यकता है)।
  • attachment (स्ट्रिंग): मीडिया अटैचमेंट का URL।
  • thread_id (स्ट्रिंग): समूहीकृत सूचनाओं के लिए थ्रेड पहचानकर्ता।
  • trim_content (बूल): फिट होने के लिए सामग्री को ट्रिम करें।
  • category_id (स्ट्रिंग): इंटरैक्टिव क्रियाओं के लिए UNNotificationCategory पहचानकर्ता।
  • interruption_level (स्ट्रिंग): passive, active, time-sensitive, या critical
  • collapse_id (स्ट्रिंग): APNs कोलैप्स पहचानकर्ता। समान collapse_id वाली सूचनाएं डिवाइस पर एक दूसरे को प्रतिस्थापित करती हैं।
{
"ios": {
"title": "Hello",
"body": "Tap to view",
"subtitle": "New update",
"attachment": "https://cdn.example.com/image.png",
"interruption_level": "active",
"thread_id": "promo"
}
}

Android (android, huawei_android, baidu_android)

Anchor link to
  • icon (स्ट्रिंग): अधिसूचना छोटा आइकन।
  • banner (स्ट्रिंग): बिग-पिक्चर URL।
  • delivery_priority (NORMAL | HIGH): FCM डिलीवरी प्राथमिकता।
  • vibration (बूल): प्राप्त होने पर कंपन।
  • led_color (स्ट्रिंग, हेक्स): अधिसूचना LED रंग।
  • icon_background_color (स्ट्रिंग, हेक्स): आइकन पृष्ठभूमि रंग।
  • show_on_lockscreen (बूल): लॉक स्क्रीन पर दिखाएं।
  • custom_icon (स्ट्रिंग): कस्टम आइकन का URL।
  • priority (NotificationPriority): इन-ट्रे प्राथमिकता।
  • group_id (स्ट्रिंग): अधिसूचना समूह कुंजी।
  • collapse_key (स्ट्रिंग): FCM कोलैप्स कुंजी। समान collapse_key वाली सूचनाएं डिवाइस ऑफ़लाइन होने पर एक दूसरे को प्रतिस्थापित करती हैं।
{
"android": {
"title": "Hello",
"body": "Tap to view",
"icon": "ic_notification",
"banner": "https://cdn.example.com/banner.png",
"led_color": "#FF0000",
"priority": "PRIORITY_HIGH",
"delivery_priority": "HIGH"
}
}

macOS (mac_os)

Anchor link to

सामान्य पुश फ़ील्ड के साथ-साथ subtitle और action (URL जो उपयोगकर्ता द्वारा अधिसूचना पर क्लिक करने पर खुलता है) का उपयोग करता है।

{
"mac_os": {
"title": "Hello",
"body": "Tap to view",
"subtitle": "New update",
"action": "https://example.com/promo"
}
}

Amazon (amazon)

Anchor link to

सामान्य पुश फ़ील्ड के साथ-साथ custom_icon और priority (NotificationPriority) का उपयोग करता है।

{
"amazon": {
"title": "Hello",
"body": "Tap to view",
"custom_icon": "https://cdn.example.com/icon.png",
"priority": "PRIORITY_HIGH"
}
}

Safari (safari)

Anchor link to
  • action (स्ट्रिंग): URL जो उपयोगकर्ता द्वारा अधिसूचना पर क्लिक करने पर खुलता है।
  • url_arguments (स्ट्रिंग की सरणी): Safari URL तर्क जो वेब पुश URL टेम्पलेट में प्रतिस्थापित किए जाते हैं।
{
"safari": {
"title": "Hello",
"body": "Tap to view",
"action": "https://example.com/promo",
"url_arguments": ["promo", "2026"]
}
}

Chrome (chrome)

Anchor link to
  • icon, image (स्ट्रिंग): छोटे आइकन और बड़े छवि URL।
  • duration (अवधि): ऑटो-क्लोज टाइमर।
  • button_text1 / button_url1, button_text2 / button_url2: दो एक्शन बटन तक।
{
"chrome": {
"title": "Hello",
"body": "Tap to view",
"icon": "https://cdn.example.com/icon.png",
"image": "https://cdn.example.com/banner.png",
"duration": "20s",
"button_text1": "Open",
"button_url1": "https://example.com/promo"
}
}

Firefox (firefox)

Anchor link to

केवल title, body, icon, root_params, और inbox का उपयोग करता है।

{
"firefox": {
"title": "Hello",
"body": "Tap to view",
"icon": "https://cdn.example.com/icon.png"
}
}

Windows (windows)

Anchor link to

विंडोज एक अलग आकार का उपयोग करता है:

{
"windows": {
"type": "TOAST",
"template": { "title": "Hello", "body": "Tap to view" },
"tag": "promo",
"cache": true,
"time_to_live": "3600s"
}
}
  • type TILE, TOAST, या BADGE है।
  • template (संरचित) या raw ({ "content": "<raw xml>" }) — ठीक एक।

Telegram (telegram)

Anchor link to
  • body (स्ट्रिंग): संदेश पाठ।
  • content_variables (स्ट्रिंग): बॉट-साइड टेम्पलेट के लिए JSON-स्ट्रिंगिफाइड चर।
{
"telegram": {
"body": "Hello from Pushwoosh",
"content_variables": "{\"name\":\"John\"}"
}
}

Kakao (kakao)

Anchor link to
  • content (स्ट्रिंग): संदेश सामग्री।
  • template (स्ट्रिंग): स्वीकृत टेम्पलेट कोड।
  • content_variables (स्ट्रिंग): JSON-स्ट्रिंगिफाइड टेम्पलेट चर बाइंडिंग।
{
"kakao": {
"content": "Hello from Pushwoosh",
"template": "welcome_v1",
"content_variables": "{\"name\":\"John\"}"
}
}

LINE (line)

Anchor link to
  • content (स्ट्रिंग): सादा पाठ बॉडी।
  • template (स्ट्रिंग): Pushwoosh कंट्रोल पैनल में कॉन्फ़िगर किए गए LINE टेम्पलेट का कोड (छवि, हिंडोला, या फ्लेक्स संदेश भेजने के लिए उपयोग किया जाता है)। समृद्ध सामग्री के लिए, कंट्रोल पैनल में टेम्पलेट को पूर्व-कॉन्फ़िगर करें और इसे यहां संदर्भित करें।

content या template में से कम से कम एक सेट होना चाहिए।

{
"line": {
"content": "Hello from Pushwoosh",
"template": "promo_carousel"
}
}

Viber (viber)

Anchor link to

एक Viber संदेश या तो एक फ्री-टेक्स्ट बॉडी होता है या एक पूर्व-अनुमोदित लेनदेन संबंधी टेम्पलेट (ओमनी मैसेजिंग / MStat) होता है जिसे आईडी और भाषा द्वारा संदर्भित किया जाता है।

  • body (स्ट्रिंग): सादा पाठ संदेश। जब template_id सेट नहीं होता है तो आवश्यक है।
  • template_id (स्ट्रिंग): एक पूर्व-अनुमोदित लेनदेन संबंधी टेम्पलेट की आईडी। जब सेट किया जाता है, तो यह body पर प्राथमिकता लेता है।
  • template_lang (स्ट्रिंग): टेम्पलेट लोकेल। जब template_id सेट होता है तो आवश्यक है।
  • template_params (मैप<स्ट्रिंग, स्ट्रिंग>): कुंजी/मान बाइंडिंग जो टेम्पलेट में प्रतिस्थापित की जाती हैं, जैसे { "name": "John", "code": "123456" }
  • all_devices (बूल): false (डिफ़ॉल्ट) केवल उपयोगकर्ता के प्राथमिक डिवाइस पर वितरित करता है; true उपयोगकर्ता के सभी उपकरणों पर वितरित करता है।

body या template_id में से कम से कम एक सेट होना चाहिए। जब template_id सेट होता है, तो template_lang आवश्यक होता है।

Viber प्राप्तकर्ताओं को viber:<phone> (E.164) के रूप में hwids के रूप में संबोधित करें, उदाहरण के लिए viber:+1234567890

सादा पाठ:

{
"viber": {
"body": "Hello from Pushwoosh"
}
}

लेनदेन संबंधी टेम्पलेट:

{
"viber": {
"template_id": "e3dec4a0-c063-4b0f-96d5-cf9d629a7abe",
"template_lang": "en",
"template_params": {
"name": "John",
"code": "123456",
"expires_in": "5 minutes"
},
"all_devices": false
}
}

WhatsApp (whatsapp)

Anchor link to

व्हाट्सएप संदेश मेटा के माध्यम से जाते हैं और मेटा के संदेश नियमों के अधीन होते हैं। मुख्य विभाजन फ्री-फॉर्म टेक्स्ट (केवल उपयोगकर्ता से आने वाले संदेश द्वारा खोले गए 24-घंटे के ग्राहक सेवा विंडो के अंदर वितरित) और स्वीकृत टेम्पलेट्स (आउटबाउंड दीक्षा के लिए और 24-घंटे की खिड़की के बाहर किसी भी संदेश के लिए आवश्यक) के बीच है।

  • content (स्ट्रिंग): फ्री-फॉर्म संदेश पाठ। मेटा द्वारा केवल 24-घंटे की खिड़की के अंदर वितरित किया जाता है।
  • content_id (स्ट्रिंग): एक पूर्व-अनुमोदित मेटा टेम्पलेट का नाम (जैसे "hello_world")। आउटबाउंड दीक्षा या 24-घंटे की खिड़की के बाहर किसी भी संदेश के लिए आवश्यक है।
  • language (स्ट्रिंग): टेम्पलेट लोकेल जो मेटा में स्वीकृत लोकेल से बिल्कुल मेल खाना चाहिए (जैसे "en_US", "en_GB")। केवल content_id के साथ ही सार्थक है। यह बाहरी LocalizedContent कुंजी से स्वतंत्र है। बाहरी कुंजी एक डिवाइस के लिए सामग्री का चयन करती है, और language उस सामग्री के लिए मेटा-टेम्पलेट लोकेल का चयन करती है।
  • content_variables (स्ट्रिंग): JSON ऑब्जेक्ट जो बॉडी प्लेसहोल्डर्स को मैप करता है, जैसे "{\"1\":\"John\"}"
  • button_url_variables (स्ट्रिंग): JSON ऑब्जेक्ट जो बटन-URL प्लेसहोल्डर्स को बटन इंडेक्स द्वारा कुंजीबद्ध करता है, जैसे "{\"0\":\"https://...\"}"
  • header_variables (स्ट्रिंग): JSON ऑब्जेक्ट जो हेडर प्लेसहोल्डर्स को प्रकार द्वारा कुंजीबद्ध करता है, जैसे "{\"image\":\"https://...\"}"

content या content_id में से कम से कम एक सेट होना चाहिए।

{
"whatsapp": {
"content_id": "hello_world",
"language": "en_US",
"content_variables": "{\"1\":\"John\"}"
}
}

SMS का प्रत्येक लोकेल के Content के अंदर अपना प्लेटफ़ॉर्म ब्लॉक होता है, ios, android, और अन्य मैसेजिंग चैनलों के साथ।

  • body (स्ट्रिंग): लोकेल के लिए SMS टेक्स्ट। जब sms ब्लॉक मौजूद होता है तो आवश्यक है।

टेक्स्ट प्रदान करने के दो तरीके हैं:

  • इनलाइनlocalized_content में प्रति लोकेल sms.body सेट करें।
  • एक प्रीसेट से — पेलोड-स्तरीय sms_preset को सहेजे गए SMS प्रीसेट के कोड (प्रारूप XXXXX-XXXXX) पर सेट करें। इसकी प्रति-लोकेल सामग्री प्रत्येक लोकेल के लिए sms.body में हल हो जाती है जिसे प्रीसेट परिभाषित करता है। एक लोकेल के लिए एक इनलाइन sms.body उस लोकेल के लिए प्रीसेट को ओवरराइड करता है, इसलिए आप एक प्रीसेट का पुन: उपयोग कर सकते हैं और फिर भी व्यक्तिगत भाषाओं को बदल सकते हैं।
{
"payload": {
"sms_preset": "XXXXX-XXXXX",
"content": {
"localized_content": {
"default": { "sms": { "body": "Your order has shipped." } },
"es": { "sms": { "body": "Tu pedido ha sido enviado." } }
}
}
}
}

OpenAction

Anchor link to

उपयोगकर्ता द्वारा संदेश खोलने पर की जाने वाली क्रिया को परिभाषित करता है।

ठीक एक:

  • rich_media (RichMedia): एक रिच मीडिया पृष्ठ खोलें।
  • deep_link: एक डीप लिंक खोलें: { "code": "flow-code", "params": { "key": "value" } }
  • link (Link): एक URL खोलें।
{
"open_action": {
"deep_link": { "code": "flow-code", "params": { "promo": "summer" } }
}
}

डीपलिंक URL और params मान लिक्विड वैयक्तिकरण सिंटैक्स का समर्थन करते हैं — डीप लिंक खोले जाने से पहले अभिव्यक्तियों को हल किया जाता है।

{ "code": "XXXXX-XXXXX" } // रिच मीडिया कोड द्वारा
{ "url": "https://..." } // रिमोट URL द्वारा
{
"url": "https://example.com/promo",
"shortener": "BITLY"
}

shortener NONE (डिफ़ॉल्ट) या BITLY है।

इनबॉक्स

Anchor link to

संदेश इनबॉक्स में संदेश कैसे दिखाई देता है, इसे कॉन्फ़िगर करता है।

{
"image_url": "https://cdn.example.com/inbox.png",
"expiration_date": "2026-05-15T00:00:00Z"
}
  • image_url (स्ट्रिंग): इनबॉक्स प्रविष्टि में दिखाई गई छवि।
  • expiration_date (टाइमस्टैम्प): जब प्रविष्टि इनबॉक्स से हटा दी जाती है।

NotificationPriority एनम

Anchor link to

लक्ष्य डिवाइस पर अधिसूचना प्राथमिकता को नियंत्रित करता है, PRIORITY_MIN (सबसे कम) से PRIORITY_MAX (उच्चतम) तक।

  • PRIORITY_UNSPECIFIED
  • PRIORITY_MIN
  • PRIORITY_LOW
  • PRIORITY_DEFAULT
  • PRIORITY_HIGH
  • PRIORITY_MAX

उदाहरण: एक सेगमेंट को पुश भेजें

Anchor link to
Terminal window
curl -X POST https://api.pushwoosh.com/messaging/v2/notify \
-H "Authorization: Token YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"segment": {
"application": "XXXXX-XXXXX",
"platforms": ["IOS", "ANDROID"],
"code": "active_users",
"payload": {
"content": {
"localized_content": {
"en": {
"ios": { "title": "Hello", "body": "Hello, world!" },
"android": { "title": "Hello", "body": "Hello, world!" }
},
"es": {
"ios": { "title": "¡Hola!", "body": "¡Hola, mundo!" },
"android": { "title": "¡Hola!", "body": "¡Hola, mundo!" }
}
}
},
"open_action": { "link": { "url": "https://example.com/promo" } }
},
"schedule": { "at": "2026-05-01T12:00:00Z" },
"message_type": "MESSAGE_TYPE_MARKETING"
}
}'

उदाहरण: उपयोगकर्ता आईडी द्वारा लेनदेन संबंधी पुश

Anchor link to
Terminal window
curl -X POST https://api.pushwoosh.com/messaging/v2/notify \
-H "Authorization: Token YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"transactional": {
"application": "XXXXX-XXXXX",
"platforms": ["IOS", "ANDROID"],
"users": { "list": ["customer-42"] },
"payload": {
"content": {
"localized_content": {
"default": {
"ios": { "title": "Your order", "body": "Order #42 has shipped." },
"android": { "title": "Your order", "body": "Order #42 has shipped." }
}
}
},
"custom_data": { "order_id": "42" }
},
"schedule": { "at": "2026-05-01T12:00:00Z" },
"message_type": "MESSAGE_TYPE_TRANSACTIONAL"
}
}'