Auth API (Autentifikatsiya)
Ushbu bo'limda foydalanuvchini ro'yxatdan o'tkazish va tizimga kirish bosqichlari tushuntiriladi. KidApp loyihasida autentifikatsiya OTP (bir martalik kod) orqali amalga oshiriladi.
Frontendda kirish ketma-ketligi
- Foydalanuvchi telefon raqamini kiritadi.
/signin/phoneendpointiga so'rov yuboriladi.- SMS orqali kelgan 4 xonali kod qabul qilinadi.
/signin/phone/verifyendpointiga raqam va kod yuboriladi.- Muvaffaqiyatli bo'lsa,
access_tokenvarefresh_tokenolinadi.
1. Tasdiqlash kodini so'rash
Foydalanuvchi telefon raqamiga 4 xonali kod yuborish.
- URL:
/user/auth/signin/phone - Metod:
POST - Auth manzarasi:
@Public()(Ochiq)
Request Body
{
"phone": "+998901234567"
}
Response
{
"message": "Tasdiqlash kodi +998901234567 raqamiga jo'natildi",
"expiresIn": 180
}
2. Kodni tasdiqlash va kirish
SMS orqali kelgan kodni tekshirish va JWT tokenlarni olish.
- URL:
/user/auth/signin/phone/verify - Metod:
POST - Auth manzarasi:
@Public()(Ochiq)
Request Body
{
"phone": "+998901234567",
"code": "1234"
}
Response (200 OK)
{
"access_token": "eyJhbGciOiJIUzI1Ni...",
"refresh_token": "eyJhbGciOiJIUzI1Ni...",
"isProfileCompleted": false,
"isChildCompleted": false
}
[!TIP]
isProfileCompletedvaisChildCompletedflaglari orqali frontendda foydalanuvchini qaysi sahifaga (Profile to'ldirish yoki Bola qo'shish) yo'naltirishni hal qilish mumkin.
3. Tokenni yangilash (Refresh)
Access token muddati tugaganda yangisini olish.
- URL:
/user/auth/refresh - Metod:
POST - Auth manzarasi:
Bearer {refresh_token}(Headersda yuboriladi)
Response
{
"access_token": "new_access_token...",
"refresh_token": "new_refresh_token..."
}
4. Tizimdan chiqish (Logout)
Joriy sessiyani yakunlash.
- URL:
/user/auth/logout - Metod:
POST - Headers:
Authorization: Bearer {access_token}
