# ইনবাউন্ড ওয়েবহুক ইন্টিগ্রেশন

<Aside type="caution" icon="setting" title="ডেভেলপারের সহায়তা প্রয়োজন">
 ইন্টিগ্রেশন সেট আপ করার জন্য আপনার ডেভেলপমেন্ট টিমের সাহায্যের প্রয়োজন হবে। অনুগ্রহ করে এই গাইডটি তাদের সাথে শেয়ার করুন।
</Aside> 

ইনবাউন্ড ওয়েবহুকগুলি বাহ্যিক পরিষেবাগুলিকে সরাসরি Pushwoosh-এ ইভেন্ট পাঠাতে দেয়। যখন একটি তৃতীয়-পক্ষের সিস্টেম একটি ওয়েবহুক ট্রিগার করে, Pushwoosh অনুরোধটি প্রমাণীকরণ করে, সাবস্ক্রাইবারকে শনাক্ত করে এবং ম্যাপ করা ইভেন্টটি ফায়ার করে। এরপর ইভেন্টটি একটি জার্নি শুরু বা এগিয়ে নিয়ে যেতে পারে।

আপনার নিজের সার্ভার তৈরি বা রক্ষণাবেক্ষণ না করে CRM, ই-কমার্স প্ল্যাটফর্ম বা অ্যানালিটিক্স পরিষেবার মতো টুলগুলিকে সংযুক্ত করতে ইনবাউন্ড ওয়েবহুক ব্যবহার করুন।
প্রতিটি ইনবাউন্ড ওয়েবহুক একটি Pushwoosh ইভেন্ট ট্রিগার করে যখন একটি ম্যাচিং অনুরোধ সফলভাবে গৃহীত এবং প্রক্রিয়াজাত হয়।

## শুরু করার আগে

ওয়েবহুক সেটআপ খোলার আগে নিম্নলিখিতগুলি প্রস্তুত করুন।

1. **সিদ্ধান্ত নিন কোন Pushwoosh ইভেন্টটি ওয়েবহুক ফায়ার করবে।** আপনার প্রজেক্ট থেকে একটি বিদ্যমান ইভেন্ট বেছে নিন যা আপনি তৃতীয়-পক্ষের পরিষেবা থেকে ট্রিগার করতে চান। উদাহরণস্বরূপ, `CheckoutSuccess`। যদি আপনার কাছে এখনও উপযুক্ত ইভেন্ট না থাকে, তাহলে ইনকামিং ডেটা থেকে যে অ্যাট্রিবিউটগুলি পূরণ করতে চান সেগুলি দিয়ে [একটি তৈরি করুন](/bn/product/audience-data-and-segmentation/events/custom-events/)।

2. **নিশ্চিত করুন যে আপনার তৃতীয়-পক্ষের পরিষেবা ওয়েবহুক পাঠাতে পারে।** পরিষেবাটিকে একটি বাহ্যিক URL-এ একটি HTTP POST অনুরোধ পাঠাতে সক্ষম হতে হবে যখন আপনার কাঙ্ক্ষিত ইভেন্টটি ঘটে, উদাহরণস্বরূপ একটি নতুন অর্ডার বা একটি ফর্ম জমা দেওয়া।

3. **আপনার তৃতীয়-পক্ষের পরিষেবা থেকে একটি নমুনা JSON পেলোড পান।** এটি প্রতিটি ইভেন্টে পরিষেবাটি যে ডেটা পাঠায় তার একটি ছোট উদাহরণ। পেলোড ফিল্ডগুলিকে Pushwoosh ইভেন্ট অ্যাট্রিবিউটে ম্যাপ করার জন্য আপনার এটি প্রয়োজন হবে।

## একটি ওয়েবহুক তৈরি করুন

1. আপনার Pushwoosh অ্যাকাউন্টে, **Settings** → **Integrations** → **Inbound webhooks** এ যান এবং **Settings** এ ক্লিক করুন।

<img src="/integrations-inbound-webhook-1.webp" alt="ইনবাউন্ড ওয়েবহুক কার্ড এবং ওয়েবহুক কনফিগারেশন খোলার জন্য সেটিংস বোতাম সহ ইন্টিগ্রেশন পৃষ্ঠা"/>

2. সেটআপ ফ্লো খুলতে **Create webhook** এ ক্লিক করুন।

<img src="/integrations-inbound-webhook-2.webp" alt="নাম, ইভেন্ট, নমুনা পেলোড এবং ব্যবহারকারী শনাক্তকারী ম্যাপিং সহ ওয়েবহুক তৈরি করার স্ক্রিন"/>

3. একটি ওয়েবহুকের নাম লিখুন যাতে আপনি পরে তালিকায় ওয়েবহুকটি শনাক্ত করতে পারেন।

4. Pushwoosh ইভেন্টটি নির্বাচন করুন যা ওয়েবহুক একটি বৈধ অনুরোধ পেলে ফায়ার করা উচিত। আপনি আপনার প্রজেক্টে ইতিমধ্যে বিদ্যমান ইভেন্টগুলি থেকে বেছে নিতে পারেন। যদি আপনাকে প্রথমে একটি ইভেন্ট তৈরি করতে হয়, তাহলে [Events](/bn/product/audience-data-and-segmentation/events/custom-events/) দেখুন।

<Aside type="note">
একটি ওয়েবহুক শুধুমাত্র একটি ইভেন্ট ট্রিগার করে।
</Aside>

<img src="/integrations-inbound-webhook-3.webp" alt="ইনকামিং অনুরোধে ফায়ার করার জন্য ইভেন্ট নির্বাচন করার জন্য Pushwoosh ইভেন্ট ড্রপডাউন সহ ওয়েবহুক সেটআপ স্ক্রিন"/>

5. **Match incoming data**-তে, আপনার তৃতীয়-পক্ষের পরিষেবা থেকে একটি নমুনা JSON পেলোড পেস্ট করুন। Pushwoosh স্বয়ংক্রিয়ভাবে পেলোড ফিল্ডগুলি ড্রপডাউনে লোড করে।

<Aside type="note">
আপনি যদি পরে পেলোড আপডেট করেন, তাহলে ড্রপডাউনগুলি রিফ্রেশ করতে **Reload select options** এ ক্লিক করুন। এটি আপনার বর্তমান ফিল্ড ম্যাপিং রিসেট করবে। আপনাকে আপনার অ্যাট্রিবিউটগুলি পুনরায় ম্যাপ করতে হবে।
</Aside>

নমুনা পেলোড:

```json
{
  "user_id": "12345",
  "email_address": "jane@example.com",
  "mobile": "+15551234567",
  "purchase_date": "2024-03-15",
  "order_number": "ORD-001",
  "price": 99.99,
  "payment_state": "success"
}
```

6. **Identify users by**-তে, নির্বাচন করুন Pushwoosh কীভাবে ইনকামিং অনুরোধটিকে একজন ব্যবহারকারীর সাথে মেলাবে:

- **User ID:** Pushwoosh-এর অভ্যন্তরীণ ব্যবহারকারী আইডি দ্বারা মেলায়।
- **Email:** ইমেল ঠিকানা দ্বারা মেলায়।
- **Phone:** ফোন নম্বর দ্বারা মেলায়।
- **HWID:** ডিভাইস, ব্রাউজার বা ইমেল শনাক্তকারী দ্বারা মেলায়।

**Payload field**-এ, যে ফিল্ডটিতে ম্যাচিং মান রয়েছে সেটি নির্বাচন করুন।

<img src="/integrations-inbound-webhook-5.webp" alt="ম্যাচ ইনকামিং ডেটা স্ক্রিনে ইউজার আইডি এবং HWID টুলটিপ সহ ব্যবহারকারীদের শনাক্ত করুন এবং পেলোড ফিল্ড ড্রপডাউন"/>

7. প্রতিটি ইভেন্ট অ্যাট্রিবিউটকে একটি পেলোড ফিল্ডে ম্যাপ করুন। প্রতিটি ম্যাপিং সারিতে:

- **Event attribute:** Pushwoosh-এ অ্যাট্রিবিউটের নাম। এই ইভেন্টের জন্য সংজ্ঞায়িত অ্যাট্রিবিউটগুলি থেকে নির্বাচন করুন।
- **Payload field:** ইনকামিং পেলোড থেকে যে ফিল্ডটিতে মান রয়েছে।

উদাহরণস্বরূপ, `email` কে `email_address`-এ, `total` কে `price`-এ, এবং `order_id` কে `order_number`-এ ম্যাপ করুন।

<img src="/integrations-inbound-webhook-4.webp" alt="নমুনা পেলোড এবং রিলোড সিলেক্ট অপশন বোতাম সহ ইভেন্ট অ্যাট্রিবিউট এবং পেলোড ফিল্ড ম্যাপিং সারি"/>

একটি সারি যোগ করতে **+ Add attribute** এ ক্লিক করুন। একটি সরাতে **×** এ ক্লিক করুন।

8. কনফিগারেশন সম্পূর্ণ হলে, **Enable** এ ক্লিক করুন। **Webhook URL** উইন্ডোটি খুলবে।
<Aside type="caution" icon="setting" title="ডেভেলপারের সহায়তা প্রয়োজন">
পরবর্তী পদক্ষেপগুলির জন্য আপনার তৃতীয়-পক্ষের পরিষেবার ওয়েবহুক সেটিংসে অ্যাক্সেসের প্রয়োজন। আপনার ডেভেলপমেন্ট টিমের সাথে URL এবং Secret শেয়ার করুন।
</Aside>

মানগুলি কপি করুন এবং আপনার বাহ্যিক সিস্টেমের ওয়েবহুক সেটিংসে পেস্ট করুন:

- **URL** টি কপি করুন এবং এটিকে আপনার তৃতীয়-পক্ষের পরিষেবাতে ওয়েবহুক গন্তব্য হিসাবে সেট করুন।
- **Secret** টি কপি করুন এবং এটিকে আপনার বাহ্যিক পরিষেবাতে `Authorization` হেডার মান হিসাবে পেস্ট করুন। মানটিতে `Bearer` উপসর্গ অন্তর্ভুক্ত রয়েছে, তাই এটি যেমন আছে তেমনই ব্যবহার করুন। Pushwoosh এমন যেকোনো অনুরোধ প্রত্যাখ্যান করে যেখানে এই হেডারটি অনুপস্থিত বা মেলে না।

<img src="/integrations-inbound-webhook-7.webp" alt="বাহ্যিক সিস্টেম কনফিগারেশনের জন্য কপি বোতাম সহ URL এবং সিক্রেট ফিল্ড দেখানো ওয়েবহুক URL উইন্ডো"/>

9. উইন্ডোটি একটি নমুনা `POST` অনুরোধ সহ একটি **Example request** ও দেখায়। সম্পূর্ণ অনুরোধটি কপি করতে উদাহরণ ব্লকে **Copy** তে ক্লিক করুন। এটি একটি পরীক্ষামূলক অনুরোধ পাঠাতে এবং Pushwoosh ওয়েবহুকটি গ্রহণ করছে কিনা তা নিশ্চিত করতে ব্যবহার করুন, অথবা ইন্টিগ্রেশনের জন্য একটি টেমপ্লেট হিসাবে আপনার টিমের সাথে শেয়ার করুন।

<img src="/integrations-inbound-webhook-6.webp" alt="বাহ্যিক সিস্টেম সেটআপের জন্য URL, সিক্রেট এবং উদাহরণ অনুরোধ কার্ল কমান্ড সহ ওয়েবহুক URL উইন্ডো"/>

আপনি ওয়েবহুকটি সক্রিয় করার পরে, এটি একটি সক্রিয় স্ট্যাটাস সহ ওয়েবহুক তালিকায় উপস্থিত হয় এবং অনুরোধ গ্রহণ করা শুরু করে।

## ওয়েবহুক তালিকা

ইনবাউন্ড ওয়েবহুক তালিকা আপনার প্রজেক্টের প্রতিটি ওয়েবহুক দেখায়।


প্রতিটি সারি দেখায়:

- **Name:** ওয়েবহুকের নাম।
- **Event:** Pushwoosh ইভেন্ট যা ওয়েবহুক একটি বৈধ অনুরোধ পেলে ফায়ার হয়।
- **Status:** **Enabled** বা **Disabled**।
- **Received:** ওয়েবহুক দ্বারা প্রাপ্ত অনুরোধের সংখ্যা।
- **Last updated:** ওয়েবহুকটি শেষবার কখন পরিবর্তন করা হয়েছিল।

<img src="/integrations-inbound-webhook-9.webp" alt="অনুসন্ধান, স্ট্যাটাস ফিল্টার, টেবিল কলাম এবং সারি অ্যাকশন মেনু খোলা সহ ইনবাউন্ড ওয়েবহুক তালিকা"/>
## ওয়েবহুক পরিচালনা করুন
সারি মেনু খুলুন:

- **Edit settings:** ওয়েবহুক কনফিগারেশন খোলে যাতে আপনি নাম, ইভেন্ট, ফিল্ড ম্যাপিং এবং ব্যবহারকারী শনাক্তকরণ পরিবর্তন করতে পারেন।
- **Copy URL:** **Webhook URL** উইন্ডোটি **URL** এবং **Secret** সহ খোলে যাতে আপনি সেগুলি আবার কপি করতে পারেন।
- **Activity log:** এই ওয়েবহুকের জন্য অনুরোধ লগ খোলে।
- **Delete:** তালিকা থেকে ওয়েবহুকটি সরিয়ে দেয়।

একটি সক্রিয় ওয়েবহুকের জন্য, কনফিগারেশন মুছে না ফেলে এটিকে নিষ্ক্রিয় করতে **Disable** এ ক্লিক করুন। একটি নিষ্ক্রিয় ওয়েবহুকের জন্য, আবার অনুরোধ গ্রহণ শুরু করতে **Enable** এ ক্লিক করুন।


### অ্যাক্টিভিটি লগ দেখুন

অ্যাক্টিভিটি লগ নির্বাচিত ওয়েবহুকের জন্য সমস্ত ইনকামিং অনুরোধ দেখায়।

**সারাংশ প্যানেল**

উপরে, গত 24 ঘন্টার সারাংশ পর্যালোচনা করুন:

- **Hits:** প্রাপ্ত মোট ইনকামিং অনুরোধের সংখ্যা।
- **Success:** অনুরোধ যেখানে প্রমাণীকরণ পাস হয়েছে, ব্যবহারকারীকে পাওয়া গেছে এবং ইভেন্টটি ফায়ার হয়েছে।
- **Failed:** যে অনুরোধগুলি প্রক্রিয়া করা হয়নি। একটি ব্যর্থ অনুরোধ ওয়েবহুকটিকে থামায় না। Pushwoosh পরবর্তী অনুরোধগুলি গ্রহণ এবং প্রক্রিয়া করা চালিয়ে যায়।

| ব্যর্থতার কারণ | এর মানে কি |
| :---- | :---- |
| **Auth rejected** | শেয়ার করা সিক্রেট ওয়েবহুক কনফিগারেশনের সাথে মেলে না। যদি পরপর পাঁচটি অনুরোধ এই ত্রুটির সাথে ব্যর্থ হয়, Pushwoosh আপনাকে একটি বিজ্ঞপ্তি পাঠাবে। পুনরায় শুরু করতে সিক্রেট আপডেট করুন। পুনরায় সক্রিয়করণের প্রয়োজন নেই। |
| **User identifier field missing** | ব্যবহারকারী শনাক্তকরণের জন্য ম্যাপ করা পেলোড ফিল্ডটি অনুরোধে উপস্থিত নেই। |


<img src="/integrations-inbound-webhook-10.webp" alt="হিটস সাকসেস ফেইলড সারাংশ এবং স্ট্যাটাস ব্যাজ ও JSON পেলোড দেখানো অনুরোধ এন্ট্রি সহ অ্যাক্টিভিটি লগ"/>

**অনুরোধ এন্ট্রি**

প্রতিটি এন্ট্রি ব্যবহারকারী শনাক্তকারী (উদাহরণস্বরূপ, **User ID** বা **Email**), একটি **Success** বা **Failed** ব্যাজ, অনুরোধের টাইমস্ট্যাম্প এবং প্রাপ্ত JSON পেলোডের একটি প্রিভিউ দেখায়। সম্পূর্ণ অনুরোধের বিবরণ প্রসারিত করতে **Show** এ ক্লিক করুন।

<img src="/integrations-inbound-webhook-11.webp" alt="ব্যবহারকারী শনাক্তকারী, সাকসেস বা ফেইলড ব্যাজ, টাইমস্ট্যাম্প, JSON পেলোড এবং শো বোতাম সহ অ্যাক্টিভিটি লগ অনুরোধ এন্ট্রি"/>
## User Explorer-এ ওয়েবহুক-ফায়ার করা ইভেন্টগুলি দেখুন

যখন একটি ওয়েবহুক অনুরোধ সফলভাবে প্রক্রিয়া করা হয়, Pushwoosh [User Explorer](/bn/product/audience-data-and-segmentation/user-explorer/)-এ ইভেন্টটি রেকর্ড করে। এটি কোথায় প্রদর্শিত হবে তা নির্ভর করে আপনি কীভাবে ব্যবহারকারীকে শনাক্ত করেছেন তার উপর:

- **User ID, Email, বা Phone:** ইভেন্টটি ব্যবহারকারীর প্রোফাইলে রেকর্ড করা হয়। ব্যবহারকারীকে খুলুন এবং **Events history**-তে যান।
- **HWID:** ইভেন্টটি ম্যাচিং ডিভাইসে রেকর্ড করা হয়। ব্যবহারকারীকে খুলুন, **Active user devices**-এ ডিভাইসটি খুঁজুন এবং এর **Events history** ট্যাবে যান।

নাম দ্বারা ইভেন্টটি খুঁজুন এবং ম্যাপ করা অ্যাট্রিবিউটগুলি (উদাহরণস্বরূপ, `price` বা `products`) এবং ওয়েবহুক আইডি সহ `__webhook` অ্যাট্রিবিউট দেখতে এটি প্রসারিত করুন।

<img src="/integrations-inbound-webhook-12.webp" alt="User Explorer ইভেন্টস হিস্ট্রি ট্যাব যা __webhook আইডি এবং ম্যাপ করা পেলোড ফিল্ড সহ প্রসারিত অ্যাট্রিবিউট সহ ইনবাউন্ড ওয়েবহুক ইভেন্ট দেখাচ্ছে"/>
## জার্নির সাথে ইনবাউন্ড ওয়েবহুক ব্যবহার করুন

একটি ওয়েবহুক সক্রিয় হওয়ার পরে এবং সফলভাবে ইভেন্ট ফায়ার করার পরে, নির্বাচিত ইভেন্টটিকে একটি [ট্রিগার-ভিত্তিক জার্নি এন্ট্রি](/bn/product/customer-journey/journey-elements/entry-elements/trigger-based-entry/) হিসাবে ব্যবহার করুন। যখন ওয়েবহুক একটি বৈধ অনুরোধ পায়, Pushwoosh ম্যাপ করা ইভেন্টটি ফায়ার করে। যে কোনো জার্নি যা এই ইভেন্টটিকে এন্ট্রি ট্রিগার হিসাবে ব্যবহার করে তা ম্যাচ করা ব্যবহারকারীর জন্য স্বয়ংক্রিয়ভাবে শুরু হয়।