Foydalanuvchilar
Tizim foydalanuvchilari hisoblari. Bu bo‘lim orqali administratorlar yaratiladi; «Niqob» direktor yoki xodim hisobiga kirish imkonini beradi.
| Metod | Manzil | Vazifasi |
|---|---|---|
| PATCH | /admin/user/user/{model}/auth-as | Foydalanuvchi sifatida kirish |
| GET | /admin/user/user | Foydalanuvchilar ro‘yxati |
| GET | /admin/user/user/{model} | Foydalanuvchi kartasi |
| POST | /admin/user/user | Administrator yaratish |
| PUT | /admin/user/user/{model} | Foydalanuvchini tahrirlash |
| DELETE | /admin/user/user/{model} | Foydalanuvchini o‘chirish |
| DELETE | /admin/user/user/{value}/restore | Foydalanuvchini tiklash |
Foydalanuvchi sifatida kirish
/admin/user/user/{model}/auth-as«Niqob»: foydalanuvchi hisobida ishlash uchun token beradi. Faqat kompaniya va hamkorlarning direktorlari va xodimlari uchun, boshqalar uchun — 400.
Formadan (
multipart/form-data)PATCHmetodiPOST+?_method=PATCHparametri bilan yuboriladi.
Sarlavhalar (headers)
| Sarlavha | Qiymat | Tavsif |
|---|---|---|
Authorization | Bearer {token} | POST /common/auth/login dan olingan token |
Accept | application/json | Javob JSON da |
Accept-Language | ru | Xabarlar va nomlar tili: ru, uz, oz |
Yo‘l parametrlari
| Parametr | Tavsif |
|---|---|
model | Yozuv ID si |
Javob · 200
Javob maydonlari
| Maydon | Turi | Tavsif |
|---|---|---|
token | string | Token |
{
"token": "***"
}Foydalanuvchilar ro‘yxati
/admin/user/userTizim foydalanuvchilarining filtrlar bilan sahifali ro‘yxati (masalan, filter[type], filter[company_id]).
Sarlavhalar (headers)
| Sarlavha | Qiymat | Tavsif |
|---|---|---|
Authorization | Bearer {token} | POST /common/auth/login dan olingan token |
Accept | application/json | Javob JSON da |
Accept-Language | ru | Xabarlar va nomlar tili: ru, uz, oz |
So‘rov parametrlari
| Parametr | Tavsif |
|---|---|
filter[id] | ID — bitta qiymat yoki ro‘yxat filter[id][] |
filter[type] | Turi — aniq qiymat |
filter[role_id] | Roli — aniq qiymat |
filter[company_id] | Kompaniya — bitta qiymat yoki ro‘yxat filter[company_id][] |
filter[partner_id] | Hamkor — bitta qiymat yoki ro‘yxat filter[partner_id][] |
filter[are_all_companies_available] | aniq qiymat |
filter[companies_responsibility.id] | ID — bitta qiymat yoki ro‘yxat filter[companies_responsibility.id][] |
filter[username_or_phone] | Login yoki telefon — aniq qiymat (ichki elementlar bilan) |
sort[] | Saralash, - — kamayish bo‘yicha: id, -id, username, -username |
with[] | Bog‘liq ma’lumotlarni qo‘shish: profile, role, company, partner, companies_responsibility |
page | Sahifa raqami, 1 dan |
page-size | Sahifadagi yozuvlar soni, ko‘pi bilan 20 |
GET /admin/user/user?sort[0]=id&sort[1]=-id&sort[2]=username&sort[3]=-usernameJavob · 200
Sahifalangan javob: yozuvlar data[] ichida, sahifalash links va meta da.
Javob maydonlari
| Maydon | Turi | Tavsif |
|---|---|---|
data | object[] | Ma'lumotlar |
data[].id | integer | ID |
data[].type | string | Turi |
data[].role_id | integer | Roli |
data[].company_id | null | Kompaniya |
data[].partner_id | null | Hamkor |
data[].username | string | Login |
data[].pinfl | null | PINFL |
data[].phone | string | Telefon |
data[].sipuni_sip_number | null | Sipuni (SIP-raqam) |
data[].is_confirmed | boolean | |
data[].are_all_companies_available | boolean | |
data[].last_login_at | null | |
data[].created_at | string | Yaratilgan |
data[].updated_at | string | Yangilangan |
data[].is_deleted | boolean |
{
"data": [
{
"id": 1,
"type": "admin",
"role_id": 1,
"company_id": null,
"partner_id": null,
"username": "admin@local.host",
"pinfl": null,
"phone": "998010000001",
"sipuni_sip_number": null,
"is_confirmed": true,
"are_all_companies_available": false,
"last_login_at": null,
"created_at": "2026-09-30 12:47:59",
"updated_at": "2026-09-30 12:47:59",
"is_deleted": false
},
{
"id": 2,
"type": "director",
"role_id": 2,
"company_id": 1,
"partner_id": null,
"username": "director_1@local.host",
"pinfl": null,
"phone": "998020000001",
"sipuni_sip_number": "210",
"is_confirmed": true,
"are_all_companies_available": false,
"last_login_at": null,
"created_at": "2026-09-30 12:47:59",
"updated_at": "2026-09-30 12:47:59",
"is_deleted": false
}
],
"links": {
"first": "https://api.wasyt.uz/admin/user/user?page=1",
"last": "https://api.wasyt.uz/admin/user/user?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [],
"path": "https://api.wasyt.uz/admin/user/user",
"per_page": 20,
"to": 13,
"total": 13
}
}Foydalanuvchi kartasi
/admin/user/user/{model}Foydalanuvchini with[] ni hisobga olgan holda ID bo‘yicha qaytaradi.
Sarlavhalar (headers)
| Sarlavha | Qiymat | Tavsif |
|---|---|---|
Authorization | Bearer {token} | POST /common/auth/login dan olingan token |
Accept | application/json | Javob JSON da |
Accept-Language | ru | Xabarlar va nomlar tili: ru, uz, oz |
Yo‘l parametrlari
| Parametr | Tavsif |
|---|---|
model | Yozuv ID si |
Javob · 200
Javob maydonlari
| Maydon | Turi | Tavsif |
|---|---|---|
id | integer | ID |
type | string | Turi |
role_id | integer | Roli |
company_id | null | Kompaniya |
partner_id | null | Hamkor |
username | string | Login |
pinfl | null | PINFL |
phone | string | Telefon |
sipuni_sip_number | null | Sipuni (SIP-raqam) |
is_confirmed | boolean | |
are_all_companies_available | boolean | |
last_login_at | null | |
created_at | string | Yaratilgan |
updated_at | string | Yangilangan |
is_deleted | boolean |
{
"id": 1,
"type": "admin",
"role_id": 1,
"company_id": null,
"partner_id": null,
"username": "admin@local.host",
"pinfl": null,
"phone": "998010000001",
"sipuni_sip_number": null,
"is_confirmed": true,
"are_all_companies_available": false,
"last_login_at": null,
"created_at": "2026-09-30 12:47:59",
"updated_at": "2026-09-30 12:47:59",
"is_deleted": false
}Administrator yaratish
/admin/user/useradmin turidagi foydalanuvchini administrator roli role_id, noyob login, telefon, parol va profil bilan yaratadi. are_all_companies_available = false bo‘lsa, companies_responsibility administratorga ochiq kompaniyalarni cheklaydi.
Sarlavhalar (headers)
| Sarlavha | Qiymat | Tavsif |
|---|---|---|
Authorization | Bearer {token} | POST /common/auth/login dan olingan token |
Accept | application/json | Javob JSON da |
Accept-Language | ru | Xabarlar va nomlar tili: ru, uz, oz |
So‘rov tanasi
| Maydon | Turi | Majburiy | Tavsif |
|---|---|---|---|
role_id | integer | Ha | Roli. Foydalanuvchiga ochiq mavjud yozuv ID si |
username | string | Ha | Login. Lotin harflari, raqamlar va ._@+-, 3 dan 255 gacha belgi. Takrorlanmas qiymat |
phone | string | Ha | Telefon. Format 998xxyyyzzzz |
sipuni_sip_number | string | Yo‘q | Sipuni (SIP-raqam). Maks. 10 belgi |
are_all_companies_available | boolean | Ha | |
new_password | string | Ha | Yangi parol. Parol (ishonchlilik qoidalari) |
new_password_confirmation | string | new_password yuborilsa | Yangi parolni tasdiqlash. new_password bilan bir xil |
profile.first_name | string | Yo‘q | Ism. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis |
profile.last_name | string | Yo‘q | Familiya. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis |
profile.position | string | Yo‘q | Lavozim. Maks. 255 belgi |
companies_responsibility | array | Yo‘q | Kompaniya uchun javobgarlik. Maks. 100 ta element. Foydalanuvchiga ochiq mavjud yozuv ID si |
{
"role_id": 1,
"username": "admin_2@local.host",
"phone": "998010000002",
"sipuni_sip_number": "",
"are_all_companies_available": 1,
"new_password": "***",
"new_password_confirmation": "***",
"profile": {
"first_name": "FIRST NAME",
"last_name": "LAST NAME",
"position": "Position"
},
"companies_responsibility": [
1,
2
]
}curl -X POST "https://api.wasyt.uz/admin/user/user" \
-H "Accept: application/json" \
-H "Accept-Language: ru" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"role_id":1,"username":"admin_2@local.host","phone":"998010000002","sipuni_sip_number":"","are_all_companies_available":1,"new_password":"***","new_password_confirmation":"***","profile":{"first_name":"FIRST NAME","last_name":"LAST NAME","position":"Position"},"companies_responsibility":[1,2]}'Javob · 200
Javob maydonlari
| Maydon | Turi | Tavsif |
|---|---|---|
type | string | Turi |
role_id | integer | Roli |
username | string | Login |
phone | string | Telefon |
sipuni_sip_number | null | Sipuni (SIP-raqam) |
are_all_companies_available | boolean | |
updated_at | string | Yangilangan |
created_at | string | Yaratilgan |
id | integer | ID |
last_login_at | string | |
is_deleted | boolean |
{
"type": "admin",
"role_id": 1,
"username": "admin_2@local.host",
"phone": "998010000002",
"sipuni_sip_number": null,
"are_all_companies_available": true,
"updated_at": "2026-09-30 12:50:27",
"created_at": "2026-09-30 12:50:27",
"id": 20,
"last_login_at": "2026-09-30 12:50:27",
"is_deleted": false
}Foydalanuvchini tahrirlash
/admin/user/user/{model}Login, telefon, rol (foydalanuvchi turi bilan bir xil turdagi rol), profil va new_password berilsa, parolni yangilaydi. Super-administrator va mijozning roli o‘zgarmaydi. Parol o‘zgarsa, foydalanuvchining barcha seanslari yakunlanadi; administrator o‘z parolini o‘zgartirsa, javobda yangi token keladi.
Formadan (
multipart/form-data)PUTmetodiPOST+?_method=PUTparametri bilan yuboriladi.
Sarlavhalar (headers)
| Sarlavha | Qiymat | Tavsif |
|---|---|---|
Authorization | Bearer {token} | POST /common/auth/login dan olingan token |
Accept | application/json | Javob JSON da |
Accept-Language | ru | Xabarlar va nomlar tili: ru, uz, oz |
Yo‘l parametrlari
| Parametr | Tavsif |
|---|---|
model | Yozuv ID si |
So‘rov tanasi
| Maydon | Turi | Majburiy | Tavsif |
|---|---|---|---|
role_id | integer | Ha | Roli. Foydalanuvchiga ochiq mavjud yozuv ID si |
username | string | Ha | Login. Lotin harflari, raqamlar va ._@+-, 3 dan 255 gacha belgi. Takrorlanmas qiymat |
phone | string | Ha | Telefon. Format 998xxyyyzzzz |
sipuni_sip_number | string | Yo‘q | Sipuni (SIP-raqam). Maks. 10 belgi |
are_all_companies_available | boolean | Ha | |
new_password | string | Yo‘q | Yangi parol. Parol (ishonchlilik qoidalari) |
new_password_confirmation | string | new_password yuborilsa | Yangi parolni tasdiqlash. new_password bilan bir xil |
profile.first_name | string | Yo‘q | Ism. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis |
profile.last_name | string | Yo‘q | Familiya. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis |
profile.position | string | Yo‘q | Lavozim. Maks. 255 belgi |
companies_responsibility | array | Yo‘q | Kompaniya uchun javobgarlik. Maks. 100 ta element. Foydalanuvchiga ochiq mavjud yozuv ID si |
{
"role_id": 4,
"username": "employee_1_1@local.host",
"phone": "998040000001",
"sipuni_sip_number": "211",
"are_all_companies_available": 1,
"new_password": "***",
"new_password_confirmation": "***",
"profile": {
"first_name": "FIRST NAME",
"last_name": "LAST NAME",
"position": "Position"
},
"companies_responsibility": [
1,
2
]
}curl -X PUT "https://api.wasyt.uz/admin/user/user/4" \
-H "Accept: application/json" \
-H "Accept-Language: ru" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"role_id":4,"username":"employee_1_1@local.host","phone":"998040000001","sipuni_sip_number":"211","are_all_companies_available":1,"new_password":"***","new_password_confirmation":"***","profile":{"first_name":"FIRST NAME","last_name":"LAST NAME","position":"Position"},"companies_responsibility":[1,2]}'Javob · 200
Javob maydonlari
| Maydon | Turi | Tavsif |
|---|---|---|
message | string | Xabar |
{
"message": "Success"
}Foydalanuvchini o‘chirish
/admin/user/user/{model}Foydalanuvchini yumshoq o‘chiradi. Super-administratorni yoki o‘zini o‘chirishda — 400 xatosi.
Formadan (
multipart/form-data)DELETEmetodiPOST+?_method=DELETEparametri bilan yuboriladi.
Sarlavhalar (headers)
| Sarlavha | Qiymat | Tavsif |
|---|---|---|
Authorization | Bearer {token} | POST /common/auth/login dan olingan token |
Accept | application/json | Javob JSON da |
Accept-Language | ru | Xabarlar va nomlar tili: ru, uz, oz |
Yo‘l parametrlari
| Parametr | Tavsif |
|---|---|
model | Yozuv ID si |
Javob · 200
Javob maydonlari
| Maydon | Turi | Tavsif |
|---|---|---|
message | string | Xabar |
{
"message": "Success"
}Foydalanuvchini tiklash
/admin/user/user/{value}/restoreO‘chirilgan foydalanuvchini {value} ID si bo‘yicha tiklaydi.
Formadan (
multipart/form-data)DELETEmetodiPOST+?_method=DELETEparametri bilan yuboriladi.
Sarlavhalar (headers)
| Sarlavha | Qiymat | Tavsif |
|---|---|---|
Authorization | Bearer {token} | POST /common/auth/login dan olingan token |
Accept | application/json | Javob JSON da |
Accept-Language | ru | Xabarlar va nomlar tili: ru, uz, oz |
Yo‘l parametrlari
| Parametr | Tavsif |
|---|---|
value | Yozuv ID si (o‘chirilgani ham) |
Javob · 200
Javob maydonlari
| Maydon | Turi | Tavsif |
|---|---|---|
message | string | Xabar |
{
"message": "Success"
}
