নোটিফাই
POST https://api.pushwoosh.com/messaging/v2/notify
একটি একক বার্তা তৈরি এবং সময়সূচী করে।
অনুরোধের কাঠামো
Anchor link toঅনুরোধের বডিটি একটি NotifyRequest যার দুটি ধরনের মধ্যে ঠিক একটি থাকে:
segment: সেগমেন্ট কোড, একটি seglang এক্সপ্রেশন, বা একটি স্ট্রাকচার্ড ফিল্টার এক্সপ্রেশন দ্বারা একটি অডিয়েন্স সেগমেন্টকে টার্গেট করুন।transactional: hwids, ইউজার আইডি, পুশ টোকেন, বা টেস্ট ডিভাইসের একটি স্পষ্ট তালিকায় পাঠান।
{ "segment": { ... } // OR "transactional": { ... }}NotifySegment
Anchor link toযে ব্যবহারকারীরা একটি অডিয়েন্স সেগমেন্ট বা ফিল্টার এক্সপ্রেশনের সাথে মেলে তাদের টার্গেট করে।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
schedule | Schedule | কখন এবং কিভাবে পাঠাতে হবে। আবশ্যক। |
application | string | অ্যাপ্লিকেশন কোড। |
platforms | array of Platform | প্ল্যাটফর্মগুলি যা বার্তাটি টার্গেট করে। |
code | string | সেগমেন্ট কোড। expression এবং filter_expression এর সাথে পারস্পরিকভাবে স্বতন্ত্র। |
expression | string | Seglang এক্সপ্রেশন। |
filter_expression | FilterExpression | স্ট্রাকচার্ড ফিল্টার এক্সপ্রেশন (অ্যাডভান্সড)। |
payload | Payload | পুশ / এসএমএস / টেলিগ্রাম / কাকাও পেলোড। email_payload এর সাথে পারস্পরিকভাবে স্বতন্ত্র। |
email_payload | EmailPayload | ইমেল পেলোড। |
campaign | string | এই বার্তাটিকে অ্যাট্রিবিউট করার জন্য ক্যাম্পেইন কোড। |
frequency_capping | FrequencyCapping | প্রতি-ব্যবহারকারী ফ্রিকোয়েন্সি সীমা। |
send_rate | SendRate | পাঠানোর জন্য থ্রটলিং। |
message_type | MessageType | MESSAGE_TYPE_MARKETING (ডিফল্ট) বা MESSAGE_TYPE_TRANSACTIONAL। কন্ট্রোল-গ্রুপ ফিল্টারিং নিয়ন্ত্রণ করে। |
dynamic_content_placeholders | map<string, string> | কন্টেন্টের মধ্যে প্লেসহোল্ডার প্রতিস্থাপন করে। |
meta_data | object | ফ্রি-ফর্ম মেটাডেটা যা ডাউনস্ট্রিম অ্যানালিটিক্সে ফরোয়ার্ড করা হয়। |
উদাহরণ: একটি সেগমেন্টে পাঠান
Anchor link tocurl -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": { "body": "Hello!" }, "android": { "body": "Hello!" } } } } }, "schedule": { "at": "2026-05-01T12:00:00Z" }, "message_type": "MESSAGE_TYPE_MARKETING" } }'NotifyTransactional
Anchor link toপ্রাপকদের একটি স্পষ্ট তালিকায় পাঠায়।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
schedule | Schedule | আবশ্যক। |
application | string | অ্যাপ্লিকেশন কোড। |
platforms | array of Platform | প্ল্যাটফর্মগুলি যা বার্তাটি টার্গেট করে। |
test_devices | bool | যদি true হয়, শুধুমাত্র অ্যাপের টেস্ট ডিভাইসগুলিতে পাঠান। |
hwids | { "list": [string, ...] } | শুধুমাত্র এই hwids এ পাঠান। |
users | { "list": [string, ...] } | শুধুমাত্র এই ইউজার আইডি তে পাঠান। |
push_tokens | { "list": [string, ...] } | শুধুমাত্র এই পুশ টোকেন এ পাঠান। |
payload | Payload | পুশ / এসএমএস / টেলিগ্রাম / কাকাও পেলোড। |
email_payload | EmailPayload | ইমেল পেলোড। |
return_unknown_identifiers | bool | যখন true হয়, প্রতিক্রিয়ার unknown_identifiers সেই আইডেন্টিফায়ারগুলির তালিকা করে যা পাওয়া যায়নি। |
campaign, frequency_capping, send_rate, message_type, dynamic_content_placeholders, meta_data | উপরে NotifySegment দেখুন। |
test_devices, hwids, users, এবং push_tokens পারস্পরিকভাবে স্বতন্ত্র। ঠিক একটি সেট করতে হবে।
উদাহরণ: ইউজার আইডি দ্বারা ট্রানজ্যাকশনাল
Anchor link tocurl -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": ["user-123", "user-456"] }, "payload": { "content": { "localized_content": { "en": { "ios": { "body": "Your order has shipped." } } } } }, "schedule": { "at": "2026-05-01T12:00:00Z" }, "message_type": "MESSAGE_TYPE_TRANSACTIONAL", "return_unknown_identifiers": true } }'প্রতিক্রিয়া
Anchor link to{ "result": { "message_code": "XXXXX-XXXXX-XXXXX", "unknown_identifiers": [] }}| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
message_code | string | অনন্য বার্তা কোড। এটি /getMessageDetails এবং বার্তা পরিসংখ্যান এন্ডপয়েন্টের সাথে ব্যবহার করুন। |
unknown_identifiers | array of string | অ্যাকাউন্টে আইডেন্টিফায়ার পাওয়া যায়নি। শুধুমাত্র যখন transactional ধরনের উপর return_unknown_identifiers: true সেট করা হয়েছিল তখন এটি পপুলেট করা হয়। |
শেয়ার্ড টাইপ
Anchor link toSchedule
Anchor link to{ "at": "2026-05-01T12:00:00Z", "follow_user_timezone": true, "past_timezones_behaviour": "PAST_TIMEZONES_BEHAVIOUR_SEND_IMMEDIATELY"}| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
at | timestamp | পরম পাঠানোর সময় (RFC 3339)। যদি অতীতে হয়, বার্তাটি অবিলম্বে পাঠানো হয়। ভবিষ্যতে সর্বোচ্চ ১৪ দিন। |
after | duration | at এর বিকল্প। “এখন” থেকে এই অফসেটের পরে পাঠান (যেমন "3600s")। |
follow_user_timezone | bool | যখন true হয়, প্রতিটি ডিভাইস তার স্থানীয় টাইমজোনে at সময়ে বার্তাটি গ্রহণ করে। |
past_timezones_behaviour | enum | PAST_TIMEZONES_BEHAVIOUR_SEND_IMMEDIATELY (ডিফল্ট), PAST_TIMEZONES_BEHAVIOUR_DO_NOT_SEND, বা PAST_TIMEZONES_BEHAVIOUR_NEXT_DAY। শুধুমাত্র যখন follow_user_timezone true হয় তখন এটি অর্থপূর্ণ। |
FrequencyCapping
Anchor link toমার্কেটিং পাঠানোর জন্য প্রতি-ব্যবহারকারী ফ্রিকোয়েন্সি সীমা।
{ "days": 7, "count": 3, "exclude": false, "avoid": true }days(int, 1–30): লুক-ব্যাক উইন্ডো।count(int):daysএর মধ্যে অনুমোদিত সর্বোচ্চ বার্তা।exclude(bool): যে ব্যবহারকারীরা ইতিমধ্যে ক্যাপে পৌঁছেছে তাদের হার্ড-এক্সক্লুড করুন।avoid(bool): যে ব্যবহারকারীরা ইতিমধ্যে ক্যাপে পৌঁছেছে তাদের সফট-এভয়েড করুন (তারা এখনও অ্যানালিটিক্সের জন্য গণনা করা হয়)।
SendRate
Anchor link to{ "value": 500, "bucket": "1s", "avoid": false }পাঠানোকে থ্রটল করে। value হল প্রতি bucket এ বার্তা; সাধারণ bucket হল "1s"।
প্ল্যাটফর্ম enum
Anchor link toIOS, ANDROID, OSX, WINDOWS, AMAZON, SAFARI, CHROME, FIREFOX, IE, EMAIL, BAIDU_ANDROID, HUAWEI_ANDROID, SMS, WEB, KAKAO, TELEGRAM, LINE, WHATS_APP।
MessageType enum
Anchor link toMESSAGE_TYPE_UNSPECIFIED:MESSAGE_TYPE_MARKETINGএর সমতুল্য।MESSAGE_TYPE_MARKETING: কন্ট্রোল-গ্রুপ ফিল্টারিং এবং ফ্রিকোয়েন্সি ক্যাপিং এর অধীন।MESSAGE_TYPE_TRANSACTIONAL: কন্ট্রোল-গ্রুপ ফিল্টারিং এবং ফ্রিকোয়েন্সি ক্যাপিং এড়িয়ে যায়। অর্ডার কনফার্মেশন, ওটিপি, এবং অনুরূপ ক্রিটিক্যাল ফ্লো এর জন্য ব্যবহার করুন।