# API-ভিত্তিক এন্ট্রি ব্যবহার করে কাস্টমার জার্নি ট্রিগার করুন

API-ভিত্তিক এন্ট্রি আপনাকে একটি নির্দিষ্ট ব্যবসায়িক ইভেন্ট ঘটার মুহূর্তে একটি কাস্টমার জার্নি চালু করার অনুমতি দেয়। একটি ক্যাম্পেইন শুরু করার জন্য, আপনাকে একটি বিশেষ API রিকোয়েস্ট পাঠাতে হবে।


## সেট আপ করা

১. একটি API-ভিত্তিক এন্ট্রি সহ একটি জার্নি তৈরি করুন

<video src="/customer-journey-api-based-entry-1.webm" alt="কাস্টমার জার্নি বিল্ডার ইন্টারফেস যা API-ভিত্তিক এন্ট্রি এলিমেন্ট সহ একটি নতুন জার্নি কীভাবে তৈরি করতে হয় তা দেখাচ্ছে" autoplay loop muted playsinline />

২. API-ভিত্তিক এন্ট্রি স্টেপে ডাবল-ক্লিক করুন। এন্ট্রি কনফিগারেশন উইন্ডো খুলবে।

৩. আপনি কন্টেন্ট প্লেসহোল্ডার ব্যবহার করে প্রতিবার জার্নি চালু করার সময় পুশ এবং ইমেল কন্টেন্ট পরিবর্তন করতে পারেন। প্রতিটি প্লেসহোল্ডারের মান রিকোয়েস্টে পরিবর্তন করা যেতে পারে। আপনার যদি এই বিকল্পের প্রয়োজন না হয়, তবে আপনি এই ধাপটি এড়িয়ে যেতে পারেন।

> উদাহরণস্বরূপ, আপনি একটি নতুন পডকাস্ট পর্ব প্রকাশিত হলে গ্রাহকদের অবহিত করার জন্য একটি জার্নি তৈরি করছেন। একটি কন্টেন্ট প্লেসহোল্ডার ব্যবহার করে, আপনি প্রতিবার জার্নি চালু করার সময় পডকাস্টের শিরোনাম পরিবর্তন করতে পারেন।

প্রথমে, API-ভিত্তিক এন্ট্রি সেটআপ উইন্ডোতে প্লেসহোল্ডারের নাম যোগ করুন। আপনি আপনার সুবিধামত যেকোনো নাম ব্যবহার করতে পারেন।

<video src="/customer-journey-api-based-entry-2.webm" alt="API-ভিত্তিক এন্ট্রি কনফিগারেশন উইন্ডো যা ডাইনামিক কন্টেন্টের জন্য প্লেসহোল্ডারের নাম কীভাবে যোগ করতে হয় তা দেখাচ্ছে" autoplay loop muted playsinline />

এখন, একটি পুশ বা ইমেল [প্রিসেট](/bn/product/content/presets/) তৈরি করুন এবং যে টেক্সটটি আপনি পরিবর্তন করতে চান তার পরিবর্তে প্লেসহোল্ডারটি প্রবেশ করান। আপনার প্রয়োজন অনুযায়ী প্লেসহোল্ডারটি নিম্নলিখিত ফর্ম্যাটগুলির মধ্যে একটিতে হতে হবে:

* `{placeholder_name|format_modifier|}` – যদি ক্যাম্পেইন চালু করার সময় প্লেসহোল্ডারের মান নির্দিষ্ট করা না হয়, ব্যবহারকারীরা তার জায়গায় খালি স্থান দেখতে পাবে।
* `{placeholder_name|format_modifier}` – যদি প্লেসহোল্ডারের মান নির্দিষ্ট করা না হয় এবং এটি ইতিমধ্যে কোনো ব্যবহারকারীকে বরাদ্দ করা না থাকে (যদি আপনি প্লেসহোল্ডার হিসাবে একটি ট্যাগ ব্যবহার করেন), তাহলে বার্তাটি পাঠানো হবে না।

<details>

<summary>ফর্ম্যাট মডিফায়ার</summary>

* CapitalizeFirst – একটি প্লেসহোল্ডার মানের প্রথম অক্ষর বড় হাতের করে;
* CapitalizeAllFirst – যদি মানটি একাধিক শব্দ নিয়ে গঠিত হয়, তাহলে প্লেসহোল্ডার মানের সমস্ত শব্দের প্রথম অক্ষর বড় হাতের করে;
* UPPERCASE – সমস্ত অক্ষর বড় হাতের করে;
* lowercase – সমস্ত অক্ষর ছোট হাতের করে;
* regular – রিকোয়েস্টে ঠিক যেমনটি নির্দিষ্ট করা হয়েছে, কোনো পরিবর্তন ছাড়াই প্লেসহোল্ডারের মান প্রবেশ করায়।

</details>

<img src="/customer-journey-api-based-entry-3.webp" alt="পুশ প্রিসেট এডিটর যা বার্তার কন্টেন্টে ফর্ম্যাট মডিফায়ার সহ প্লেসহোল্ডার সিনট্যাক্সের উদাহরণ দেখাচ্ছে"/>

<Aside type="note">
আপনি প্লেসহোল্ডারের নামের পরিবর্তে একটি বিদ্যমান ট্যাগ নামও ব্যবহার করতে পারেন। এই ক্ষেত্রে, আপনাকে নীচে বর্ণিত হিসাবে রিকোয়েস্টে নির্দিষ্ট করা মান দ্বারা এই ট্যাগ মানটি ওভাররাইট করার জন্য কনফিগার করতে হবে।
</Aside>

আপনার জার্নিতে পুশ বা ইমেল ধাপ কনফিগার করার সময়, তৈরি করা প্রিসেটটি নির্বাচন করুন এবং **Personalize message with event attributes** বিকল্পটি চালু করুন। জার্নি চালু করার সময় রিকোয়েস্টে যে প্লেসহোল্ডারগুলি পরিবর্তন করতে চান তা নির্বাচন করুন। উৎস হিসাবে একটি **API-ভিত্তিক এন্ট্রি** এবং ডাইনামিক অ্যাট্রিবিউট হিসাবে প্লেসহোল্ডারের নাম বাছুন:

<video src="/customer-journey-api-based-entry-4.webm" title="পুশ বা ইমেল ধাপ কনফিগারেশন যা Personalize message with event attributes বিকল্প এবং API-ভিত্তিক এন্ট্রি উৎস নির্বাচন দেখাচ্ছে" autoplay loop muted playsinline />

পরিবর্তনগুলি সংরক্ষণ করতে **Apply** ক্লিক করুন।

৪. এন্ট্রি কনফিগারেশন উইন্ডোতে, এটি পরিবর্তন করার জন্য রিকোয়েস্ট টেমপ্লেটটি কপি করুন:

<img src="/customer-journey-api-based-entry-5.webp" alt="API-ভিত্তিক এন্ট্রি কনফিগারেশন উইন্ডো যা অথোরাইজেশন হেডার ফর্ম্যাট সহ API রিকোয়েস্ট টেমপ্লেট প্রদর্শন করছে"/>
<Aside>
API-এর মাধ্যমে একটি জার্নি চালু করতে, আপনাকে অবশ্যই Authorization হেডারে একটি বৈধ অথোরাইজেশন টোকেন অন্তর্ভুক্ত করতে হবে।

**প্রয়োজনীয় হেডার ফর্ম্যাট**

 ```http
 Authorization: Api <your_api_token>
 ```
 **উদাহরণ**

 ```http
 Authorization: Api c8dc6435-xxxxxxxxxxxxxxx
 ```
</Aside>

৫. [সেগমেন্টেশন ভাষা](/bn/developer/api-reference/segmentation-filters-api/segmentation-language/) ব্যবহার করে "filter" প্যারামিটারে অডিয়েন্স ফিল্টার যোগ করুন। দয়া করে মনে রাখবেন যে আপনাকে আগে থেকেই প্রয়োজনীয় [ট্যাগ](/bn/developer/guides/audience-and-segmentation/tags/) সেট আপ করতে হবে।

উদাহরণস্বরূপ, যদি আপনি সেইসব ব্যবহারকারীদের লক্ষ্য করে জার্নিটি তৈরি করতে চান যারা তাদের _Wishlist_-এ _Socks_ আইটেমটি যোগ করেছে, তাহলে "filter" মানটি নিম্নলিখিতর মতো দেখতে হবে:

```
    "filter": "A("12345-12345") * "T("Wishlist", EQ, "Socks")"
```

এই উদাহরণে, আপনার অ্যাপে একটি _Wishlist_ ট্যাগ কনফিগার করা থাকতে হবে।

<Aside type="note">
আপনার অ্যাপ্লিকেশন কোডটি স্বয়ংক্রিয়ভাবে `A(\"12345-12345\")` ফর্ম্যাটে "filter" প্যারামিটারে যোগ করা হবে। দয়া করে এটি সরাবেন না বা পরিবর্তন করবেন না।

এছাড়াও, দয়া করে মনে রাখবেন যে JSON কোয়েরিতে উদ্ধৃতি চিহ্ন ("") এবং ব্যাকস্ল্যাশ (\\) একটি ব্যাকস্ল্যাশ (\\) দিয়ে এস্কেপ করা উচিত।
</Aside>

৬. আপনি যদি প্লেসহোল্ডার সেট আপ করে থাকেন, তাহলে তাদের মান হিসাবে পছন্দসই কন্টেন্ট নির্দিষ্ট করুন:

<img src="/customer-journey-api-based-entry-6.webp" alt="API রিকোয়েস্ট টেমপ্লেট যা জার্নি লঞ্চে ডাইনামিক কন্টেন্টের জন্য প্লেসহোল্ডার মান কনফিগারেশন দেখাচ্ছে"/>

৭. যদি **Message Rate Limits** বিকল্পটি সক্রিয় থাকে, তাহলে প্রতি সেকেন্ডে একবারে জার্নিতে প্রবেশকারী ব্যবহারকারীর সংখ্যা সীমিত থাকবে। আপনি প্রতি সেকেন্ডে ৫০০০ ব্যবহারকারীর ডিফল্ট মান ব্যবহার করতে পারেন বা অন্য কোনো সংখ্যা সেট করতে পারেন।

<img src="/customer-journey-api-based-entry-7.webp" alt="API-ভিত্তিক এন্ট্রি কনফিগারেশন যা প্রতি সেকেন্ডে ৫০০০ ব্যবহারকারীর ডিফল্ট মান সহ Message Rate Limits বিকল্প দেখাচ্ছে"/>

<Aside type="tip">
আমরা প্রতি সেকেন্ডে ৫০০০ থেকে ১০০০০ ব্যবহারকারীর মধ্যে মান রাখার সুপারিশ করি। যদি মানটি খুব কম হয়, তাহলে আপনার অডিয়েন্সের জার্নিতে প্রবেশ করতে বেশি সময় লাগতে পারে। যদি মানটি খুব বেশি হয়, তাহলে আপনার ডেটা প্রক্রিয়া করে এমন পরিষেবা ওভারলোড হতে পারে।
</Aside>

৮. আপনি যদি আপনার ক্যাম্পেইন ঘন ঘন পুনরায় চালু করার পরিকল্পনা করেন এবং একই ব্যবহারকারীরা যাতে একাধিকবার জার্নিতে প্রবেশ না করে তা চান, তাহলে [ফ্রিকোয়েন্সি ক্যাপিং](/bn/product/customer-journey/journey-settings#frequency-capping) সেট করুন।

> উদাহরণস্বরূপ, আপনি একটি নির্দিষ্ট পণ্যের মূল্য হ্রাসের বিষয়ে ব্যবহারকারীদের অবহিত করার জন্য একটি ক্যাম্পেইন তৈরি করেছেন। আপনি বিভিন্ন অডিয়েন্স ফিল্টার সহ বেশ কয়েকটি রিকোয়েস্ট পাঠিয়ে কয়েকবার জার্নিটি পুনরায় চালু করতে চান। এই ক্ষেত্রে, আপনি ফ্রিকোয়েন্সি ক্যাপিং যোগ করতে পারেন যাতে একাধিক ফিল্টারের সাথে মিলে যাওয়া ব্যবহারকারীদের কাছে বারবার নোটিফিকেশন না পাঠানো হয়।

৯. আপনি যদি চান যে কোনো নির্দিষ্ট ব্যবসায়িক ইভেন্ট ঘটলেই একটি জার্নি চালু হোক, তাহলে ওয়েব্হুক ব্যবহার করে রিকোয়েস্টটি স্বয়ংক্রিয় করুন। ইভেন্টটি ঘটলে, ওয়েব্হুকটি জার্নি শুরু করার জন্য স্বয়ংক্রিয়ভাবে রিকোয়েস্ট পাঠাবে।

আপনার যদি অটোমেশনের প্রয়োজন না হয় তবে আপনি ম্যানুয়ালিও রিকোয়েস্ট পাঠাতে পারেন।

<Aside type="note">
* আপনি যদি একটি নতুন রিকোয়েস্ট পাঠানোর সময় সেগমেন্টেশন শর্ত পরিবর্তন করেন, তবে এটি ইতিমধ্যে জার্নিতে প্রবেশ করা ব্যবহারকারীদের প্রভাবিত করবে না।
* আপনি যদি একটি নতুন রিকোয়েস্ট পাঠানোর সময় বার্তার কন্টেন্ট পরিবর্তন করেন, তবে সমস্ত ব্যবহারকারী বার্তার নতুন সংস্করণ পাবে (যাদের মধ্যে যারা ইতিমধ্যে জার্নিতে প্রবেশ করেছে কিন্তু এখনও এই বার্তাটি পায়নি তারাও অন্তর্ভুক্ত)।
</Aside>