Skip to content

Foydalanuvchilar ​

Tizim foydalanuvchilari hisoblari. Bu bo‘lim orqali administratorlar yaratiladi; «Niqob» direktor yoki xodim hisobiga kirish imkonini beradi.

MetodManzilVazifasi
PATCH/admin/user/user/{model}/auth-asFoydalanuvchi sifatida kirish
GET/admin/user/userFoydalanuvchilar ro‘yxati
GET/admin/user/user/{model}Foydalanuvchi kartasi
POST/admin/user/userAdministrator yaratish
PUT/admin/user/user/{model}Foydalanuvchini tahrirlash
DELETE/admin/user/user/{model}Foydalanuvchini o‘chirish
DELETE/admin/user/user/{value}/restoreFoydalanuvchini tiklash

Foydalanuvchi sifatida kirish ​

PATCH/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) PATCH metodi POST + ?_method=PATCH parametri bilan yuboriladi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
modelYozuv ID si

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
tokenstringToken
json
{
    "token": "***"
}

Foydalanuvchilar ro‘yxati ​

GET/admin/user/user

Tizim foydalanuvchilarining filtrlar bilan sahifali ro‘yxati (masalan, filter[type], filter[company_id]).

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov parametrlari ​

ParametrTavsif
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
pageSahifa raqami, 1 dan
page-sizeSahifadagi yozuvlar soni, ko‘pi bilan 20
http
GET /admin/user/user?sort[0]=id&sort[1]=-id&sort[2]=username&sort[3]=-username

Javob · 200 ​

Sahifalangan javob: yozuvlar data[] ichida, sahifalash links va meta da.

Javob maydonlari
MaydonTuriTavsif
dataobject[]Ma'lumotlar
data[].idintegerID
data[].typestringTuri
data[].role_idintegerRoli
data[].company_idnullKompaniya
data[].partner_idnullHamkor
data[].usernamestringLogin
data[].pinflnullPINFL
data[].phonestringTelefon
data[].sipuni_sip_numbernullSipuni (SIP-raqam)
data[].is_confirmedboolean
data[].are_all_companies_availableboolean
data[].last_login_atnull
data[].created_atstringYaratilgan
data[].updated_atstringYangilangan
data[].is_deletedboolean
json
{
    "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 ​

GET/admin/user/user/{model}

Foydalanuvchini with[] ni hisobga olgan holda ID bo‘yicha qaytaradi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
modelYozuv ID si

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
idintegerID
typestringTuri
role_idintegerRoli
company_idnullKompaniya
partner_idnullHamkor
usernamestringLogin
pinflnullPINFL
phonestringTelefon
sipuni_sip_numbernullSipuni (SIP-raqam)
is_confirmedboolean
are_all_companies_availableboolean
last_login_atnull
created_atstringYaratilgan
updated_atstringYangilangan
is_deletedboolean
json
{
    "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 ​

POST/admin/user/user

admin 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) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
role_idintegerHaRoli. Foydalanuvchiga ochiq mavjud yozuv ID si
usernamestringHaLogin. Lotin harflari, raqamlar va ._@+-, 3 dan 255 gacha belgi. Takrorlanmas qiymat
phonestringHaTelefon. Format 998xxyyyzzzz
sipuni_sip_numberstringYo‘qSipuni (SIP-raqam). Maks. 10 belgi
are_all_companies_availablebooleanHa
new_passwordstringHaYangi parol. Parol (ishonchlilik qoidalari)
new_password_confirmationstringnew_password yuborilsaYangi parolni tasdiqlash. new_password bilan bir xil
profile.first_namestringYo‘qIsm. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis
profile.last_namestringYo‘qFamiliya. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis
profile.positionstringYo‘qLavozim. Maks. 255 belgi
companies_responsibilityarrayYo‘qKompaniya uchun javobgarlik. Maks. 100 ta element. Foydalanuvchiga ochiq mavjud yozuv ID si
json
{
    "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
    ]
}
bash
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
MaydonTuriTavsif
typestringTuri
role_idintegerRoli
usernamestringLogin
phonestringTelefon
sipuni_sip_numbernullSipuni (SIP-raqam)
are_all_companies_availableboolean
updated_atstringYangilangan
created_atstringYaratilgan
idintegerID
last_login_atstring
is_deletedboolean
json
{
    "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 ​

PUT/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) PUT metodi POST + ?_method=PUT parametri bilan yuboriladi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
modelYozuv ID si

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
role_idintegerHaRoli. Foydalanuvchiga ochiq mavjud yozuv ID si
usernamestringHaLogin. Lotin harflari, raqamlar va ._@+-, 3 dan 255 gacha belgi. Takrorlanmas qiymat
phonestringHaTelefon. Format 998xxyyyzzzz
sipuni_sip_numberstringYo‘qSipuni (SIP-raqam). Maks. 10 belgi
are_all_companies_availablebooleanHa
new_passwordstringYo‘qYangi parol. Parol (ishonchlilik qoidalari)
new_password_confirmationstringnew_password yuborilsaYangi parolni tasdiqlash. new_password bilan bir xil
profile.first_namestringYo‘qIsm. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis
profile.last_namestringYo‘qFamiliya. Maks. 255 belgi. Faqat harflar, bo‘sh joy va defis
profile.positionstringYo‘qLavozim. Maks. 255 belgi
companies_responsibilityarrayYo‘qKompaniya uchun javobgarlik. Maks. 100 ta element. Foydalanuvchiga ochiq mavjud yozuv ID si
json
{
    "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
    ]
}
bash
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
MaydonTuriTavsif
messagestringXabar
json
{
    "message": "Success"
}

Foydalanuvchini o‘chirish ​

DELETE/admin/user/user/{model}

Foydalanuvchini yumshoq o‘chiradi. Super-administratorni yoki o‘zini o‘chirishda — 400 xatosi.

Formadan (multipart/form-data) DELETE metodi POST + ?_method=DELETE parametri bilan yuboriladi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
modelYozuv ID si

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
messagestringXabar
json
{
    "message": "Success"
}

Foydalanuvchini tiklash ​

DELETE/admin/user/user/{value}/restore

O‘chirilgan foydalanuvchini {value} ID si bo‘yicha tiklaydi.

Formadan (multipart/form-data) DELETE metodi POST + ?_method=DELETE parametri bilan yuboriladi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
valueYozuv ID si (o‘chirilgani ham)

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
messagestringXabar
json
{
    "message": "Success"
}