ورود با نام کاربری و رمزعبور
با استفاده از این API نام کاربری و رمزعبور کاربر صحت سنجی شده و در صورت موفقیت آمیز بودن کلید ورود به مراحل بعدی احراز هویت صادر میگردد
📍 لینک دسترسی
POST {base_url}/api/acl/auth/login
🧾 هدر درخواست
Key | Value |
---|---|
Content-Type | application/json |
📤 بدنه درخواست
{
"username": "نام کاربری",
"password": "رمزعبور"
}
✅ خروجی API در صورت موفقیت آمیز بودن
{
"data": {
"method": "ga", // or "sms" or "login"
"token": "84cd3ef65b0700dea4ac7942e61df4a5"
},
"meta": {
"status": true,
"message": "انجام شد",
"message_parameters": [],
"message_code": "200-1"
}
}
🔄 مقادیر مختلف method در خروجی
بسته به تنظیمات احراز هویت دو مرحلهای (2FA) کاربر، پس از ورود موفقیتآمیز، یکی از سناریوهای زیر رخ خواهد داد:
-
رمزساز گوگل (ga)
method
مقدار "ga" را خواهد داشت- بدین معناست که کاربر درحساب کاربری خود رمزساز گوگل را فعال نموده است. در اینصورت برای کاربر پیامک کد ورود ارسال نخواهد شد و کاربر می بایست کد تولید شده در رمزساز گوگل را برای مرحله بعدی وارد نماید
-
پیامک رمز یکبار مصرف (sms)
method
مقدار "sms" را خواهد داشت- سیستم به طور خودکار پیامک رمزیکبار مصرف را به شماره ثبت شده کاربر ارسال نموده است
- کاربر جهت ادامه مراحل باید کد دریافت شده توسط پیامک را وارد نماید
- توجه داشته باشید که اگر درخواست دهنده مالک اصلی پنل نباشد و به عنوان همکار درحال ورود به سیستم باشد، پیامک ورود برای شماره تعریف شده برای وی ارسال و به مالک اصلی پنل نیز ورود وی اعلام میگردد
-
ورد مستقیم (login)
method
مقدار "login" را خواهد داشت- اگر method مقداری برابر login داشته باشد بدین معناست که توکن بازگشتی توکن نهایی بوده و نیاز به مراحل ورود رمز یکبار مصرف نمی باشد
توکن دریافت شده از این مرحله صرفا جهت ادامه مراحل ورود بوده و به منزله توکن نهایی نیست. دقت داشته باشید این توکن به مدت 6 دقیقه معتبر بوده و بعد از آن منقضی می شود.
❌ نمونه خطا
{
"errors": {
"username": [
"نام کاربری یا رمز عبور اشتباه است"
]
},
"meta": {
"status": false,
"message": "درخواست معتبر نیست",
"message_parameters": [],
"message_code": "422-1"
}
}
🧪 نمونه درخواست
curl --location '{base_url}/api/acl/auth/login' \
--header 'Content-Type: application/json' \
--data-raw '{
"username": "your-username",
"password": "your-password"
}'