آدرس سرویس : initiate-login/
بدنه درخواست : ندارد
متد : POST
پاسخ :
{ "success": { "next_page": "login", "next_page_action": "/send/otp", "next_page_data": { "login": { "user_info": { "mobile_number": "", "national_number": "", "loa": "" }, "client_info": { "scope_titles": "", "client_name": "", "client_id": "", "download_address": "" }, "general_info": { "captcha_address": "", "deprecate_address": "", "download_address": "" } } }, "ready_for_final_authenticate": false } } |
توضیح پاسخ :
با فراخوانی این سرویس مشخص میشود که اصلا کاربر میتواند صفحه لاگین را ببیند یا اگر پاسخ خطا داشت صفحه خطا را ببیند یا صفحه لاگین را با حالت خطا ببیند.
نمونه پاسخ غلط (وقتی کاربر نیاز دارد فرآیند را از اول شروع کند)
{ "error": { "next_page": "error", "reason": "user should start process from the begining", "next_page_action":"", "next_page_data":{} } } |
توضیح این پاسخ در پاسخ سرویس پیامکی به صورت کامل آمده است.
آدرس سرویس : send/otp/
بدنه درخواست : اطلاعات کدملی و شماره موبایل
متد : POST
نوع محتوا : application/x-www-form-urlencoded
پاسخ :
{ "error": { "next_page": "it can be any page or error page", "reason": "error reason", "next_page_action":"/authenticate/first-page", "next_page_data":{} }, "success": { "next_page": "otp", "next_page_action":"/authenticate/first-page" "next_page_data": { "otp": { "code_expire_date":12312 } }, "ready_for_final_authenticate": false } } |
توضیح پاسخ :
دکمه ارسال مجدد پیامک در صفحه otp نیز همین سرویس را فراخوانی میکند.
آدرس سرویس : authenticate/first-page/
بدنه درخواست : کد واردشده
متد : POST
نوع محتوا : application/x-www-form-urlencoded
پاسخ :
{ "success": { "next_page": "otp", "next_page_action":"/login" "next_page_data":{}, "ready_for_final_authenticate": true } } |
توضیح پاسخ :
در هر پاسخی وقتی مقدار ready_for_final_authenticate برابر true بود باید login/ فراخوانی شود و کاربر redirect شود.
پاسخ خطا (در صورتی که شاهکار اطلاعات کاربر را قبول نکند)
{ "error": { "next_page": "login", "reason": "mobile number and national number not matched", "next_page_action":"/authenticate/first-page", "next_page_data":{ "login": { "user_info": { "mobile_number": "", "national_number": "", "loa": "" }, "client_info": { "scope_titles": "", "client_name": "", "client_id": "", "download_address": "" }, "general_info": { "captcha_address": "", "deprecate_address": "", "download_address": "" } } } } } |
در این حالت کاربر صفحه لاگین را میبیند و در آنجا پیام خطا toast میشود و اطلاعات موردنیاز هر صفحه در قسمت next_page_data قرار میگیرد.
پاسخ خطا (در صورتی که کد پیامکی اشتباه زده باشد)
{ "error": { "next_page": "otp", "reason": "otp was incorrect", "next_page_action":"/authenticate/first-page", "next_page_data":{ "otp" : { "code_expire_date":1111 } } } } |
در این حالت کاربر در صفحه otp میماند و پیام خطا نشان داده میشود.
پاسخ درست (حالتی که مرحله بعد صفحه تشخیص چهره باشد)
{ "success": { "next_page": "facedetection", "next_page_action":"/authenticate/face-decetion" "next_page_data":{...}, "ready_for_final_authenticate": false } } |
در این حالت کاربر به صفحه تشخیص چهره هدایت میشود