رفتن به محتوای اصلی
گزارش و وضعیت (نسخهٔ ۱)

شمارش پیامک‌های دریافتی

post
https://sms.najva.com/v1/{apiKey}/sms/countinbox.json

احراز هویت: این سرویس کلید API را از مسیر URL می‌خواند (/v1/{apiKey}/...) و هدر احراز هویتی ندارد. درخواست فقط از آی‌پی‌های وایت‌لیست‌شده پذیرفته می‌شود. به احراز هویت و وایت‌لیست IP نگاه کنید.

تعداد پیامک‌های دریافت‌شده روی خطوط اختصاصی حساب کاربری را در یک بازه زمانی برمی‌گرداند.

پارامتر startdate اجباری است (timestamp یونیکس بر حسب ثانیه) و در صورت ارسال نشدن enddate مقدار آن startdate + 86400 در نظر گرفته می‌شود؛ startdate نمی‌تواند مربوط به بیش از ۶۰ روز گذشته باشد. پارامتر isread نیز اجباری است و فقط مقادیر 0 یا 1 را می‌پذیرد.

اگر linenumber ارسال نشود، شمارش روی همهٔ خطوط حساب کاربری انجام می‌شود؛ در صورت ارسال، خط باید متعلق به حساب و از نوع اختصاصی (private) باشد وگرنه خطای ۴۱۲ برگردانده می‌شود.

با isread=0 تنها پیام‌های جدیدتر از آخرین شناسهٔ خوانده‌شدهٔ هر خط شمرده می‌شوند و با isread=1 همهٔ پیام‌های بازه. توجه کنید که این سرویس نشانگر «آخرین پیام خوانده‌شده» را جابه‌جا نمی‌کند. همهٔ پارامترها از query string خوانده می‌شوند و در فراخوانی POST نیز باید در URL باشند.

نکتهٔ مهم: تمام پارامترها از query string خوانده می‌شوند. این مسیر برای POST هم ثبت شده، ولی حتی در POST هم باید پارامترها در انتهای نشانی بیایند؛ بدنهٔ form-urlencoded یا JSON خوانده نمی‌شود.

این مسیر با متد GET هم ثبت شده و رفتار یکسانی دارد؛ در مستندات فقط شکل POST نشان داده شده است.

پارامترهای مسیر

۱
نامنوعالزامیتوضیح
apiKey*
stringالزامی

کلید API حساب کاربری که به‌صورت بخشی از مسیر URL ارسال می‌شود (نه به‌صورت هدر).

نمونهa1b2c3d4e5f60718293a4b5c6d7e8f90

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

۴
نامنوعالزامیتوضیح
startdate*
integerالزامی

زمان شروع بازه به‌صورت timestamp یونیکس (ثانیه). اجباری است و نمی‌تواند مربوط به بیش از ۶۰ روز گذشته باشد. — زمان شروع بازه به‌صورت timestamp یونیکس (ثانیه). اجباری است و نمی‌تواند مربوط به بیش از ۶۰ روز گذشته باشد.

محدودیت: باید عدد صحیح باشد؛ باید کوچک‌تر از enddate باشد؛ باید بزرگ‌تر یا مساوی (اکنون − ۶۰ روز) باشد

نمونه1757000000
enddate
integerاختیاری

زمان پایان بازه به‌صورت timestamp یونیکس (ثانیه). در صورت ارسال نشدن برابر startdate + 86400 در نظر گرفته می‌شود. — زمان پایان بازه به‌صورت timestamp یونیکس (ثانیه). در صورت ارسال نشدن برابر startdate + 86400 در نظر گرفته می‌شود.

محدودیت: باید عدد صحیح و بزرگ‌تر از startdate باشد

پیش‌فرضstartdate + 86400نمونه1757086400
isread*
integerالزامی

اجباری. با مقدار 0 فقط پیام‌های خوانده‌نشده (جدیدتر از آخرین شناسهٔ خوانده‌شدهٔ هر خط) شمرده می‌شوند و با مقدار 1 همهٔ پیام‌های بازه. ارسال نکردن آن یا هر مقدار خارج از {۰، ۱} خطای ۴۰۰ می‌دهد. — اجباری. با مقدار 0 فقط پیام‌های خوانده‌نشده (جدیدتر از آخرین شناسهٔ خوانده‌شدهٔ هر خط) شمرده می‌شوند و با مقدار 1 همهٔ پیام‌های بازه. ارسال نکردن آن یا هر مقدار خارج از {۰، ۱} خطای ۴۰۰ می‌دهد.

محدودیت: فقط 0 یا 1

مقادیر مجاز01نمونه0
linenumber
stringاختیاری

شمارهٔ خط اختصاصی. در صورت ارسال نشدن، همهٔ خطوط حساب کاربری در نظر گرفته می‌شوند. خط ارسالی باید متعلق به حساب و اختصاصی (private) باشد.

نمونه9830007650

پاسخ‌ها

ساختار پاسخ

نامنوعالزامیتوضیح
return
ApiStatusاختیاری

وضعیت پاسخ. مقدار status با کد وضعیت HTTP پاسخ یکسان است.

status*
integerالزامی

کد وضعیت — همان کد وضعیت HTTP پاسخ.

نمونه200
message*
stringالزامی

پیام فارسی قابل نمایش به کاربر.

نمونهدرخواست تایید شد.
entries
objectاختیاری

ساختار پاسخ در کد سرویس تعریف نشده است.

نمونهٔ پاسخ

{
"return": {
"status": 200,
"message": "درخواست تایید شد."
},
"entries": {
"startdate": 1757000000,
"enddate": 1757086400,
"sumcount": 42
}
}