সেগমেন্টেশন (ফিল্টার) API
createFilter
Anchor link toPOST https://api.pushwoosh.com/json/1.3/createFilter
একটি নতুন ফিল্টার তৈরি করে।
অনুরোধের বডি
| নাম | প্রয়োজনীয় | টাইপ | বিবরণ |
|---|---|---|---|
| auth* | হ্যাঁ | string | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
| name* | হ্যাঁ | string | ফিল্টারের নাম। |
| filter_expression* | হ্যাঁ | string | সেগমেন্টেশন ল্যাঙ্গুয়েজ এর নিয়ম অনুযায়ী নির্মিত এক্সপ্রেশন। |
| application | না | string | Pushwoosh অ্যাপ্লিকেশন কোড। এই প্যারামিটারটি শুধুমাত্র হাই-স্পিড সেটআপের সাথে ব্যবহারযোগ্য; অন্যথায় বাদ দিন। |
| expiration_date | না | string | ফিল্টারের মেয়াদ শেষ হওয়ার তারিখ। ফিল্টারটি একটি নির্দিষ্ট তারিখে স্বয়ংক্রিয়ভাবে মুছে ফেলা হবে, যদি না এটি একটি প্রিসেট বা একটি RSS ফিডে ব্যবহৃত হয়। |
200
{ "status_code": 200, "status_message": "OK", "response": { "name": "filter name" }}উদাহরণ
{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", "name": "City = Madrid", "filter_expression": "T(\"City\", eq, \"Madrid\")", "application": "B18XX-XXXXX", "expiration_date": "2025-01-01" }}
// টাইমজোনের জন্য ফিল্টার তৈরি করা হচ্ছে{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", // Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন "name": "Timezone Filter", "filter_expression": "T(\"Timezone\", BETWEEN, [\"UTC-12:00\", \"UTC+14:00\"])" }}listFilters
Anchor link toPOST https://api.pushwoosh.com/json/1.3/listFilters
উপলব্ধ সেগমেন্ট (ফিল্টার) এবং তাদের শর্তাবলী সহ একটি তালিকা প্রদান করে।
অনুরোধের বডি
| নাম | প্রয়োজনীয় | টাইপ | বিবরণ |
|---|---|---|---|
| auth* | হ্যাঁ | string | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
| application* | হ্যাঁ | string | Pushwoosh অ্যাপ্লিকেশন কোড |
200
{ "status_code": 200, "status_message": "OK", "response": { "filters": [{ "code": "52551-F2F42", "name": "City = Madrid", "filter_expression": "T(\"City\", eq, \"madrid\")", "expiration_date": "2025-01-01", "application": "B18XX-XXXXX" }] }}উদাহরণ
{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", "application": "B18XX-XXXXX" }}deleteFilter
Anchor link toPOST https://api.pushwoosh.com/json/1.3/deleteFilter
একটি বিদ্যমান ফিল্টার মুছে ফেলে।
অনুরোধের বডি
| নাম | টাইপ | বিবরণ |
|---|---|---|
| auth* | string | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
| name* | string | ফিল্টারের নাম। |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", // Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন "name": "filter name" }}exportSegment
Anchor link toPOST https://api.pushwoosh.com/api/v2/audience/exportSegment
একটি নির্ধারিত অনুরোধ। নির্দিষ্ট ফিল্টার শর্তের অধীনে থাকা সাবস্ক্রাইবারদের তালিকা এক্সপোর্ট করে।
অনুরোধের বডি
| নাম | প্রয়োজনীয় | টাইপ | বিবরণ |
|---|---|---|---|
| auth* | হ্যাঁ | string | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
| filterExpression* | হ্যাঁ | string | ফিল্টারের শর্তাবলী |
| exportData | না | array | এক্সপোর্ট করার জন্য ডেটা। সম্ভাব্য মান: "hwids", "push_tokens", "users", "tags", "location"। "location" অন্তর্ভুক্ত করলে এক্সপোর্ট করা CSV ফাইলে Latitude এবং Longitude কলাম যোগ হয়। যদি exportData বাদ দেওয়া হয়, তাহলে Latitude এবং Longitude ডিফল্টভাবে এক্সপোর্টে অন্তর্ভুক্ত থাকে। |
| filterCode | না | string | আগে থেকে তৈরি করা ফিল্টার কোড, filterExpression এর পরিবর্তে ব্যবহার করা যেতে পারে। এটি /listFilters API থেকে বা কন্ট্রোল প্যানেলে ফিল্টার দেখার সময় আপনার ব্রাউজারের অ্যাড্রেস বার থেকে পাওয়া যেতে পারে। |
| applicationCode | filterExpression বা filterCode ব্যবহার করলে এটি প্রয়োজনীয়। | string | Pushwoosh অ্যাপ্লিকেশন কোড |
| generateExport | না | boolean | ডিফল্টভাবে true তে সেট করা থাকে, এবং একটি প্রতিক্রিয়াতে ফাইলটি ডাউনলোড করার জন্য একটি লিঙ্ক থাকে। যদি false হয়, তবে প্রতিক্রিয়াতে শুধুমাত্র ডিভাইসের সংখ্যা পাঠানো হবে। |
| format | না | string | এক্সপোর্ট করা ফাইলের ফরম্যাট সেট করে: “csv” বা “json_each_line”। যদি বাদ দেওয়া হয়, তাহলে CSV ফাইল তৈরি হয়। |
| tagsList | না | array | এক্সপোর্ট করার জন্য ট্যাগ নির্দিষ্ট করে। শুধুমাত্র নির্দিষ্ট ট্যাগগুলি পেতে, “exportData” অ্যারেতে “tags” মানটি থাকা উচিত। |
| includeWithoutTokens | না | boolean | এক্সপোর্ট করা ফাইলে পুশ টোকেন ছাড়া ব্যবহারকারীদের অন্তর্ভুক্ত করতে true তে সেট করুন। ডিফল্ট false। |
{ "task_id": "177458"}{ "auth": "yxoPUlwqm…………pIyEX4H", // প্রয়োজনীয়। Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন "filterExpression": "AT(\"12345-67890\", \"Name\", any)", // ফিল্টারের শর্তাবলী, সিনট্যাক্সের জন্য সেগমেন্টেশন ল্যাঙ্গুয়েজ গাইড দেখুন "filterCode": "12345-67890", // আগে থেকে তৈরি করা ফিল্টার কোড, filterExpression এর পরিবর্তে ব্যবহার করা যেতে পারে "applicationCode": "00000-AAAAA", // `filterExpression` বা `filterCode` ব্যবহার করলে এটি প্রয়োজনীয়। Pushwoosh অ্যাপ কোড। এটি /listFilters API অনুরোধ থেকে বা কন্ট্রোল প্যানেলে ফিল্টার দেখার সময় আপনার ব্রাউজারের অ্যাড্রেস বার থেকে পাওয়া যেতে পারে। "generateExport": true, // যদি false হয়, তবে প্রতিক্রিয়াতে শুধুমাত্র ডিভাইসের সংখ্যা পাঠানো হবে; ডিফল্টভাবে, একটি প্রতিক্রিয়াতে CSV ফাইল ডাউনলোড করার জন্য একটি লিঙ্ক থাকে "format": "json_each_line", // ডেটা উপস্থাপনের জন্য ফাইলের ফরম্যাট: "csv" – .csv ফাইল ডাউনলোড করা হয়; "json" – সমস্ত এক্সপোর্ট করা ডিভাইস সহ একটি JSON ফাইল; বা "json_each_line" – প্রতিটি ডিভাইসের জন্য JSON লাইন। যদি নির্দিষ্ট না করা হয়, CSV ডিফল্ট ফরম্যাট। "exportData": ["hwids", "tags"], // ঐচ্ছিক। এক্সপোর্ট করার জন্য ডেটা। সম্ভাব্য মান: "hwids", "push_tokens", "users", "tags", "location", "fcm_keys", "web keys" "tagsList": ["Name", "Level"], // ঐচ্ছিক। এক্সপোর্ট করার জন্য ট্যাগ নির্দিষ্ট করে। শুধুমাত্র নির্দিষ্ট ট্যাগগুলি পেতে, "tags" মানটি "exportData" অ্যারের মধ্যে পাঠানো উচিত বা "exportData" খালি থাকা উচিত। "includeWithoutTokens": true // ঐচ্ছিক। এক্সপোর্ট করা ফাইলে পুশ টোকেন ছাড়া ব্যবহারকারীদের অন্তর্ভুক্ত করতে true তে সেট করুন। ডিফল্ট false।}উদাহরণস্বরূপ, একটি নির্দিষ্ট অ্যাপের সমস্ত সাবস্ক্রাইবার এক্সপোর্ট করতে, নিম্নলিখিত ফিল্টার শর্তাবলী ব্যবহার করুন:
{ "auth": "yxoPUlwqm…………pIyEX4H", // Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন "filterExpression": "A(\"AAAAA-BBBBB\")", // অ্যাপ সেগমেন্টের রেফারেন্স সহ ফিল্টার এক্সপ্রেশন "applicationCode": "AAAAA-BBBBB" // প্রয়োজনীয় Pushwoosh অ্যাপ কোড}exportSegment ফলাফল
Anchor link toPOST https://api.pushwoosh.com/api/v2/audience/exportSegment/result
/exportSegment ফলাফলের সাথে CSV-এর লিঙ্ক পুনরুদ্ধার করে।
অনুরোধের বডি
| নাম | টাইপ | বিবরণ |
|---|---|---|
| auth* | String | Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন। |
| task_id* | String | আপনার /exportSegment প্রতিক্রিয়াতে প্রাপ্ত শনাক্তকারী। |
{ "devicesCount": "24735", "csvFilename": "https://static.pushwoosh.com/segment-export/export_segment_XXXXX_XXXXX_xxxxxxxxxxxxxxxxx.csv.zip", "status": "completed"}আপনার /exportSegment প্রতিক্রিয়াতে প্রাপ্ত “task_id” টি /exportSegment/result অনুরোধের বডিতে পাস করুন।
/exportSegment/result প্রতিক্রিয়াতে, আপনি “filename” প্যারামিটারটি পাবেন। একটি ZIP আর্কাইভ স্বয়ংক্রিয়ভাবে ডাউনলোড করতে সেই প্যারামিটারের মানে দেওয়া লিঙ্কটি অনুসরণ করুন। ডিভাইসের ডেটা সম্বলিত CSV বা JSON ফাইল (আপনার অনুরোধে নির্দিষ্ট “format” এর উপর নির্ভর করে) পুনরুদ্ধার করতে আর্কাইভটি আনপ্যাক করুন।
এপ্রিল ৩, ২০২৫ থেকে ফাইলটি ডাউনলোড করার জন্য অনুমোদন প্রয়োজন হবে:
- যদি একটি ব্রাউজারের মাধ্যমে ডাউনলোড করেন, তবে অ্যাক্সেস পেতে কেবল Pushwoosh কন্ট্রোল প্যানেলে লগ ইন করুন।
- যদি সার্ভার সফটওয়্যারের মাধ্যমে ডাউনলোড করেন, তবে আপনার অনুরোধে নিম্নলিখিত হেডারটি অন্তর্ভুক্ত করুন:
Authorization: Token YOUR_API_TOKEN
যদি আপনি আপনার /exportSegment অনুরোধে “exportData” নির্দিষ্ট করেন, তবে ডাউনলোড করা ফাইলে শুধুমাত্র অনুরোধ করা ডেটা থাকবে। ডিফল্টভাবে, ফাইলে নিম্নলিখিত ব্যবহারকারীর ডেটা থাকে:
| ক্ষেত্র | বিবরণ | মানের উদাহরণ |
|---|---|---|
| Hwid | একটি ডিভাইসের হার্ডওয়্যার আইডি | 01D1BA5C-AAAA-0000-BBBB-9B81CD5823C8 |
| User ID | ইউজার আইডি যা একটি ডিভাইসকে একটি নির্দিষ্ট ব্যবহারকারীর সাথে যুক্ত করে। যদি কোনো ইউজার আইডি বরাদ্দ না করা হয়, তবে HWID ব্যবহৃত হয়। | user8192 |
| Push Token | ক্লাউড মেসেজিং গেটওয়ে দ্বারা একটি ডিভাইসে বরাদ্দ করা অনন্য শনাক্তকারী। আরও জানুন | eeeb2fd7…0fc3547 |
| Type | প্ল্যাটফর্মের ধরন (পূর্ণসংখ্যা)। | 1 |
| Type (humanized) | প্ল্যাটফর্মের ধরন (স্ট্রিং)। | iOS |
| Age | ডিফল্ট Age ট্যাগের মান। | 29 |
| ApplicationVersion | ডিফল্ট Application Version ট্যাগের মান। | 1.12.0.0 |
| City | ডিফল্ট City ট্যাগের মান। | us, boston |
| TagName | আপনার অ্যাকাউন্টে তৈরি করা একটি ট্যাগের মান। | TagValue |