বার্তা পরিসংখ্যান
এই মেথডগুলি আপনার পাঠানো বার্তাগুলির পরিসংখ্যান প্রদান করে। প্রেরিত বার্তাগুলির তালিকা দেখতে, একটি বার্তার ঘণ্টাভিত্তিক মেট্রিক্স পেতে, ডেলিভারি ফানেলে একটি বার্তা কোথায় তার অডিয়েন্স হারিয়েছে তা দেখতে, ডিভাইস অনুযায়ী বার্তার লগ পড়তে এবং ইমেলে লিঙ্ক ক্লিক গণনা করতে এগুলি ব্যবহার করুন।
messages:list
Anchor link toপ্রেরিত বার্তাগুলির তালিকা প্রদর্শন করে।
POST https://api.pushwoosh.com/api/v2/messages:list
হেডার
Anchor link to| নাম | প্রয়োজনীয় | বিবরণ |
|---|---|---|
Authorization | হ্যাঁ | সার্ভার API টোকেন। অবশ্যই নিম্নলিখিত ফর্ম্যাটে সরবরাহ করতে হবে: Authorization: Api <Server Key>। |
অনুরোধের বডি প্যারামিটার
Anchor link to| নাম | প্রয়োজনীয় | টাইপ | বিবরণ |
|---|---|---|---|
platforms | না | Array | বার্তা প্ল্যাটফর্ম। সম্ভাব্য মান: "IOS", "ANDROID", "OSX", "WINDOWS", "AMAZON", "SAFARI", "CHROME", "FIREFOX", "IE", "EMAIL", "HUAWEI_ANDROID", "SMS"। |
date_range | না | Object | রিপোর্টিং সময়কাল, বার্তা তৈরির তারিখের উপর ফিল্টার করা। date_from এবং date_to অবশ্যই YYYY-MM-DD ফর্ম্যাট অনুসরণ করবে (যেমন, "2000-01-01"); উভয় দিনই সম্পূর্ণভাবে অন্তর্ভুক্ত, তাই date_from এবং date_to একই তারিখে সেট করলে সেই পুরো দিনটি ফেরত আসে। তারিখগুলি আপনার অ্যাকাউন্টের টাইমজোনে নয়, UTC-তে ব্যাখ্যা করা হয়। |
campaign | না | String | ক্যাম্পেইন কোড |
filters | হ্যাঁ | Object | বার্তা ফিল্টার। |
source | না | String | বার্তার উৎস। উদাহরণস্বরূপ: AB_TEST, API, AUTO_PUSH, CP, CSV, CUSTOMER_JOURNEY, EMAIL_API, EMAIL_CP, GEO_ZONE, PUSH_ON_EVENT, RSS। |
messages_codes | না | Array | /createMessage API প্রতিক্রিয়া থেকে প্রাপ্ত বার্তা কোড। |
messages_ids | না | Array | বার্তা ইতিহাস থেকে প্রাপ্ত বার্তা আইডি |
message_type | না | String | বার্তা ফ্লো ফিল্টার। সম্ভাব্য মান: "TRANSACTIONAL", "BROADCAST", "ALL"। বাদ দিলে ডিফল্ট "ALL"। |
params | না | Object | বার্তার বিবরণ এবং মেট্রিক্স দেখানো হবে কিনা তা নির্দিষ্ট করুন। প্রতিক্রিয়াতে "details" অবজেক্ট অন্তর্ভুক্ত করতে with_details: true এবং "metrics" অবজেক্ট অন্তর্ভুক্ত করতে with_metrics: true সেট করুন। |
application | হ্যাঁ | String | Pushwoosh অ্যাপ্লিকেশন কোড। |
per_page | না | Integer | প্রতি পৃষ্ঠায় ফলাফলের সংখ্যা, 1 থেকে 499। ডিফল্ট পৃষ্ঠা আকার 500টি ফলাফল পেতে প্যারামিটারটি বাদ দিন; 500 বা তার বেশি স্পষ্টভাবে পাস করলে 400 দিয়ে প্রত্যাখ্যান করা হয়। |
page | না | Integer | পেজিনেশনের জন্য শূন্য-ভিত্তিক পৃষ্ঠা নম্বর। নীচে গভীর পেজিনেশন সীমা দেখুন। |
message_type এছাড়াও নির্ধারণ করে যে তারিখ ছাড়া অনুরোধ কতটা পিছনে পৌঁছায়।
অনুরোধের উদাহরণ
Anchor link to{ "filters": { "platforms": [], // IOS, ANDROID, OSX, WINDOWS, AMAZON, SAFARI, CHROME, FIREFOX, IE, EMAIL, HUAWEI_ANDROID, SMS "date_range": { "date_from": "string", // প্রয়োজনীয় ফর্ম্যাট: 2000-01-01 "date_to": "string" // প্রয়োজনীয় ফর্ম্যাট: 2000-01-01 }, "source": "API", // AB_TEST, API, AUTO_PUSH, CP, CSV, CUSTOMER_JOURNEY, EMAIL_API, EMAIL_CP, GEO_ZONE, PUSH_ON_EVENT, RSS "campaign": "string", // ক্যাম্পেইন কোড "messages_ids": [], // বার্তা আইডি "messages_codes": [], // বার্তা কোড "message_type": "ALL", // TRANSACTIONAL, BROADCAST, ALL (ডিফল্ট) "application": "string" // Pushwoosh অ্যাপ্লিকেশন কোড }, "params": { "with_details": true, // প্রতিক্রিয়াতে বার্তার বিবরণ যোগ করুন ("details" অবজেক্ট) "with_metrics": true // প্রতিক্রিয়াতে বার্তা মেট্রিক্স যোগ করুন ("metrics" অবজেক্ট) }, "per_page": 20, // <= 499 "page": 0}প্রতিক্রিয়া কোড এবং উদাহরণ
{ "total": 0, "items": [{ "id": 0, "code": "string", "created_date": "string", "send_date": "string", "status": "string", "platforms": [], "source": "string", "push_info": { "details": { "title": "string", "filter_name": "string", "filter_code": "string", "content": { "key": "value" }, "platform_parameters": { "android_header": "string", "android_root_params": { "key": "value" }, "ios_title": "string", "ios_subtitle": "string", "ios_root_params": { "key": "value" }, "chrome_header": "string", "chrome_root_params": { "key": "value" }, "firefox_header": "string", "firefox_root_params": { "key": "value" }, "conditions": [ // ট্যাগ শর্ত (দেখুন /developer/api-reference/messages-api/#tag-conditions) TAG_CONDITION1, TAG_CONDITION2, ..., TAG_CONDITIONN ], "conditions_operator": "AND", // শর্ত অ্যারেগুলির জন্য লজিক্যাল অপারেটর; সম্ভাব্য মান: AND, OR "data": { "key": "value" } }, "follow_user_timezone": true }, "metrics": [{ "sends": 0, "opens": 0, "deliveries": 0, "inbox_opens": 0, "unshowable_sends": 0, "errors": 0, "platform": 0 }] }, "email_info": { "details": { "template": "string", "filter_name": "string", "filter_code": "string", "subject": { "key": "value" }, "from_name": "string", "from_email": "string", "reply_name": "string", "reply_email": "string", "follow_user_timezone": true, "conditions": [ // ট্যাগ শর্ত (দেখুন Messages-api - tag-conditions) TAG_CONDITION1, TAG_CONDITION2, ..., TAG_CONDITIONN ], "conditions_operator": "AND" // শর্ত অ্যারেগুলির জন্য লজিক্যাল অপারেটর; সম্ভাব্য মান: AND, OR }, "metrics": [{ "sends": 0, "opens": 0, "deliveries": 0, "hard_bounces": 0, "soft_bounces": 0, "rejects": 0, "confirmed_sends": 0, "unsubs": 0, "complaints": 0, "errors": 0 }] } }]}date_range ৩০ দিনের বেশি সময় ধরে:
{ "error": "exceeded the maximum date interval. Max interval: 30 days"}page × per_page গভীর পেজিনেশন সীমা অতিক্রম করেছে:
{ "error": "requested result window is too large, narrow the date range"}{ "error": "account not found"}totalsByIntervals
Anchor link toবার্তা কোডের উপর ভিত্তি করে মেট্রিক্স এবং রূপান্তর ডেটা প্রদান করে, যা ঘণ্টা অনুসারে একত্রিত করা হয়।
POST https://api.pushwoosh.com/api/v2/statistics/messages/totalsByIntervals
অনুমোদন
Anchor link toঅনুরোধের হেডারে API অ্যাক্সেস টোকেনের মাধ্যমে অনুমোদন পরিচালনা করা হয়।
অনুরোধের বডি প্যারামিটার
Anchor link to| প্যারামিটারের নাম | টাইপ | বিবরণ | প্রয়োজনীয় |
|---|---|---|---|
message_code | string | /createMessage API প্রতিক্রিয়া থেকে প্রাপ্ত বার্তা কোড। | হ্যাঁ |
platforms | [int] | প্ল্যাটফর্ম | না |
অনুরোধের উদাহরণ
Anchor link to{ "message_code": "XXXXX-XXXXXXXXX-XXXXXXXX", // প্রয়োজনীয়। অনন্য বার্তা শনাক্তকারী "platforms": [1, 3, 7, 10, 11, 12] // ঐচ্ছিক। প্ল্যাটফর্ম কোডের তালিকা}প্রতিক্রিয়া ক্ষেত্র
Anchor link to| নাম | টাইপ | বিবরণ |
|---|---|---|
metrics | array | বার্তা মেট্রিক্সের একটি অ্যারে ধারণ করে |
timestamp | string | মেট্রিকের সময়। |
platform | int | প্ল্যাটফর্ম কোড (যেমন, iOS, Android)। |
sends | string | প্রেরিত বার্তার সংখ্যা। |
opens | string | খোলা বার্তার সংখ্যা। |
deliveries | string | বিতরণ করা বার্তার সংখ্যা। |
inbox_opens | string | ইনবক্স খোলার সংখ্যা। |
unshowable_sends | string | OS সেটিংসে নোটিফিকেশন বন্ধ থাকা ডিভাইসগুলির জন্য গৃহীত বার্তার সংখ্যা। কোনো ব্যানার দেখানো হয় না, কিন্তু বার্তাটি এখনও অ্যাপে পৌঁছায়, এবং যদি প্রেরণে Save message to Inbox সক্রিয় থাকে তবে এটি Message Inbox-এ প্রদর্শিত হয়। সফল প্রেরণ হিসাবে গণনা করা হয়, ত্রুটি হিসাবে নয়। |
errors | string | ত্রুটির সংখ্যা। |
conversion | object | রূপান্তর ডেটা ধারণ করে |
sends | string | প্রেরিত বার্তার মোট সংখ্যা। |
opens | string | খোলা বার্তার মোট সংখ্যা। |
events | array | তাদের পরিসংখ্যান সহ ইভেন্টের একটি অ্যারে |
name | string | ইভেন্টের নাম (যেমন, কার্টে যোগ করা)। |
hits | string | হিটের সংখ্যা। |
conversion | float | খোলার সাপেক্ষে রূপান্তর হার। |
revenue | float | রাজস্ব (__amount এবং __currency অ্যাট্রিবিউট সহ ইভেন্টের জন্য শুধুমাত্র)। |
প্রতিক্রিয়ার উদাহরণ
Anchor link to{ "metrics": [{ "timestamp": "2024-08-03 15:00:00", // "YYYY-MM-DD HH:MM:SS" ফর্ম্যাটে মেট্রিক্সের টাইমস্ট্যাম্প "platform": 3, // প্ল্যাটফর্ম কোড "sends": "55902", // প্রেরিত বার্তার সংখ্যা "opens": "382", // খোলা বার্তার সংখ্যা "deliveries": "22931", // বিতরণ করা বার্তার সংখ্যা "inbox_opens": "0", // ইনবক্সে খোলা বার্তার সংখ্যা "unshowable_sends": "2", // নোটিফিকেশন বন্ধ থাকা ডিভাইসগুলিতে পাঠানো হয়েছে, কোনো ব্যানার দেখানো হয়নি "errors": "0" // সম্মুখীন হওয়া ত্রুটির সংখ্যা }], "conversion": { "sends": "55902", // প্রেরিত বার্তার মোট সংখ্যা "opens": "772", // খোলা বার্তার মোট সংখ্যা "events": [{ "name": "cart_add", // ইভেন্টের নাম "hits": "96", // ইভেন্টের জন্য হিটের সংখ্যা "conversion": 0.12, // খোলার সাপেক্ষে রূপান্তর হার "revenue": 0 // ইভেন্ট দ্বারা উৎপন্ন রাজস্ব (শুধুমাত্র পরিমাণ/মুদ্রা অ্যাট্রিবিউট সহ ইভেন্টের জন্য) }] }}ডেলিভারি ফানেল
Anchor link toএকটি বার্তা বা ক্যাম্পেইন কোন পর্যায়ে তার অডিয়েন্স হারিয়েছে (ত্রুটি, কোনো ডেলিভারি নেই, কোনো ওপেন নেই) এবং কেন, তা দেখতে ডেলিভারি ফানেল ব্যবহার করুন। ঘণ্টাভিত্তিক মোট সংখ্যা ফেরত দেওয়া totalsByIntervals-এর বিপরীতে, ফানেল অডিয়েন্সকে পর্যায় এবং ড্রপ-আউটের কারণ অনুযায়ী বিভক্ত করে, প্রতি চ্যানেলে একটি এন্ট্রি, প্ল্যাটফর্ম অনুযায়ী বিভাজনসহ। পর্যায়ের ক্রম চ্যানেল অনুযায়ী ভিন্ন হয়: প্রতিটি চ্যানেল কোন পর্যায়গুলো বহন করে তা জানতে নিচে GetDeliveryFunnelResponse ফিল্ড-এর অধীনে stage দেখুন। উভয় মেথডের জন্যই একটি সার্ভার API টোকেন প্রয়োজন।
উভয় মেথডই একই রেসপন্স আকার, GetDeliveryFunnelResponse, ফেরত দেয়, যা নিচে একবার বর্ণনা করা হয়েছে।
getDeliveryFunnel
Anchor link toএকটি বার্তার ফানেল ফেরত দেয়।
POST https://api.pushwoosh.com/api/v2/statistics/messages/getDeliveryFunnel
হেডার
Anchor link to| নাম | প্রয়োজনীয় | বিবরণ |
|---|---|---|
Authorization | হ্যাঁ | সার্ভার API টোকেন। নিম্নলিখিত ফরম্যাটে প্রদান করতে হবে: Authorization: Api <Server Key>। |
রিকোয়েস্ট বডি প্যারামিটার
Anchor link to| নাম | প্রয়োজনীয় | ধরন | বিবরণ |
|---|---|---|---|
message_code | হ্যাঁ | স্ট্রিং | /createMessage API রেসপন্স থেকে প্রাপ্ত বার্তা কোড। |
platforms | না | পূর্ণসংখ্যার অ্যারে | ফানেল ফিল্টার করার জন্য প্ল্যাটফর্ম কোড। বার্তাটি পাঠানো সব প্ল্যাটফর্ম ফেরত দিতে বাদ দিন। |
উদাহরণ রিকোয়েস্ট
Anchor link to{ "message_code": "A444-AAABBBCC-00112233", // /createMessage থেকে বার্তা কোড "platforms": [1, 14] // ঐচ্ছিক। iOS, Email}GetDeliveryFunnelResponse ফিল্ড
Anchor link to| নাম | ধরন | বিবরণ |
|---|---|---|
channels | অ্যারে | বার্তাটি যে প্রতিটি চ্যানেলে পাঠানো হয়েছিল তার জন্য একটি এন্ট্রি। |
window_from, window_to | স্ট্রিং বা null | ফানেল যে সময়কাল কভার করে, উপলব্ধ ডেটার ভিত্তিতে। funnel_state যখন FUNNEL_STATE_READY নয় তখন null। |
funnel_state | স্ট্রিং | FUNNEL_STATE_READY: নিচের ফানেল পূরণ করা হয়েছে। FUNNEL_STATE_NO_EVENTS: এই বার্তার জন্য এখনো কিছু ঘটেনি। FUNNEL_STATE_EXPIRED: বার্তাটি অনেক আগে পাঠানো হয়েছিল। এর ফানেল ডেটা আর উপলব্ধ নেই। উভয় নন-READY ক্ষেত্রেই channels খালি থাকে। একটি অজানা, অন্য অ্যাকাউন্টের, বা মুছে ফেলা message_code এই স্ট্যাটাসগুলোর কোনোটিই নয়, নিচে 404 রেসপন্স দেখুন। |
channels[]
| নাম | ধরন | বিবরণ |
|---|---|---|
channel | স্ট্রিং | CHANNEL_MOBILE_PUSH (iOS, macOS, Android, Amazon, Huawei), CHANNEL_WEB_PUSH (Safari, Chrome, Firefox), CHANNEL_EMAIL, CHANNEL_OTHER (SMS, মেসেঞ্জার, Wallet, Windows, Baidu, Xiaomi), CHANNEL_APP_INBOX। |
funnel | অ্যারে | এই চ্যানেলের জন্য ফানেল পর্যায়, নিচে funnel[] দেখুন। |
deliveries_form | স্ট্রিং | STAGE_DELIVERIES পর্যায় কোন বিভাজন বহন করে: DELIVERIES_FORM_PER_DEVICE (চারটি পৃথক সারি, ডিভাইসটি অ্যালার্ট দেখাবে কিনা এবং এটি নিশ্চিত করেছে কিনা তা অনুযায়ী বিভক্ত) অথবা DELIVERIES_FORM_BASIC (দুটি সারি, অ্যালার্ট-স্ট্যাটাস বিভাজন ছাড়া)। |
basic_form_reason | স্ট্রিং | শুধুমাত্র তখনই অর্থপূর্ণ যখন deliveries_form হলো DELIVERIES_FORM_BASIC: BASIC_FORM_REASON_RETENTION (বার্তাটি প্রতি-ডিভাইস বিভাজনের জন্য খুব পুরনো), BASIC_FORM_REASON_UNAVAILABLE (এই অ্যাকাউন্ট বা বার্তার জন্য প্রতি-ডিভাইস বিভাজন উপলব্ধ নয়, যেমন একটি সিস্টেম বার্তা), BASIC_FORM_REASON_NO_DELIVERIES (এখনো কিছুই গৃহীত হয়নি), BASIC_FORM_REASON_NOT_APPLICABLE (চ্যানেলটির কোনো অ্যালার্ট স্ট্যাটাসই নেই, যেমন email বা App Inbox)। অন্যথায় BASIC_FORM_REASON_UNSPECIFIED: deliveries_form DELIVERIES_FORM_BASIC না হলে এই ফিল্ডটি উপেক্ষা করুন। |
confirmed_deliveries | অবজেক্ট | নিশ্চিত ডেলিভারির count এবং platforms অনুযায়ী বিভাজন। STAGE_DELIVERIES-এর গণনার সীমার মধ্যে সীমাবদ্ধ নয়, তাই এটি তার থেকে ভিন্ন হতে পারে। |
funnel[] (একটি পর্যায়)
| নাম | ধরন | বিবরণ |
|---|---|---|
stage | স্ট্রিং | STAGE_AUDIENCE (বার্তাটি যাদের লক্ষ্য করেছিল সবাই), STAGE_SENT (পুশ সার্ভিস বা ইমেল প্রোভাইডার দ্বারা গৃহীত), STAGE_ERRORS (গৃহীত হওয়ার আগেই প্রত্যাখ্যাত), STAGE_DELIVERIES (গৃহীত, নিশ্চিতকরণ অনুযায়ী বিভক্ত), STAGE_OPENED (যেসব অনন্য ডিভাইস খুলেছে, অথবা App Inbox-এর জন্য যেসব এন্ট্রি ব্যবহারকারী ট্যাপ করে খুলেছে), STAGE_INTERACTIONS (শুধুমাত্র ইমেল: ক্লিক, আনসাবস্ক্রাইব, অভিযোগ), STAGE_REACHED/STAGE_READ (শুধুমাত্র App Inbox, STAGE_DELIVERIES-এর পরিবর্তে)। |
count | স্ট্রিং | পর্যায়ের মোট, একটি সাংখ্যিক স্ট্রিং হিসেবে। |
pieces | অ্যারে | পর্যায়ের নিজস্ব বিভাজন। STAGE_ERRORS-এ খালি, যেখানে পরিবর্তে errors ব্যবহার করা হয়। প্রতিটি অংশে kind (KIND_PASSED পরবর্তী পর্যায়ে এগিয়ে গেছে, KIND_REASON যায়নি, KIND_SUBSET অন্য দুটির সাথে ওভারল্যাপ করে এবং কখনো যোগ করা হয় না), category (প্রতিটি পর্যায়ের জন্য নিচের মানের তালিকা দেখুন), count, এবং platforms অনুযায়ী বিভাজন থাকে। |
errors | অ্যারে | শুধুমাত্র STAGE_ERRORS: category (নিচে মানের তালিকা দেখুন), count, platforms, এবং codes: এই ক্যাটাগরিতে গোষ্ঠীভুক্ত কাঁচা প্রোভাইডার ত্রুটি কোড (platform, code, name, count)। প্রতিটি name-এর অর্থ কী এবং কীভাবে তা ঠিক করবেন, তা জানতে পাঠানোর ত্রুটি দেখুন। |
platforms | অ্যারে | পর্যায়ের মোট, প্ল্যাটফর্ম অনুযায়ী বিভক্ত। |
category মানসমূহ
STAGE_AUDIENCE:
ELIGIBLE_AUDIENCE(পাস): নিচের কোনো কারণেই বাদ দেওয়া হয়নি।FREQUENCY_CAPPING: ফ্রিকোয়েন্সি ক্যাপিং দ্বারা বাদ দেওয়া হয়েছে।CONTROL_GROUP: কন্ট্রোল গ্রুপ হিসেবে ধরে রাখা হয়েছে।UNSUBSCRIBED: প্রাপক আনসাবস্ক্রাইব করেছিলেন।BOUNCED: প্রাপকের ঠিকানা পূর্বে বাউন্স হয়েছিল।COMPLAINT: প্রাপক পূর্বে একটি বার্তাকে স্প্যাম হিসেবে চিহ্নিত করেছিলেন।FILTERED_BY_CATEGORY: প্রাপক এই বার্তার ক্যাটাগরি থেকে অপ্ট-আউট করেছিলেন।
STAGE_ERRORS:
NO_TOKEN: ডিভাইসে পাঠানোর জন্য কোনো পুশ টোকেন বা ঠিকানা ছিল না।NO_DEVICE: কোনো মিলে যাওয়া ডিভাইস পাওয়া যায়নি।PLATFORM_DISABLED: এই অ্যাপের জন্য প্ল্যাটফর্মটি নিষ্ক্রিয় করা আছে।INVALID_TOKEN: প্রোভাইডার ডিভাইস টোকেন বা ঠিকানাকে অবৈধ হিসেবে প্রত্যাখ্যান করেছে।QUOTA_EXCEEDED: প্রোভাইডার পাঠানোর হার সীমিত করেছে।INVALID_CONTENT: বার্তাটি রচনা করা অবস্থায় পাঠানো যায়নি। প্রায়শই টেমপ্লেট নিজেই তৈরি হতে ব্যর্থ হয়েছে, যেমন একটি ভাঙা Connected Content বা Liquid ব্লক, প্রোভাইডার কর্তৃক প্রত্যাখ্যাত হওয়ার পরিবর্তে।INVALID_CONFIGURATION: অ্যাকাউন্টের নিজস্ব প্রোভাইডার সেটআপ ভাঙা, যেমন ভুল ক্রেডেনশিয়াল, একটি মুছে ফেলা Firebase প্রজেক্ট, বা একটি অননুমোদিত APNs topic।PROVIDER_ERROR: প্রোভাইডার উপরের ক্যাটাগরির বাইরে একটি ত্রুটি ফেরত দিয়েছে।INTERNAL_ERROR: Pushwoosh পাঠানোটি প্রক্রিয়া করতে ব্যর্থ হয়েছে।UNCLASSIFIED_ERROR: উপরের কোনো ক্যাটাগরির সাথেই মেলে না এমন একটি ড্রপ-আউট। বিরল হওয়ার আশা করা হয়।
STAGE_DELIVERIES, DELIVERIES_FORM_PER_DEVICE:
DISPLAYABLE_CONFIRMED(পাস): ডিভাইসটি একটি অ্যালার্ট দেখিয়েছে এবং প্রাপ্তি নিশ্চিত করেছে।DISPLAYABLE_NO_CONFIRMATION: ডিভাইসটি অ্যালার্ট দেখাবে কিন্তু এখনো প্রাপ্তি নিশ্চিত করেনি।NOT_DISPLAYABLE_CONFIRMED(পাস): একটি সাইলেন্ট পুশ প্রাপ্তি নিশ্চিত করেছে।NOT_DISPLAYABLE_NO_CONFIRMATION: একটি সাইলেন্ট পুশ এখনো প্রাপ্তি নিশ্চিত করেনি।
STAGE_DELIVERIES, DELIVERIES_FORM_BASIC:
CONFIRMED_BY_DEVICE(পাস): ডিভাইসটি প্রাপ্তি নিশ্চিত করেছে।NO_CONFIRMATION: এখনো নিশ্চিত করা হয়নি।
ইমেল অতিরিক্তভাবে যোগ করে, CONFIRMED_BY_DEVICE-এর সাথে ওভারল্যাপ করা একটি সাবসেট হিসেবে:
BOUNCED_HARD(সাবসেট): ঠিকানাটি স্থায়ীভাবে ডেলিভারযোগ্য নয়।BOUNCED_SOFT(সাবসেট): ঠিকানাটি সাময়িকভাবে ডেলিভারযোগ্য নয়, যেমন একটি পূর্ণ মেইলবক্স।
BOUNCED_HARD নিম্নলিখিত সাবসেট সারিতেও বিভক্ত হতে পারে:
BOUNCED_HARD_GENERAL: স্থায়ীভাবে ডেলিভারযোগ্য নয়, আরও নির্দিষ্ট কোনো কারণ পাওয়া যায়নি।BOUNCED_HARD_MAILBOX_FULL: প্রাপকের মেইলবক্স পূর্ণ।BOUNCED_HARD_MAILBOX_INACTIVE: প্রাপকের মেইলবক্স আর নেই।BOUNCED_HARD_SUPPRESSED: প্রোভাইডার ঠিকানাটিকে ব্লকলিস্টে রেখেছে।BOUNCED_HARD_UNDETERMINED: স্থায়ীভাবে ডেলিভারযোগ্য নয়, কারণ নির্ধারণ করা যায়নি।
BOUNCED_SOFT নিম্নলিখিত সাবসেট সারিতেও বিভক্ত হতে পারে:
BOUNCED_SOFT_GENERAL: সাময়িকভাবে ডেলিভারযোগ্য নয়, আরও নির্দিষ্ট কোনো কারণ পাওয়া যায়নি।BOUNCED_SOFT_MAILBOX_FULL: সেই সময়ে প্রাপকের মেইলবক্স পূর্ণ ছিল।BOUNCED_SOFT_CONTENT_REJECTED: প্রাপকের মেইল সার্ভার বার্তার বিষয়বস্তু প্রত্যাখ্যান করেছে।BOUNCED_SOFT_SPAM: প্রাপকের মেইল সার্ভার বার্তাটিকে স্প্যাম হিসেবে চিহ্নিত করেছে।BOUNCED_SOFT_MESSAGE_TOO_LARGE: বার্তাটি প্রাপকের মেইলবক্সের জন্য খুব বড় ছিল।BOUNCED_SOFT_ATTACHMENT_REJECTED: প্রাপকের মেইল সার্ভার একটি সংযুক্তি প্রত্যাখ্যান করেছে।BOUNCED_SOFT_CUSTOM_TIMEOUT_EXCEEDED: প্রাপকের মেইল সার্ভারের সাড়া দিতে অনেক সময় লেগেছে।BOUNCED_SOFT_UNDETERMINED: সাময়িকভাবে ডেলিভারযোগ্য নয়, কারণ নির্ধারণ করা যায়নি।BOUNCED_UNDETERMINED: প্রাপকের সার্ভার ইমেলটি গ্রহণ করেছে কিন্তু কখনো ডেলিভারি নিশ্চিত করেনি; ফলাফল অজানা এবং ঠিকানাটি দমন করা হয়নি। এটি সফট বাউন্স হিসেবে গণ্য হয়।
BOUNCED_UNCLASSIFIED হলো একটি বাউন্স, হার্ড বা সফট, যা উপরের কোনো সাবটাইপের সাথে মেলে না। বিরল হওয়ার আশা করা হয়, এবং এর উপর ভিত্তি করে যুক্তি তৈরি করার মতো একটি মান নয়।
STAGE_OPENED, শুধুমাত্র ইমেল (অন্য চ্যানেলগুলো pieces ছাড়াই পর্যায়ের count রিপোর্ট করে):
OPENED_BY_RECIPIENT(পাস): একজন ব্যক্তি দ্বারা খোলা হয়েছে।MACHINE_OPENS_ONLY: শুধুমাত্র একটি স্বয়ংক্রিয় স্ক্যানার দ্বারা খোলা হয়েছে।OPEN_TYPE_UNKNOWN: ব্যক্তি বা স্ক্যানার হিসেবে শ্রেণীবদ্ধ করা যায়নি।MACHINE_OPENS_AMPP(সাবসেট): এই বার্তার জন্য যখন ব্যক্তি/স্ক্যানার বিভাজন উপলব্ধ না থাকে তখন উপরের তিনটি সারি প্রতিস্থাপন করে। পরিবর্তে Apple Mail Privacy Protection-এর নিজস্ব মেশিন-ওপেন সংখ্যা গণনা করে, এবং পর্যায়ের মোটের সাথে ওভারল্যাপ করে।
STAGE_INTERACTIONS, শুধুমাত্র ইমেল:
CLICKED_ONLY(পাস): একটি লিঙ্কে ক্লিক করেছে, সাবস্ক্রাইব থেকেছে।CLICKED_AND_UNSUBSCRIBED: একটি লিঙ্কে ক্লিক করেছে এবং আনসাবস্ক্রাইব করেছে।CLICKED_AND_COMPLAINED: একটি লিঙ্কে ক্লিক করেছে এবং বার্তাটিকে স্প্যাম হিসেবে চিহ্নিত করেছে।UNSUBSCRIBED_WITHOUT_CLICK: ক্লিক না করেই আনসাবস্ক্রাইব করেছে।COMPLAINED_WITHOUT_CLICK: ক্লিক না করেই বার্তাটিকে স্প্যাম হিসেবে চিহ্নিত করেছে।
STAGE_REACHED, শুধুমাত্র App Inbox:
REACHED(পাস): এন্ট্রিটি অ্যাপ দ্বারা অন্তত একবার ফেচ করা হয়েছে।NOT_FETCHED_YET: এখনো ফেচ করা হয়নি।
STAGE_READ, শুধুমাত্র App Inbox:
READ(পাস): পঠিত হিসেবে চিহ্নিত।DISMISSED_UNREAD: ব্যবহারকারী না পড়েই মুছে ফেলেছেন।UNREAD: এখনো ইনবক্সে অপঠিত অবস্থায় আছে।EXPIRED_UNREAD:UNREAD-এর মতোই, তবে এন্ট্রিটি তখন থেকে ইনবক্স থেকে মেয়াদোত্তীর্ণ হয়ে গেছে।DISMISSED(সাবসেট): প্রতিটি মুছে ফেলা এন্ট্রি, পঠিত হোক বা না হোক।READএবংDISMISSED_UNREAD-এর সাথে ওভারল্যাপ করে।
রেসপন্স কোড
{ "channels": [{ "channel": "CHANNEL_MOBILE_PUSH", "funnel": [ { "stage": "STAGE_AUDIENCE", "count": "10000", "pieces": [ { "kind": "KIND_PASSED", "category": "ELIGIBLE_AUDIENCE", "count": "10000", "platforms": [{ "platform": 1, "count": "10000" }] } ], "errors": [], "platforms": [{ "platform": 1, "count": "10000" }] }, { "stage": "STAGE_SENT", "count": "9820", "pieces": [], "errors": [], "platforms": [{ "platform": 1, "count": "9820" }] }, { "stage": "STAGE_ERRORS", "count": "180", "pieces": [], "errors": [ { "category": "INVALID_TOKEN", "count": "180", "platforms": [{ "platform": 1, "count": "180" }], "codes": [ { "platform": 1, "code": 1002, "name": "BadDeviceToken", "count": "180" } ] } ], "platforms": [{ "platform": 1, "count": "180" }] }, { "stage": "STAGE_DELIVERIES", "count": "9820", "pieces": [ { "kind": "KIND_PASSED", "category": "DISPLAYABLE_CONFIRMED", "count": "8000", "platforms": [{ "platform": 1, "count": "8000" }] }, { "kind": "KIND_REASON", "category": "DISPLAYABLE_NO_CONFIRMATION", "count": "820", "platforms": [{ "platform": 1, "count": "820" }] }, { "kind": "KIND_PASSED", "category": "NOT_DISPLAYABLE_CONFIRMED", "count": "900", "platforms": [{ "platform": 1, "count": "900" }] }, { "kind": "KIND_REASON", "category": "NOT_DISPLAYABLE_NO_CONFIRMATION", "count": "100", "platforms": [{ "platform": 1, "count": "100" }] } ], "errors": [], "platforms": [{ "platform": 1, "count": "9820" }] }, { "stage": "STAGE_OPENED", "count": "3120", "pieces": [], "errors": [], "platforms": [{ "platform": 1, "count": "3120" }] } ], "deliveries_form": "DELIVERIES_FORM_PER_DEVICE", "basic_form_reason": "BASIC_FORM_REASON_UNSPECIFIED", "confirmed_deliveries": { "count": "8900", "platforms": [{ "platform": 1, "count": "8900" }] } }], "window_from": "2026-09-01T00:00:00Z", "window_to": "2026-09-01T00:05:00Z", "funnel_state": "FUNNEL_STATE_READY"}একটি খালি channels অ্যারে সহ funnel_state: "FUNNEL_STATE_NO_EVENTS" মানে এই বার্তার জন্য এখনো কিছুই ঘটেনি। এটি কোনো ত্রুটি নয়। একটি message_code যা ফানেল ডেটা উপলব্ধ থাকার জন্য অনেক আগে পাঠানো হয়েছিল তাও 200 ফেরত দেয়, একটি খালি channels অ্যারে এবং funnel_state: "FUNNEL_STATE_EXPIRED" সহ।
একটি অজানা message_code, যা অন্য অ্যাকাউন্টের অন্তর্গত, বা তারপর থেকে মুছে ফেলা হয়েছে:
{ "error": "message not found"}{ "error": "invalid auth token"}getCampaignDeliveryFunnel
Anchor link toএকটি ক্যাম্পেইনের বার্তাগুলোর উপর getDeliveryFunnel-এর যোগফল নেয়। অনন্য গণনা প্রতিটি বার্তা অনুযায়ী পৃথকভাবে গণনা করা হয়: ক্যাম্পেইনের একাধিক বার্তা দ্বারা পৌঁছানো একজন সাবস্ক্রাইবার প্রতিটি বার্তার জন্য একবার গণনা করা হয়।
POST https://api.pushwoosh.com/api/v2/statistics/messages/getCampaignDeliveryFunnel
হেডার
Anchor link to| নাম | প্রয়োজনীয় | বিবরণ |
|---|---|---|
Authorization | হ্যাঁ | সার্ভার API টোকেন। নিম্নলিখিত ফরম্যাটে প্রদান করতে হবে: Authorization: Api <Server Key>। |
রিকোয়েস্ট বডি প্যারামিটার
Anchor link to| নাম | প্রয়োজনীয় | ধরন | বিবরণ |
|---|---|---|---|
campaign_code | হ্যাঁ | স্ট্রিং | ক্যাম্পেইন কোড। |
platforms | না | পূর্ণসংখ্যার অ্যারে | ফানেল ফিল্টার করার জন্য প্ল্যাটফর্ম কোড। ক্যাম্পেইনটি পাঠানো সব প্ল্যাটফর্ম ফেরত দিতে বাদ দিন। |
উদাহরণ রিকোয়েস্ট
Anchor link to{ "campaign_code": "AAAAA-XXXXX", // ক্যাম্পেইন কোড "platforms": [1, 14] // ঐচ্ছিক। iOS, Email}রেসপন্স
Anchor link toউপরের GetDeliveryFunnelResponse-এর মতোই আকার।
রেসপন্স কোড
প্রদত্ত campaign_code এবং platforms-এর জন্য একটি খালি অডিয়েন্সও 200 ফেরত দেয়, একটি খালি channels অ্যারে এবং funnel_state: "FUNNEL_STATE_NO_EVENTS" সহ। একটি ক্যাম্পেইন যা ফানেল ডেটা উপলব্ধ থাকার জন্য অনেক আগে পাঠানো হয়েছিল তাও 200 ফেরত দেয়, একটি খালি channels অ্যারে এবং funnel_state: "FUNNEL_STATE_EXPIRED" সহ। এর কোনোটিই ত্রুটি নয়।
একটি অজানা campaign_code, যা অন্য অ্যাকাউন্টের অন্তর্গত, বা যার সব বার্তা মুছে ফেলা হয়েছে। একটি ক্যাম্পেইন যার শুধুমাত্র কিছু বার্তা মুছে ফেলা হয়েছে তা প্রভাবিত হয় না: মুছে ফেলা বার্তাগুলো তখনও এর ফানেলে গণনা করা হয়।
{ "error": "campaign not found"}{ "error": "invalid auth token"}getMessageLog
Anchor link toপ্রেরিত বার্তা সম্পর্কে বিস্তারিত তথ্য প্রদর্শন করে।
POST https://api.pushwoosh.com/api/v2/statistics/getMessageLog
হেডার
Anchor link to| নাম | প্রয়োজনীয় | বিবরণ |
|---|---|---|
Authorization | প্রয়োজনীয় | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
অনুরোধের বডি প্যারামিটার
Anchor link to| নাম | প্রয়োজনীয় | টাইপ | বিবরণ |
|---|---|---|---|
message_id | না | Integer | বার্তা ইতিহাস থেকে প্রাপ্ত বার্তা আইডি দ্বারা বার্তা ইভেন্ট নির্বাচন করুন। উদাহরণ: 12345678900। |
message_code | না | String | /createMessage API প্রতিক্রিয়া থেকে প্রাপ্ত বার্তা কোড দ্বারা বার্তা ইভেন্ট নির্বাচন করুন। উদাহরণ: "A444-AAABBBCC-00112233"। |
campaign_code | না | String | আপনার বার্তা পেলোডে নির্দিষ্ট করা ক্যাম্পেইন কোড দ্বারা বার্তা ইভেন্ট নির্বাচন করুন। উদাহরণ: "AAAAA-XXXXX"। |
hwid | না | String or Array | HWID (হার্ডওয়্যার আইডি) বা HWID-এর একটি অ্যারে দ্বারা বার্তা ইভেন্ট নির্বাচন করুন। |
date_from | message_id, message_code, বা campaign_code প্রদান না করা হলে প্রয়োজনীয় | Datetime | বার্তা ফিল্টার করার জন্য শুরুর তারিখ। ফর্ম্যাট: "YYYY-MM-DD HH:MM:SS"। উদাহরণ: "2000-01-25 00:00:00"। |
date_to | message_id, message_code, বা campaign_code প্রদান না করা হলে প্রয়োজনীয় | Datetime | বার্তা ফিল্টার করার জন্য শেষ তারিখ। ফর্ম্যাট: "YYYY-MM-DD HH:MM:SS"। উদাহরণ: "2000-01-26 00:00:00"। |
limit | না | Integer | একটি একক প্রতিক্রিয়াতে ফেরত আসা সর্বোচ্চ বার্তা ইভেন্টের সংখ্যা। সর্বোচ্চ মান: 100000। |
pagination_token | না | String | পূর্ববর্তী /getMessageLog প্রতিক্রিয়া থেকে প্রাপ্ত পেজিনেশন টোকেন। অতিরিক্ত ফলাফল পুনরুদ্ধার করতে এটি ব্যবহার করুন। |
user_id | না | String | একটি কাস্টম ব্যবহারকারী আইডি দ্বারা বার্তা ইভেন্ট নির্বাচন করুন। আরও বিস্তারিত জানতে /registerUser দেখুন। |
application_code | হ্যাঁ | String | Pushwoosh অ্যাপ্লিকেশন কোড দ্বারা বার্তা ইভেন্ট নির্বাচন করুন। |
actions | না | Array | নির্দিষ্ট বার্তা ক্রিয়া দ্বারা ফলাফল ফিল্টার করুন। সম্ভাব্য মান: "sent", "delivered", "opened", "reject", "create", "inbox_delivered", "inbox_read", "inbox_opened", "inbox_deleted"। "create" ইভেন্টগুলি ডিফল্টরূপে প্রতিক্রিয়া থেকে বাদ দেওয়া হয়। সেগুলি দেখতে এই অ্যারেতে "create" অন্তর্ভুক্ত করুন। "delivered" ইভেন্টগুলির জন্য অতিরিক্তভাবে অ্যাকাউন্টে ডেলিভারি পরিসংখ্যান সক্রিয় করা প্রয়োজন। |
platforms | না | Array | ফলাফল ফিল্টার করার জন্য টার্গেট প্ল্যাটফর্মের অ্যারে। সম্ভাব্য মান: "unknown", "ios", "blackberry", "android", "windows phone", "osx", "windows", "amazon", "safari", "chrome", "firefox", "ie", "email", "fb messenger", "baidu android", "huawei android", "sms", "xiaomi", "web", "whatsapp", "line", "kakao", "telegram", "apple wallet", "google wallet", "viber"। |
message_type | না | String | বার্তা প্রবাহ দ্বারা ফলাফল ফিল্টার করুন। "all" (বাদ দিলে ডিফল্ট) সবকিছু ফেরত দেয়, "broadcast" শুধুমাত্র গণ বার্তা ফেরত দেয় (message_id != 0), "transactional" শুধুমাত্র message_id = 0 সহ বার্তা ফেরত দেয়, যার মধ্যে Customer Journey থেকে পাঠানো বার্তাও অন্তর্ভুক্ত। |
অনুরোধের উদাহরণ
Anchor link tocurl --location --request POST 'https://api.pushwoosh.com/api/v2/statistics/getMessageLog' \--header 'Authorization: Key API_ACCESS_TOKEN' \--header 'Content-Type: application/json' \--data-raw '{ "pagination_token": "PAGINATION_TOKEN_FROM_PREVIOUS_RESPONSE", // ঐচ্ছিক, পেজিনেশনের জন্য টোকেন "limit": 1000, // ঐচ্ছিক, একটি একক প্রতিক্রিয়ার জন্য সর্বোচ্চ এন্ট্রির সংখ্যা "application_code": "XXXXX-XXXXX", // Pushwoosh অ্যাপ কোড "message_code": "A444-AAABBBCC-00112233", // ঐচ্ছিক, /createMessaage অনুরোধ থেকে প্রাপ্ত বার্তা কোড "message_id": 1234567890, // ঐচ্ছিক, Pushwoosh কন্ট্রোল প্যানেল থেকে প্রাপ্ত বার্তা আইডি "campaign_code": "AAAAA-XXXXX", // ঐচ্ছিক, লগ পাওয়ার জন্য একটি ক্যাম্পেইনের কোড "hwid": "aaazzzqqqqxxx", // ঐচ্ছিক, একটি বার্তা দিয়ে লক্ষ্য করা নির্দিষ্ট ডিভাইসের হার্ডওয়্যার আইডি "user_id": "user_123", // ঐচ্ছিক, বার্তা দিয়ে লক্ষ্য করা একজন ব্যবহারকারীর আইডি "date_from": "2000-01-25 00:00:00", // ঐচ্ছিক, পরিসংখ্যান সময়কালের শুরু "date_to": "2000-02-10 23:59:59", // ঐচ্ছিক, পরিসংখ্যান সময়কালের শেষ "actions": ["opened", "inbox_opened"], // ঐচ্ছিক, ফলাফল ফিল্টার করার জন্য ব্যবহৃত। সম্ভাব্য মান: "sent", "delivered", "opened", "reject", "create", "inbox_delivered", "inbox_read", "inbox_opened", "inbox_deleted"। প্রতিক্রিয়াতে নির্দিষ্ট ক্রিয়া(গুলি) সহ সমস্ত বার্তা অন্তর্ভুক্ত থাকবে। "platforms": ["ios", "chrome"], // ঐচ্ছিক, ফলাফল ফিল্টার করার জন্য ব্যবহৃত, শুধুমাত্র ছোট হাতের অক্ষর। সম্ভাব্য মান: "unknown", "ios", "blackberry", "android", "windows phone", "osx", "windows", "amazon", "safari", "chrome", "firefox", "ie", "email", "fb messenger", "baidu android", "huawei android", "sms", "xiaomi", "web", "whatsapp", "line", "kakao", "telegram", "apple wallet", "google wallet", "viber" "message_type": "broadcast" // ঐচ্ছিক, "all" (ডিফল্ট), "broadcast" (message_id != 0), বা "transactional" (message_id = 0, Customer Journey প্রেরণ অন্তর্ভুক্ত)}'প্রতিক্রিয়া কোড এবং উদাহরণ
{ "pagination_token": "PAGINATION_TOKEN_FOR_NEXT_REQUEST", "data": [{ "timestamp": "2000-01-25T11:18:47Z", "application_code": "XXXXX-XXXXX", "message_id": 12345678900, "message_code": "A444-AAABBBCC-00112233", "campaign_code": "AAAAA-XXXXX", "hwid": "aaazzzqqqqxxx", "user_id": "user_123", "platform": "android", "action": "sent", "status": "success", "push_alerts_enabled": "true" }, { "timestamp": "2000-01-25T11:18:49Z", "application_code": "XXXXX-XXXXX", "message_id": 12345678900, "message_code": "A444-AAABBBCC-00112233", "campaign_code": "AAAAA-XXXXX", "hwid": "aaazzzqqqqxxx", "user_id": "user_123", "platform": "android", "action": "delivered", "push_alerts_enabled": "true" }, { "timestamp": "2000-01-25T11:19:23Z", "application_code": "XXXXX-XXXXX", "message_id": 12345678900, "message_code": "A444-AAABBBCC-00112233", "campaign_code": "AAAAA-XXXXX", "hwid": "aaazzzqqqqxxx", "user_id": "user_123", "platform": "android", "action": "opened", "push_alerts_enabled": "true" }, { "timestamp": "2000-01-25T11:19:30Z", "application_code": "XXXXX-XXXXX", "message_id": 12345678900, "message_code": "A444-AAABBBCC-00112233", "campaign_code": "AAAAA-XXXXX", "hwid": "aaazzzqqqqxxx", "user_id": "user_123", "platform": "android", "action": "reject", "status": "failed", "error_reason": "invalid device token", "payload": "SOME_PAYLOAD_STRING" }]}{ "error": "exceeded the maximum date interval. Max interval: 30 days"}{ "error": "account not found"}data-এর প্রতিটি এন্ট্রিতে error_reason (স্ট্রিং, status "failed" হলে ব্যর্থতার কারণ দিয়ে পূর্ণ করা হয়) এবং একটি ঐচ্ছিক payload (স্ট্রিং) থাকে।
একটি প্রতিক্রিয়া পৃষ্ঠা অনুরোধ করা limit-এর চেয়ে ছোট হতে পারে। শুধুমাত্র এর মানে এই নয় যে এক্সপোর্ট শেষ হয়ে গেছে।
ইমেল পরিসংখ্যান
Anchor link tolinksInteractions
Anchor link toইমেলের লিঙ্ক ক্লিকে পরিসংখ্যান প্রদর্শন করে
POST https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractions
হেডার
Anchor link to| নাম | প্রয়োজনীয় | বিবরণ |
|---|---|---|
Authorization | হ্যাঁ | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
অনুরোধের বডি প্যারামিটার
Anchor link to| নাম | প্রয়োজনীয় | টাইপ | বিবরণ |
|---|---|---|---|
date_range | না | Object | রিপোর্টিং সময়কাল নির্ধারণ করে। date_from এবং date_to ধারণ করে। |
filters | হ্যাঁ | Object | ইমেল ফিল্টার। |
application | হ্যাঁ | String | Pushwoosh অ্যাপ্লিকেশন কোড (বিকল্পভাবে, campaign, messages_ids, বা message_codes নির্দিষ্ট করুন)। |
messages_codes | হ্যাঁ | Array | বার্তা কোড (বিকল্পভাবে, application, campaign, বা messages_ids নির্দিষ্ট করুন)। |
campaign | হ্যাঁ | String | ক্যাম্পেইন কোড (বিকল্পভাবে, application, messages_ids, বা message_codes নির্দিষ্ট করুন)। |
messages_ids | হ্যাঁ | Array | বার্তা আইডি (বিকল্পভাবে, application, campaign, বা message_codes নির্দিষ্ট করুন)। |
link_template | application বা campaign নির্দিষ্ট করা হলে প্রয়োজনীয়। | String | কীওয়ার্ড দ্বারা ইমেল লিঙ্ক ইন্টারঅ্যাকশন ফিল্টার করে। শুধুমাত্র যে লিঙ্কগুলির URL-এ নির্দিষ্ট টেক্সট অন্তর্ভুক্ত রয়েছে সেগুলি API প্রতিক্রিয়াতে ফেরত দেওয়া হবে। উদাহরণস্বরূপ, যদি আপনার ইমেলে https://example.com/news এবং https://example.com/shop এর মতো লিঙ্ক থাকে, তবে “link_template”: “shop” সেট করলে শুধুমাত্র https://example.com/shop-এর জন্য ইন্টারঅ্যাকশন ফেরত দেওয়া হবে। |
email_content_code | না | String | ইমেল বিষয়বস্তুর জন্য অনন্য শনাক্তকারী। |
params | না | Object | অতিরিক্ত প্রতিক্রিয়া বিকল্প নির্ধারণ করে। with_full_links অন্তর্ভুক্ত, যা পরিসংখ্যান সহ সম্পূর্ণ লিঙ্কের একটি তালিকা যোগ করে। |
অনুরোধের উদাহরণ
Anchor link tocurl --location --request POST 'https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractions' \--header 'Authorization: Api API_ACCESS_TOKEN' \--header 'Content-Type: application/json' \--data-raw '{ "filters": { "date_range": { "date_from": "string", // প্রয়োজনীয় ফর্ম্যাট: 2000-01-01 "date_to": "string" // প্রয়োজনীয় ফর্ম্যাট: 2000-01-01 }, "campaign": "string", // ক্যাম্পেইন কোড (আপনি এর পরিবর্তে application, messages_ids, বা message_codes নির্দিষ্ট করতে পারেন) "application": "string", // অ্যাপ্লিকেশন কোড (আপনি এর পরিবর্তে campaign, messages_ids, বা message_codes নির্দিষ্ট করতে পারেন) "messages_ids": [], // বার্তা আইডি (আপনি এর পরিবর্তে application, campaign, বা message_codes নির্দিষ্ট করতে পারেন) "messages_codes": [], // বার্তা কোড (আপনি এর পরিবর্তে application, campaign, বা message_ids নির্দিষ্ট করতে পারেন) "link_template": "string", // লিঙ্ক টেমপ্লেট (application বা campaign নির্দিষ্ট করা হলে প্রয়োজনীয়) "email_content_code": "string" // ইমেল বিষয়বস্তুর জন্য অনন্য শনাক্তকারী। }, "params": { "with_full_links": true // বিস্তারিত পরিসংখ্যান দেখানো হবে কিনা তা নির্দিষ্ট করুন। full_links অ্যারেতে পরিসংখ্যান সহ সম্পূর্ণ লিঙ্কের একটি তালিকা পাস করা হবে। }}'প্রতিক্রিয়া কোড এবং উদাহরণ
Anchor link to{ "items": [{ "template": "string", "link": "string", "title": "string", "clicks": 0, "full_links": [{ "full_link": "string", "clicks": 0 }] }]}{ "error": "exceeded the maximum date interval. Max interval: 30 days"}{ "error": "account not found"}linksInteractionsDevices
Anchor link toইমেলের লিঙ্কে ক্লিক করা ব্যবহারকারীদের দেখায়
POST https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractionsDevices
হেডার
Anchor link to| নাম | প্রয়োজনীয় | বিবরণ |
|---|---|---|
Authorization | হ্যাঁ | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
অনুরোধের বডি প্যারামিটার
Anchor link to| নাম | প্রয়োজনীয় | টাইপ | বিবরণ |
|---|---|---|---|
date_range | না | Object | রিপোর্টিং সময়কাল নির্ধারণ করে। date_from এবং date_to ধারণ করে। |
filters | হ্যাঁ | Object | ইমেল ফিল্টার। |
application | হ্যাঁ | String | Pushwoosh অ্যাপ্লিকেশন কোড (বিকল্পভাবে, campaign, messages_ids, বা message_codes নির্দিষ্ট করুন)। |
messages_codes | হ্যাঁ | Array | বার্তা কোড (বিকল্পভাবে, application, campaign, বা messages_ids নির্দিষ্ট করুন)। |
campaign | হ্যাঁ | String | ক্যাম্পেইন কোড (বিকল্পভাবে, application, messages_ids, বা message_codes নির্দিষ্ট করুন)। |
messages_ids | হ্যাঁ | Array | বার্তা আইডি (বিকল্পভাবে, application, campaign, বা message_codes নির্দিষ্ট করুন)। |
link_template | application বা campaign নির্দিষ্ট করা হলে প্রয়োজনীয়। | String | কীওয়ার্ড দ্বারা ইমেল লিঙ্ক ইন্টারঅ্যাকশন ফিল্টার করে। শুধুমাত্র যে লিঙ্কগুলির URL-এ নির্দিষ্ট টেক্সট অন্তর্ভুক্ত রয়েছে সেগুলি API প্রতিক্রিয়াতে ফেরত দেওয়া হবে। উদাহরণস্বরূপ, যদি আপনার ইমেলে https://example.com/news এবং https://example.com/shop এর মতো লিঙ্ক থাকে, তবে “link_template”: “shop” সেট করলে শুধুমাত্র https://example.com/shop-এর জন্য ইন্টারঅ্যাকশন ফেরত দেওয়া হবে। |
email_content_code | না | String | ইমেল বিষয়বস্তুর জন্য অনন্য শনাক্তকারী। |
page | না | Integer | পেজিনেশনের জন্য পৃষ্ঠা নম্বর। |
per_page | না | Integer | প্রতি পৃষ্ঠায় ফলাফলের সংখ্যা (≤ 1000)। |
অনুরোধের উদাহরণ
Anchor link tocurl --location --request POST 'https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractionsDevices' \--header 'Authorization: Api API_ACCESS_TOKEN' \--header 'Content-Type: application/json' \--data-raw '{ "filters": { "date_range": { "date_from": "string", // প্রয়োজনীয় ফর্ম্যাট: 2000-01-01 "date_to": "string" // প্রয়োজনীয় ফর্ম্যাট: 2000-01-01 }, "campaign": "string", // ক্যাম্পেইন কোড (আপনি এর পরিবর্তে application, messages_ids, বা message_codes নির্দিষ্ট করতে পারেন) "application": "string", // অ্যাপ্লিকেশন কোড (আপনি এর পরিবর্তে campaign, messages_ids, বা message_codes নির্দিষ্ট করতে পারেন) "messages_ids": [], // বার্তা আইডি (আপনি এর পরিবর্তে application, campaign, বা message_codes নির্দিষ্ট করতে পারেন) "messages_codes": [], // বার্তা কোড (আপনি এর পরিবর্তে application, campaign, বা message_ids নির্দিষ্ট করতে পারেন) "link_template": "string", // লিঙ্ক টেমপ্লেট (application বা campaign নির্দিষ্ট করা হলে প্রয়োজনীয়) "email_content_code": "string" // ইমেল বিষয়বস্তুর জন্য অনন্য শনাক্তকারী। }, "per_page": 100, "page": 0}'প্রতিক্রিয়া কোড এবং উদাহরণ
Anchor link to{ "total": 0, "items": [{ "timestamp": "string", "link": "string", "hwid": "string" }]}{ "error": "exceeded the maximum date interval. Max interval: 30 days"}{ "error": "account not found"}bouncedEmails
Anchor link toPOST https://api.pushwoosh.com/api/v2/statistics/emails/bouncedEmails
ইমেল অভিযোগ, সফট বাউন্স এবং হার্ড বাউন্স সম্পর্কিত ডেটা সরবরাহ করে, যার মধ্যে প্রতিটি বাউন্সের তারিখ, ইমেল ঠিকানা এবং কারণ অন্তর্ভুক্ত।
অনুমোদন
Anchor link toঅনুরোধের হেডারে API অ্যাক্সেস টোকেনের মাধ্যমে অনুমোদন পরিচালনা করা হয়।
অনুরোধের বডি প্যারামিটার
Anchor link to| প্যারামিটারের নাম | টাইপ | বিবরণ | প্রয়োজনীয় |
|---|---|---|---|
application | string | Pushwoosh অ্যাপ্লিকেশন কোড | হ্যাঁ |
message_code | string | বার্তা কোড। | date range বা campaign প্রদান না করা হলে প্রয়োজনীয় |
campaign | string | ক্যাম্পেইন কোড। | message_code বা date range প্রদান না করা হলে প্রয়োজনীয় |
date_from | string | YYYY-MM-DDTHH:MM:SS.000Z (ISO 8601 standard) ফর্ম্যাটে ডেটার জন্য শুরুর তারিখ। | message_code বা campaign প্রদান না করা হলে প্রয়োজনীয় |
date_to | string | YYYY-MM-DDTHH:MM:SS.000Z (ISO 8601 standard) ফর্ম্যাটে ডেটার জন্য শেষ তারিখ। | message_code বা campaign প্রদান না করা হলে প্রয়োজনীয় |
per_page | int | প্রতি পৃষ্ঠায় সারির সংখ্যা, সর্বোচ্চ 5000। | হ্যাঁ |
page | int | পৃষ্ঠা নম্বর, শূন্য থেকে শুরু। | হ্যাঁ |
type | string | বাউন্সের ধরন: Complaint, Softbounce, Hardbounce। | না |
অনুরোধের উদাহরণ
Anchor link to{ "application": "XXXXX-XXXXX", // প্রয়োজনীয়। Pushwoosh অ্যাপ কোড "message_code": "XXXXX-XXXXXXXXX-XXXXXXXX", // campaign বা date range প্রদান না করা হলে প্রয়োজনীয়। // অনন্য বার্তা শনাক্তকারী "campaign": "XXXXX-XXXXX", // message_code বা date range প্রদান না করা হলে প্রয়োজনীয়। // ক্যাম্পেইন কোড "date_from": "2024-07-20T00:00:00.000Z", // message_code বা campaign প্রদান না করা হলে প্রয়োজনীয়। // ISO 8601 ফর্ম্যাটে শুরুর তারিখ "YYYY-MM-DDTHH:MM:SS.SSSZ" "date_to": "2024-07-20T00:00:00.000Z", // message_code বা campaign প্রদান না করা হলে প্রয়োজনীয়। // ISO 8601 ফর্ম্যাটে শেষ তারিখ "YYYY-MM-DDTHH:MM:SS.SSSZ" "per_page": 1000, // প্রয়োজনীয়। প্রতি পৃষ্ঠায় ফলাফলের সংখ্যা, সর্বোচ্চ 5000 "page": 5, // ঐচ্ছিক। পৃষ্ঠা নম্বর, শূন্য থেকে শুরু "type": "Softbounce" // ঐচ্ছিক। বাউন্সের ধরন: Complaint, Softbounce, Hardbounce}প্রতিক্রিয়া ক্ষেত্র
Anchor link to| ফিল্ডের নাম | টাইপ | বিবরণ |
|---|---|---|
total | int | সারির মোট সংখ্যা। |
bounced_emails | array | বাউন্স হওয়া ইমেলের বিবরণের একটি অ্যারে। |
├── email | string | যে ইমেল ঠিকানাটি বাউন্স হয়েছে। |
├── date | string | বাউন্সের তারিখ (ফর্ম্যাট: YYYY-MM-DDTHH:MM:SS.000Z)। |
├── reason | string | বাউন্সের কারণ। |
└── type | string | বাউন্সের ধরন: Complaint, Softbounce, Hardbounce। |
প্রতিক্রিয়ার উদাহরণ
Anchor link to{ "total": 25, // সারির মোট সংখ্যা। "bounced_emails": [{ "email": "example@example.com", // যে ইমেল ঠিকানাটি বাউন্স হয়েছে "date": "2024-07-20T00:00:00.000Z", // ISO 8601 ফর্ম্যাটে বাউন্সের তারিখ "reason": "Invalid recipient address", // বাউন্সের কারণ "type": "Hardbounce" // বাউন্সের ধরন: Complaint, Softbounce, Hardbounce }]}