বিষয়বস্তুতে যান

Email API

createEmailMessage

Anchor link to

একটি ইমেইল বার্তা তৈরি করে।

POST https://api.pushwoosh.com/json/1.3/createEmailMessage

Request body প্যারামিটার

Anchor link to
নামটাইপ
আবশ্যকবিবরণ
authstringহ্যাঁPushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন
applicationstringহ্যাঁPushwoosh অ্যাপ্লিকেশন কোড
notificationsarrayহ্যাঁইমেইল বার্তার বিবরণ সম্বলিত JSON অ্যারে। নিচের Notifications প্যারামিটার টেবিলটি দেখুন।

Notifications প্যারামিটার

Anchor link to
নামটাইপ
আবশ্যকবিবরণ
send_datestringহ্যাঁইমেইলটি কখন পাঠাতে হবে তা নির্ধারণ করে। ফরম্যাট: YYYY-MM-DD HH:mm অথবা "now"
presetstringহ্যাঁইমেইল প্রিসেট কোড। Pushwoosh কন্ট্রোল প্যানেলের Email Content Editor-এর URL বার থেকে কপি করুন।
subjectstring অথবা objectনাইমেইলের বিষয় (Subject line)। ইমেইলটি সর্বদা কন্টেন্টের ভাষায় থাকবে। যদি subject-এ content-এর জন্য কোনো মিল থাকা ভাষা না থাকে, তবে বিষয়টি খালি থাকবে।
contentstring অথবা objectনাইমেইল বডি কন্টেন্ট। প্লেইন HTML কন্টেন্টের জন্য একটি স্ট্রিং অথবা লোকালাইজড সংস্করণের জন্য একটি অবজেক্ট হতে পারে।
attachmentsarrayনাইমেইল অ্যাটাচমেন্ট। মাত্র দুটি অ্যাটাচমেন্ট উপলব্ধ। প্রতিটি অ্যাটাচমেন্ট 1MB-এর বেশি হওয়া যাবে না (base64 এনকোডেড)।
list_unsubscribestringনা”Link-Unsubscribe” হেডারের জন্য কাস্টম URL সেট করার অনুমতি দেয়।
campaignstringনাএকটি নির্দিষ্ট ক্যাম্পেইনের সাথে ইমেইলটি যুক্ত করতে ক্যাম্পেইন কোড
ignore_user_timezonebooleanনাযদি true হয়, তবে ব্যবহারকারীর টাইমজোন উপেক্ষা করে ইমেইলটি অবিলম্বে পাঠানো হয়।
timezonestringনাব্যবহারকারীর টাইমজোন অনুযায়ী ইমেইল পাঠায়। উদাহরণ: "America/New_York"
filterstringনানির্দিষ্ট ফিল্টার শর্ত পূরণকারী ব্যবহারকারীদের ইমেইল পাঠায়।
devicesarrayনাটার্গেটেড ইমেইল পাঠানোর জন্য ইমেইল ঠিকানার তালিকা (সর্বোচ্চ ১০০০)। যদি ব্যবহার করা হয়, বার্তাটি শুধুমাত্র এই ঠিকানাগুলিতে পাঠানো হয়। Application Group ব্যবহার করা হলে এটি উপেক্ষা করা হয়।
use_auto_registrationbooleanনাযদি true হয়, তবে devices প্যারামিটার থেকে ইমেইলগুলি স্বয়ংক্রিয়ভাবে নিবন্ধন করে।
usersarrayনাযদি সেট করা থাকে, ইমেইল বার্তাটি শুধুমাত্র নির্দিষ্ট User ID-তে পৌঁছে দেওয়া হবে (/registerEmail কলের মাধ্যমে নিবন্ধিত)। একটি অ্যারেতে ১০০০-এর বেশি ইউজার আইডি নয়। যদি “devices” প্যারামিটার নির্দিষ্ট করা থাকে, তবে “users” প্যারামিটার উপেক্ষা করা হবে।
dynamic_content_placeholdersobjectনাডিভাইস ট্যাগ ভ্যালুর পরিবর্তে ডায়নামিক কন্টেন্টের জন্য প্লেসহোল্ডার।
conditionsarrayনাট্যাগ ব্যবহার করে সেগমেন্টেশন শর্তাবলী। উদাহরণ: [["Country", "EQ", "BR"]]
fromobjectনাঅ্যাপ্লিকেশন প্রপার্টিতে ডিফল্ট ওভাররাইড করে একটি কাস্টম প্রেরকের নাম এবং ইমেইল নির্দিষ্ট করুন।
reply-toobjectনাঅ্যাপ্লিকেশন প্রপার্টিতে ডিফল্ট ওভাররাইড করে একটি কাস্টম reply-to ইমেইল নির্দিষ্ট করুন।
transactionIdstringনানেটওয়ার্ক সমস্যার ক্ষেত্রে পুনরায় পাঠানো প্রতিরোধ করতে অনন্য বার্তা শনাক্তকারী। Pushwoosh-এর সাইডে ৫ মিনিটের জন্য সংরক্ষিত থাকে।
capping_daysintegerনাপ্রতি ডিভাইসে ফ্রিকোয়েন্সি ক্যাপিং প্রয়োগ করার জন্য দিনের সংখ্যা (সর্বোচ্চ ৩০)। দ্রষ্টব্য: নিশ্চিত করুন যে কন্ট্রোল প্যানেলে গ্লোবাল ফ্রিকোয়েন্সি ক্যাপিং কনফিগার করা আছে।
capping_countintegerনাএকটি capping_days পিরিয়ডের মধ্যে একটি নির্দিষ্ট অ্যাপ থেকে একটি নির্দিষ্ট ডিভাইসে পাঠানো যেতে পারে এমন ইমেইলের সর্বোচ্চ সংখ্যা। যদি তৈরি করা বার্তাটি কোনো ডিভাইসের জন্য capping_count সীমা অতিক্রম করে, তবে এটি সেই ডিভাইসে পাঠানো হবে না।
capping_excludebooleanনাযদি true সেট করা হয়, তবে এই ইমেইলটি ভবিষ্যতের ইমেইলগুলির জন্য ক্যাপিংয়ের দিকে গণনা করা হবে না।
capping_avoidbooleanনাযদি true সেট করা হয়, তবে এই নির্দিষ্ট ইমেইলের জন্য ক্যাপিং প্রয়োগ করা হবে না।
send_rateintegerনাসমস্ত ব্যবহারকারী জুড়ে প্রতি সেকেন্ডে কতগুলি বার্তা পাঠানো যেতে পারে তা সীমাবদ্ধ করুন। উচ্চ-ভলিউম পাঠানোর সময় ব্যাকএন্ড ওভারলোড প্রতিরোধে সহায়তা করে।
send_rate_avoidbooleanনাযদি true সেট করা হয়, তবে এই নির্দিষ্ট ইমেইলের জন্য থ্রটলিং সীমা প্রয়োগ করা হবে না।

Request উদাহরণ

Anchor link to
{
"request": {
"auth": "API_ACCESS_TOKEN", // আবশ্যক। Pushwoosh কন্ট্রোল প্যানেল থেকে API অ্যাক্সেস টোকেন
"application": "APPLICATION_CODE", // আবশ্যক। Pushwoosh অ্যাপ্লিকেশন কোড।
"notifications": [{
"send_date": "now", // আবশ্যক। YYYY-MM-DD HH:mm অথবা 'now'
"preset": "ERXXX-32XXX", // আবশ্যক। Pushwoosh কন্ট্রোল প্যানেলের Email Content editor পেজের
// URL বার থেকে Email প্রিসেট কোড কপি করুন।
"subject": { // ঐচ্ছিক। ইমেইল বার্তার বিষয়।
"de": "subject de",
"en": "subject en"
},
"content": { // ঐচ্ছিক। ইমেইল বডি কন্টেন্ট।
"de": "<html><body>de Hello, moto</body></html>",
"default": "<html><body>default Hello, moto</body></html>"
},
"attachments": [{ // ঐচ্ছিক। ইমেইল অ্যাটাচমেন্ট
"name": "image.png", // "name" - ফাইলের নাম
"content": "iVBANA...AFTkuQmwC" // "content" - ফাইলের base64 এনকোডেড কন্টেন্ট
}, {
"name": "file.pdf",
"content": "JVBERi...AFTarEGC"
}],
"list_unsubscribe": "URL", // ঐচ্ছিক। "Link-Unsubscribe" হেডারের জন্য কাস্টম URL সেট করার অনুমতি দেয়
"campaign": "CAMPAIGN_CODE", // ঐচ্ছিক। এই ইমেইল বার্তাটি একটি নির্দিষ্ট ক্যাম্পেইনের সাথে যুক্ত করতে,
// এখানে একটি ক্যাম্পেইন কোড যোগ করুন।
"ignore_user_timezone": true, // ঐচ্ছিক।
"timezone": "America/New_York", // ঐচ্ছিক। ব্যবহারকারীর ডিভাইসে সেট করা টাইমজোন অনুযায়ী
// বার্তা পাঠাতে নির্দিষ্ট করুন।
"filter": "FILTER_NAME", // ঐচ্ছিক। ফিল্টার শর্ত পূরণকারী নির্দিষ্ট ব্যবহারকারীদের বার্তা পাঠান।
"devices": [ // ঐচ্ছিক। টার্গেটেড ইমেইল বার্তা পাঠাতে ইমেইল ঠিকানা নির্দিষ্ট করুন।
"email_address1", // একটি অ্যারেতে ১০০০-এর বেশি ঠিকানা নয়।
"email_address2" // যদি সেট করা থাকে, বার্তাটি শুধুমাত্র তালিকার ঠিকানাগুলিতে
], // পাঠানো হবে। Application Group ব্যবহার করা হলে উপেক্ষা করা হয়।
"use_auto_registration": true, // ঐচ্ছিক। "devices" প্যারামিটারে নির্দিষ্ট করা ইমেইলগুলি স্বয়ংক্রিয়ভাবে নিবন্ধন করুন
"users": [ // ঐচ্ছিক। যদি সেট করা থাকে, ইমেইল বার্তাটি শুধুমাত্র নির্দিষ্ট
"userId1", // ইউজার আইডিগুলিতে পৌঁছে দেওয়া হবে (/registerEmail কলের মাধ্যমে নিবন্ধিত)।
"userId2" // একটি অ্যারেতে ১০০০-এর বেশি ইউজার আইডি নয়।
], // যদি "devices" প্যারামিটার নির্দিষ্ট করা থাকে,
// তবে "users" প্যারামিটার উপেক্ষা করা হবে।
"dynamic_content_placeholders": { // ঐচ্ছিক। ডিভাইস ট্যাগ ভ্যালুর পরিবর্তে ডায়নামিক কন্টেন্টের জন্য প্লেসহোল্ডার।
"firstname": "John",
"firstname_en": "John"
},
"conditions": [ // ঐচ্ছিক। সেগমেন্টেশন শর্তাবলী, নিচের মন্তব্য দেখুন।
["Country", "EQ", "BR"],
["Language", "EQ", "pt"]
],
"from": { // ঐচ্ছিক। অ্যাপ্লিকেশন প্রপার্টিতে সেট করা ডিফল্ট "From name"
"name": "alias from", // এবং "From email" প্রতিস্থাপন করতে একটি প্রেরকের নাম
"email": "from-email@email.com" // এবং প্রেরকের ইমেইল ঠিকানা নির্দিষ্ট করুন।
},
"reply-to": { // ঐচ্ছিক। অ্যাপ্লিকেশন প্রপার্টিতে সেট করা ডিফল্ট "Reply to"
"name": "alias reply to ", // প্রতিস্থাপন করতে একটি ইমেইল ঠিকানা নির্দিষ্ট করুন।
"email": "reply-to@email.com"
},
"transactionId": "unique UUID", // ঐচ্ছিক। নেটওয়ার্ক সমস্যার ক্ষেত্রে পুনরায় পাঠানো প্রতিরোধ করতে
// অনন্য বার্তা শনাক্তকারী। Pushwoosh-এর সাইডে
// ৫ মিনিটের জন্য সংরক্ষিত থাকে।
// Frequency capping প্যারামিটার। নিশ্চিত করুন যে কন্ট্রোল প্যানেলে গ্লোবাল ফ্রিকোয়েন্সি ক্যাপিং কনফিগার করা আছে।
"capping_days": 30, // ঐচ্ছিক। ফ্রিকোয়েন্সি ক্যাপিংয়ের জন্য দিনের পরিমাণ (সর্বোচ্চ ৩০ দিন)
"capping_count": 10, // ঐচ্ছিক। একটি 'capping_days' পিরিয়ডের মধ্যে একটি নির্দিষ্ট অ্যাপ থেকে
// একটি নির্দিষ্ট ডিভাইসে পাঠানো যেতে পারে এমন ইমেইলের সর্বোচ্চ সংখ্যা।
// যদি তৈরি করা বার্তাটি কোনো ডিভাইসের জন্য 'capping_count' সীমা
// অতিক্রম করে, তবে এটি সেই ডিভাইসে পাঠানো হবে না।
"capping_exclude": true, // ঐচ্ছিক। যদি true সেট করা হয়, তবে এই ইমেইলটি ভবিষ্যতের ইমেইলগুলির
// জন্য ক্যাপিংয়ের দিকে গণনা করা হবে না।
"capping_avoid": true, // ঐচ্ছিক। যদি true সেট করা হয়, তবে এই নির্দিষ্ট ইমেইলের জন্য
// ক্যাপিং প্রয়োগ করা হবে না।
"send_rate": 100, // ঐচ্ছিক। থ্রটলিং সীমা।
// সমস্ত ব্যবহারকারী জুড়ে প্রতি সেকেন্ডে কতগুলি বার্তা পাঠানো যেতে পারে তা সীমাবদ্ধ করুন।
// উচ্চ-ভলিউম পাঠানোর সময় ব্যাকএন্ড ওভারলোড প্রতিরোধে সহায়তা করে।
"send_rate_avoid": true, // ঐচ্ছিক। যদি true সেট করা হয়, তবে এই নির্দিষ্ট ইমেইলের জন্য
// থ্রটলিং সীমা প্রয়োগ করা হবে না।
}]
}
}

Response উদাহরণ

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": null
}

ট্যাগ শর্তাবলী

Anchor link to

প্রতিটি ট্যাগ শর্ত একটি অ্যারের মতো [tagName, operator, operand] যেখানে

  • tagName: একটি ট্যাগের নাম
  • operator: “EQ” | “IN” | “NOTEQ” | “NOTIN” | “LTE” | “GTE” | “BETWEEN”
  • operand: string | integer | array | date

Operand বিবরণ

Anchor link to
  • EQ: ট্যাগ ভ্যালু operand-এর সমান;
  • IN: ট্যাগ ভ্যালু operand-এর সাথে ছেদ করে (operand সর্বদা একটি অ্যারে হতে হবে);
  • NOTEQ: ট্যাগ ভ্যালু operand-এর সমান নয়;
  • NOTIN: ট্যাগ ভ্যালু operand-এর সাথে ছেদ করে না (operand সর্বদা একটি অ্যারে হতে হবে);
  • GTE: ট্যাগ ভ্যালু operand-এর চেয়ে বড় বা সমান;
  • LTE: ট্যাগ ভ্যালু operand-এর চেয়ে ছোট বা সমান;
  • BETWEEN: ট্যাগ ভ্যালু min operand ভ্যালুর চেয়ে বড় বা সমান কিন্তু max operand ভ্যালুর চেয়ে ছোট বা সমান (operand সর্বদা একটি অ্যারে হতে হবে)।

স্ট্রিং ট্যাগ

Anchor link to

বৈধ অপারেটর: EQ, IN, NOTEQ, NOTIN
বৈধ অপারেন্ড:

  • EQ, NOTEQ: operand অবশ্যই একটি স্ট্রিং হতে হবে;
  • IN, NOTIN: operand অবশ্যই স্ট্রিংয়ের একটি অ্যারে হতে হবে যেমন ["value 1", "value 2", "value N"];

ইন্টিজার ট্যাগ

Anchor link to

বৈধ অপারেটর: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE
বৈধ অপারেন্ড:

  • EQ, NOTEQ, GTE, LTE: operand অবশ্যই একটি ইন্টিজার হতে হবে;
  • IN, NOTIN: operand অবশ্যই ইন্টিজারের একটি অ্যারে হতে হবে যেমন [value 1, value 2, value N];
  • BETWEEN: operand অবশ্যই ইন্টিজারের একটি অ্যারে হতে হবে যেমন [min_value, max_value]

তারিখ ট্যাগ

Anchor link to

বৈধ অপারেটর: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE
বৈধ অপারেন্ড:

  • "YYYY-MM-DD 00:00" (string)
  • unix timestamp 1234567890 (integer)
  • "N days ago" (string) অপারেটর EQ, BETWEEN, GTE, LTE-এর জন্য

বুলিয়ান ট্যাগ

Anchor link to

বৈধ অপারেটর: EQ
বৈধ অপারেন্ড: 0, 1, true, false

লিস্ট ট্যাগ

Anchor link to

বৈধ অপারেটর: IN
বৈধ অপারেন্ড: operand অবশ্যই স্ট্রিংয়ের একটি অ্যারে হতে হবে যেমন ["value 1", "value 2", "value N"]

registerEmail

Anchor link to

অ্যাপের জন্য ইমেইল ঠিকানা নিবন্ধন করে।

POST https://api.pushwoosh.com/json/1.3/registerEmail

Request হেডার

Anchor link to
নামআবশ্যকভ্যালুবিবরণ
Authorizationহ্যাঁটোকেন XXXXDevice API অ্যাক্সেস করতে API ডিভাইস টোকেনXXXX কে আপনার আসল Device API টোকেন দিয়ে প্রতিস্থাপন করুন।

Request body

Anchor link to
নামটাইপবিবরণ
application*stringPushwoosh অ্যাপ্লিকেশন কোড
email*stringইমেইল ঠিকানা।
languagestringডিভাইসের ল্যাঙ্গুয়েজ লোকেল। ISO-639-1 স্ট্যান্ডার্ড অনুযায়ী অবশ্যই একটি ছোট হাতের দুই-অক্ষরের কোড হতে হবে।
userIdstringইমেইল ঠিকানার সাথে যুক্ত করতে User ID
tz_offsetintegerসেকেন্ডে টাইমজোন অফসেট।
tagsobjectনিবন্ধিত ডিভাইসে অ্যাসাইন করার জন্য ট্যাগ ভ্যালু।
{
"status_code": 200,
"status_message": "OK",
"response": null
}
উদাহরণ
{
"request": {
"application": "APPLICATION_CODE", // আবশ্যক। Pushwoosh অ্যাপ্লিকেশন কোড।
"email":"email@domain.com", // আবশ্যক। নিবন্ধিত করার জন্য ইমেইল ঠিকানা।
"language": "en", // ঐচ্ছিক। ল্যাঙ্গুয়েজ লোকেল।
"userId": "userId", // ঐচ্ছিক। ইমেইল ঠিকানার সাথে যুক্ত করতে User ID।
"tz_offset": 3600, // ঐচ্ছিক। সেকেন্ডে টাইমজোন অফসেট।
"tags": { // ঐচ্ছিক। নিবন্ধিত ডিভাইসের জন্য সেট করার ট্যাগ ভ্যালু।
"StringTag": "string value",
"IntegerTag": 42,
"ListTag": ["string1","string2"], // List টাইপের ট্যাগের জন্য ভ্যালুর তালিকা সেট করে
"DateTag": "2024-10-02 22:11", // মনে রাখবেন সময়টি UTC-তে হওয়া উচিত
"BooleanTag": true // বৈধ ভ্যালুগুলি হলো: true, false
}
}
}

deleteEmail

Anchor link to

আপনার ইউজার বেস থেকে ইমেইল ঠিকানা সরিয়ে দেয়।

POST https://api.pushwoosh.com/json/1.3/deleteEmail

Request হেডার

Anchor link to
নামআবশ্যকভ্যালুবিবরণ
Authorizationহ্যাঁটোকেন XXXXDevice API অ্যাক্সেস করতে API ডিভাইস টোকেনXXXX কে আপনার আসল Device API টোকেন দিয়ে প্রতিস্থাপন করুন।

Request body

Anchor link to
নামটাইপবিবরণ
applicationstringPushwoosh অ্যাপ্লিকেশন কোড
emailstring/registerEmail অনুরোধে ব্যবহৃত ইমেইল ঠিকানা।
{
"status_code": 200,
"status_message": "OK",
"response": null
}
উদাহরণ
{
"request": {
"application": "APPLICATION_CODE", // আবশ্যক। Pushwoosh অ্যাপ্লিকেশন কোড
"email": "email@domain.com" // আবশ্যক। অ্যাপ সাবস্ক্রাইবারদের থেকে মুছে ফেলার জন্য ইমেইল।
}
}

setEmailTags

Anchor link to

ইমেইল ঠিকানার জন্য ট্যাগ ভ্যালু সেট করে।

POST https://api.pushwoosh.com/json/1.3/setEmailTags

Request হেডার

Anchor link to
নামআবশ্যকভ্যালুবিবরণ
Authorizationহ্যাঁটোকেন XXXXDevice API অ্যাক্সেস করতে API ডিভাইস টোকেনXXXX কে আপনার আসল Device API টোকেন দিয়ে প্রতিস্থাপন করুন।

Request body

Anchor link to
নামটাইপবিবরণ
applicationstringPushwoosh অ্যাপ্লিকেশন কোড
emailstringইমেইল ঠিকানা।
tagsobjectসেট করার জন্য ট্যাগের JSON অবজেক্ট, ভ্যালু সরাতে ‘null’ পাঠান।
userIdstringইমেইল ঠিকানার সাথে যুক্ত User ID
{
"status_code": 200,
"status_message": "OK",
"response": {
"skipped": []
}
}
উদাহরণ
{
"request": {
"email": "email@domain.com", // আবশ্যক। ট্যাগ সেট করার জন্য ইমেইল ঠিকানা।
"application": "APPLICATION_CODE", // আবশ্যক। Pushwoosh অ্যাপ্লিকেশন কোড।
"tags": {
"StringTag": "string value",
"IntegerTag": 42,
"ListTag": ["string1", "string2"],
"DateTag": "2024-10-02 22:11", // UTC-তে সময়
"BooleanTag": true // বৈধ ভ্যালুগুলি হলো: true, false
},
"userId": "userId" // ঐচ্ছিক। ইমেইল ঠিকানার সাথে যুক্ত User ID।
}
}

registerEmailUser

Anchor link to

একটি নির্দিষ্ট ইমেইল ঠিকানার সাথে একটি এক্সটার্নাল User ID যুক্ত করে।

POST https://api.pushwoosh.com/json/1.3/registerEmailUser

/createEmailMessage API কলে (‘users’ প্যারামিটার) ব্যবহার করা যেতে পারে।

Request হেডার

Anchor link to
নামআবশ্যকভ্যালুবিবরণ
Authorizationহ্যাঁটোকেন XXXXDevice API অ্যাক্সেস করতে API ডিভাইস টোকেনXXXX কে আপনার আসল Device API টোকেন দিয়ে প্রতিস্থাপন করুন।

Request body

Anchor link to
নামটাইপবিবরণ
application*stringPushwoosh অ্যাপ্লিকেশন কোড
email*stringইমেইল ঠিকানা।
userId*stringইমেইল ঠিকানার সাথে যুক্ত করতে User ID
tz_offsetintegerসেকেন্ডে টাইমজোন অফসেট।
{
"status_code": 200,
"status_message": "OK",
"response": null
}
উদাহরণ
{
"request": {
"application": "APPLICATION_CODE", // আবশ্যক। Pushwoosh অ্যাপ্লিকেশন কোড।
"email": "email@domain.com", // আবশ্যক। ব্যবহারকারীর ইমেইল ঠিকানা।
"userId": "userId", // আবশ্যক। ইমেইল ঠিকানার সাথে যুক্ত করতে User ID।
"tz_offset": 3600 // ঐচ্ছিক। সেকেন্ডে টাইমজোন অফসেট।
}
}