رفتن به محتوای اصلی
یکپارچه‌سازی‌ها

وب‌هوک ارسال پیامک برای WebEngage

post
https://sms.najva.com/v3/sms/send/web-engage

نقطهٔ اتصال (webhook) مخصوص سرویس WebEngage؛ بدنهٔ درخواست با قرارداد WebEngage (smsData) دریافت می‌شود و پیام همزمان از مسیر پیامک و پیام‌رسان‌ها ارسال می‌گردد. خط پیامکی از smsData.fromNumber خوانده می‌شود و خطوط روبیکا/بله از پارامترهای کوئری rubika و bale (حداقل یکی الزامی است). این اندپوینت پوشش پاسخ استاندارد نجوا را نادیده می‌گیرد و به‌جای آن قالب موردانتظار WebEngage یعنی {"status": ...} / {"status","statuscode","message"} را برمی‌گرداند. توجه: خطاهای میان‌افزار احراز هویت پیش از رسیدن به این کنترلر رخ می‌دهند و همچنان با قالب استاندارد return/entries بازگردانده می‌شوند.

احراز هویت

نوع احراز هویتتوکن BearerbearerAuth

کلید API را در هدر Authorization با پیشوند Bearer بفرستید:

``` Authorization: Bearer YOURAPIKEY ```

این روش برای سرویس‌های نسخهٔ ۲، نسخهٔ ۳ و بارگذاری فایل به کار می‌رود. سرویس‌های نسخهٔ ۱ کلید را از مسیر URL می‌گیرند و هدری نمی‌خواهند.

هدر لازم
Authorization: Bearer YOUR_ACCESS_TOKEN

کلید خود را کجا پیدا کنم؟

اطلاعات ورود را از پنل کاربری خود بگیرید و توکن را فقط روی سرور و در یک متغیر محیطی نگه دارید؛ هرگز آن را در کد سمت کاربر قرار ندهید.

پارامترهای کوئری

۲
نامنوعالزامیتوضیح
rubika
stringاختیاری

شناسهٔ خط روبیکا. اگر خالی باشد ارسال روی روبیکا انجام نمی‌شود. حداقل یکی از rubika یا bale باید ارسال شود.

نمونهnajva_service
bale
stringاختیاری

شناسهٔ خط بله. اگر خالی باشد ارسال روی بله انجام نمی‌شود. حداقل یکی از rubika یا bale باید ارسال شود.

نمونهnajva_service

بدنهٔ درخواست

application/jsonالزامی

بدنهٔ JSON با ساختار وب‌هوک WebEngage.

نامنوعالزامیتوضیح
version
stringاختیاری

نسخهٔ قرارداد WebEngage. سرویس این فیلد را می‌پذیرد ولی در هیچ منطقی از آن استفاده نمی‌کند.

نمونه1.0
smsData*
objectالزامی

اطلاعات پیامک.

toNumber*
stringالزامی

شمارهٔ موبایل گیرنده؛ به شکل 09xxxxxxxxx نرمال‌سازی می‌شود.

نمونه09121234567
fromNumber*
stringالزامی

شمارهٔ خط پیامکی فرستنده؛ باید متعلق به حساب و دارای مجوز ارسال متن تراکنشی باشد.

نمونه3000123456
body*
stringالزامی

متن پیام. در صورت نبود عبارت انصراف، \nلغو۱۱ به‌طور خودکار به انتهای متن افزوده می‌شود.

نمونهسلام، سفارش شما ثبت شد.

نمونهٔ درخواست

{
"version": "1.0",
"smsData": {
"toNumber": "09121234567",
"fromNumber": "3000123456",
"body": "سلام، سفارش شما ثبت شد."
}
}

پاسخ‌ها

ساختار پاسخ

نامنوعالزامیتوضیح
status
stringاختیاری

نتیجه: sms_accepted یا sms_rejected.

نمونهsms_accepted
statuscode
integerاختیاری

کد خطای WebEngage (فقط در حالت رد).

نمونه2000
message
stringاختیاری

شرح خطا (فقط در حالت رد).

نمونهٔ پاسخ

{
"status": "sms_accepted"
}