راهنمای ایجاد وبهوک
سرویس وبهوک به شما امکان میدهد هنگام وقوع یک رخداد مشخص (Event)، اطلاعات مرتبط با آن رخداد را به صورت خودکار در سرویس خود دریافت کنید. در ادامه سناریوهای متفاوت وبهوک شرح داده شده است:
سناریو اول: ایجاد وبهوک برای سرویس شخصی
اگر قصد دارید برای اکانت یا غرفه خود در باسلام رخدادهایی را پایش کرده و در سرویس شخصی خود دریافت کنید، مراحل زیر را دنبال کنید:
به پنل توسعهدهندگان مراجعه کرده و از ایجاد وبهوک برای ساخت وبهوک جدید اقدام کنید. برای افزایش امنیت، میتوانید هدر احراز هویت برای درخواستهای ورودی تعریف کنید:
{
"Authorization": "Bearer [YOUR_SERVICE_TOKEN]"
}
در انتها هر زمان رخدادی اتفاق بیفتد، به آدرس وبهوک شما ارسال میشود.
سناریو دوم: ایجاد وبهوک بهعنوان پلتفرم یا سرویسدهنده
اگر شما یک پلتفرم یا ارائهدهنده خدمات به غرفهداران یا کاربران باسلام هستید، میتوانید وبهوکهای خود را بهصورت برنامهنویسیشده از طریق API تنظیم کنید.
- ابتدا سرویس خود را از طریق API ساخت سرویس ایجاد کنید.
- برای ایجاد وبهوک نیاز به انتخاب رخداد موردنظر میباشد که از API لیست رخدادها قابل دریافت است. برای هر رخداد نمونه اطلاعاتی که سمت شما ارسال میشود در پروپرتی
sample_data
قرار داده شده است. - سپس میتوانید از API ساخت وبهوک، وبهوک خود را ایجاد کنید.
همچنین میتوانید بدون ساخت سرویس (مرحله اول)، وبهوک خود را ایجاد کنید. برای این کار باید مقدار service_id
را در ریکوئست خالی گذاشته و مقدار register_me
را مساوی true
بگذارید. در این صورت سیستم به طور خود یک سرویس وبهوک با نام کاربری شما ایجاد میکند.
curl -X POST https://webhook.basalam.com/v1/webhooks \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer [TOKEN]' \
-d '{
"event_ids": [
8, 4
],
"request_method": "POST",
"url": "http://example.com",
"is_active": true,
"register_me": true
}
- در مرحله ی بعد نیاز است که از طریق این API، کاربران باسلامی خود را به وبهوکی که ایجاد کردید اضافه کنید. دقت کنید که برای عضو کردن کاربران در وبهوکتان، نیاز است که با توکن آنها درخواست را ارسال کنید. اگر با توکن خودتان ریکوئست بزنید، خودتان عضو وبهوک میشوید.
دسترسیهای موردنیاز برای هر رخداد
رخدادهای فعلی وبهوک شامل موارد زیر هستند (هر رخداد شامل نام، آیدی و دسترسی مورد نیاز است):
نام رخداد | آیدی | دسترسی موردنیاز | توضیحات |
---|---|---|---|
CHAT_RECEIVED_MESSAGE | 1 | customer.chat.read | پیام دریافتی گفتگوی باسلام |
ORDER_ITEM_CHANGES | 2 | customer.order.read | تغییر وضعیت اقلام خرید |
VENDOR_ORDER_ITEM_CHANGES | 3 | vendor.parcel.read | تغییر وضعیت اقلام فروش |
CHAT_SEND_MESSAGE | 4 | customer.chat.read | پیام ارسالی گفتگوی باسلام |
VENDOR_NEW_ORDER | 5 | vendor.parcel.read | فروش جدید |
NEW_ORDER | 6 | customer.order.read | خرید جدید |
VENDOR_PARCEL_CHANGES | 7 | vendor.parcel.read | تغییر وضعیت پارسل (سفارش فروش) |
PRODUCT_CREATE_CHANGES | 8 | vendor.product.read | ایجاد و تغییر محصول |
REVIEW_CREATE_CHANGES | 9 | vendor.parcel.read | ثبت و تغییر تجربه خرید |