Skip to content

Hamkor integratsiyasi ​

Hamkor integratsiyasi: sayt manzili bo‘yicha hamkorni aniqlash, uning kompaniyalarini wasyt ga ko‘chirish va ularning ma’lumotlarini o‘qish. Avtorizatsiya — External-System-Secret-Key va Company-Partner-Uuid yoki Company-Wasyt-Uuid.

MetodManzilVazifasi
POST/external/partner/find-by-urlHamkorni manzil bo‘yicha topish
POST/external/partner/companyKompaniya yaratish yoki yangilash
GET/external/partner/records/{type}Tur bo‘yicha hamkor ma’lumotnomasi

Hamkorni manzil bo‘yicha topish ​

POST/external/partner/find-by-url

url saytiga xizmat ko‘rsatadigan hamkorni (va uning bezagini) qaytaradi; kalit kerak emas. Oxiridagi slesh hisobga olinmaydi, bitta manzil bir nechta hamkorda bo‘lsa, oldin qo‘shilgani olinadi, kassa.<domen> domen hamkorini oladi. Ro‘yxatdan o‘tmagan manzil production da — 404, production dan tashqarida uning uchun vaqtinchalik hamkor yaratiladi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
urlstringHaSayt manzili (http yoki https). Maks. 255 belgi. URL manzil
json
{
    "url": "https://partner-1.com"
}
bash
curl -X POST "https://api.wasyt.uz/external/partner/find-by-url" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://partner-1.com"}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
idintegerID
namestringNomlanish
company_namestringKompaniya
innstringINN
mfostringMFO
addressstringManzil
call_center_phonestringQo'ng'rioqlar markazi raqami
commentstringIzoh
director_full_namestringDirektorning FISH
bankstringBank
payment_accountstringTo'lov hisob raqami
created_atstringYaratilgan
updated_atstringYangilangan
is_deletedboolean
themeobject
theme.titlestring
theme.logo_lightstring
theme.logo_light_thumbsobject
theme.logo_light_thumbs.widen_100object
theme.logo_light_thumbs.widen_100.rawstring
theme.logo_light_thumbs.widen_100.webpstring
theme.logo_light_thumbs.widen_500object
theme.logo_light_thumbs.widen_500.rawstring
theme.logo_light_thumbs.widen_500.webpstring
theme.logo_light_thumbs.originalobject
theme.logo_light_thumbs.original.rawstring
theme.logo_light_thumbs.original.webpstring
theme.logo_darkstring
theme.logo_dark_thumbsobject
theme.logo_dark_thumbs.widen_100object
theme.logo_dark_thumbs.widen_100.rawstring
theme.logo_dark_thumbs.widen_100.webpstring
theme.logo_dark_thumbs.widen_500object
theme.logo_dark_thumbs.widen_500.rawstring
theme.logo_dark_thumbs.widen_500.webpstring
theme.logo_dark_thumbs.originalobject
theme.logo_dark_thumbs.original.rawstring
theme.logo_dark_thumbs.original.webpstring
theme.faviconstring
theme.favicon_thumbsobject
theme.favicon_thumbs.widen_192object
theme.favicon_thumbs.widen_192.rawstring
theme.favicon_thumbs.widen_192.webpstring
theme.favicon_thumbs.widen_256object
theme.favicon_thumbs.widen_256.rawstring
theme.favicon_thumbs.widen_256.webpstring
theme.favicon_thumbs.widen_300object
theme.favicon_thumbs.widen_300.rawstring
theme.favicon_thumbs.widen_300.webpstring
theme.favicon_thumbs.originalobject
theme.favicon_thumbs.original.rawstring
theme.favicon_thumbs.original.webpstring
theme.color_primary_lightstring
theme.color_primary_darkstring
urlsobject[]
urls[].idintegerID
urls[].urlstringURL
json
{
    "id": 1,
    "name": "Partner 1",
    "company_name": "Company 1",
    "inn": "000000001",
    "mfo": "00001",
    "address": "Address 1",
    "call_center_phone": "998000000001",
    "comment": "Comment 1",
    "director_full_name": "Director 1",
    "bank": "Bank 1",
    "payment_account": "00000000000000000001",
    "created_at": "2026-09-30 12:47:58",
    "updated_at": "2026-09-30 12:47:58",
    "is_deleted": false,
    "theme": {
        "title": "Partner 1",
        "logo_light": "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png",
        "logo_light_thumbs": {
            "widen_100": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png"
            },
            "widen_500": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png"
            },
            "original": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png"
            }
        },
        "logo_dark": "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png",
        "logo_dark_thumbs": {
            "widen_100": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png"
            },
            "widen_500": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png"
            },
            "original": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png"
            }
        },
        "favicon": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png",
        "favicon_thumbs": {
            "widen_192": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png"
            },
            "widen_256": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png"
            },
            "widen_300": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png"
            },
            "original": {
                "raw": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png",
                "webp": "https://api-minio.icangroup.uz/wasyt/test_data/images/3.png"
            }
        },
        "color_primary_light": "#ff002b",
        "color_primary_dark": "#00f7ff"
    },
    "urls": [
        {
            "id": 1,
            "url": "https://partner-1.com"
        }
    ]
}

Kompaniya yaratish yoki yangilash ​

POST/external/partner/company

wasyt_uuid siz hamkor kompaniyasini direktori bilan yaratadi, ma’lum wasyt_uuid bilan — uni yangilaydi; ICAN yoki wasyt da yaratilgan kompaniyani yangilab bo‘lmaydi (422). Bosh kompaniya muddatsiz bepul obuna oladi, filial (parent_wasyt_uuid, ichma-ichlik 2 dan oshmaydi) — yo‘q; is_partner_turned_on doim true, is_ican_turned_on ni hamkor o‘zgartirmaydi, kompaniya ICAN ga yuborilmaydi. Javobdagi wasyt_uuid — Company-Wasyt-Uuid sarlavhasi qiymati.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
External-System-Secret-Key{external_system_secret_key}Tashqi tizim maxfiy kaliti
Company-Partner-Uuid{company_partner_uuid}Kompaniya hamkor UUID si bo‘yicha (yoki Company-Wasyt-Uuid)
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
wasyt_uuidstringYo‘qKompaniyaning wasyt dagi UUID si: bo‘sh — yangi kompaniya, ma’lumi — yangilash. Maks. 255 belgi
parent_wasyt_uuidstringYo‘qBosh kompaniya (wasyt dagi UUID) — filial uchun. Maks. 255 belgi
namestringHaNomlanish. Maks. 255 belgi
company_namestringHaKompaniya. Maks. 255 belgi
innstringHaINN. Maks. 255 belgi
mfostringHaMFO. Maks. 255 belgi
addressstringHaManzil. Maks. 255 belgi
commentstringYo‘qIzoh. Maks. 1000 belgi
telegram_phonestringYo‘qTelegramdagi telefon. Maks. 255 belgi
director_full_namestringYo‘qDirektorning FISH. Maks. 255 belgi
bankstringHaBank. Maks. 255 belgi
payment_accountstringHaTo'lov hisob raqami. Maks. 255 belgi
agreement_numberstringHaShartnoma raqami. Maks. 255 belgi
district_wasyt_uuidstringHaTuman (records/region_district dagi wasyt UUID si). Maks. 255 belgi
field_of_activitystringHaFaoliyat yo‘nalishi. Mumkin qiymatlar: trading, study, finance, service
is_ican_turned_onbooleanHaE’tiborga olinmaydi: yangi kompaniyada false, mavjudida o‘zgarmaydi
is_partner_turned_onbooleanHaE’tiborga olinmaydi: doim true
director.usernamestring (email)HaDirektor logini (email); yangilashda o‘zgarmaydi. Maks. 255 belgi. Takrorlanmas qiymat
director.phonestringHaTelefon. Format 998xxyyyzzzz
director.passwordstringHaParol. Maks. 255 belgi
json
{
    "name": "Partner company",
    "company_name": "Partner company",
    "inn": "000000009",
    "mfo": "00009",
    "address": "Address 9",
    "comment": "Comment 9",
    "telegram_phone": "998000000029",
    "director_full_name": "Director 9",
    "bank": "Bank 9",
    "payment_account": "00000000000000000009",
    "agreement_number": "009/2026",
    "district_wasyt_uuid": "wasyt-district-1",
    "field_of_activity": "trading",
    "director": {
        "username": "director_9@local.host",
        "phone": "998020000009",
        "password": "***"
    },
    "is_last_step": 1
}
bash
curl -X POST "https://api.wasyt.uz/external/partner/company" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "External-System-Secret-Key: {external_system_secret_key}" \
  -H "Content-Type: application/json" \
  -d '{"name":"Partner company","company_name":"Partner company","inn":"000000009","mfo":"00009","address":"Address 9","comment":"Comment 9","telegram_phone":"998000000029","director_full_name":"Director 9","bank":"Bank 9","payment_account":"00000000000000000009","agreement_number":"009/2026","district_wasyt_uuid":"wasyt-district-1","field_of_activity":"trading","director":{"username":"director_9@local.host","phone":"998020000009","password":"***"},"is_last_step":1}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
namestringNomlanish
company_namestringKompaniya
innstringINN
mfostringMFO
addressstringManzil
commentstringIzoh
telegram_phonestringTelegramdagi telefon
director_full_namestringDirektorning FISH
bankstringBank
payment_accountstringTo'lov hisob raqami
agreement_numberstringShartnoma raqami
field_of_activitystringFaoliyat yo‘nalishi
is_ican_turned_onbooleanICAN yoqilgan
is_partner_turned_onbooleanHamkor yoqilgan
district_idintegerTuman
updated_atstringYangilangan
created_atstringYaratilgan
wasyt_uuidstringWasyt dagi UUID
idintegerID
is_deletedboolean
json
{
    "name": "Partner company",
    "company_name": "Partner company",
    "inn": "000000009",
    "mfo": "00009",
    "address": "Address 9",
    "comment": "Comment 9",
    "telegram_phone": "998000000029",
    "director_full_name": "Director 9",
    "bank": "Bank 9",
    "payment_account": "00000000000000000009",
    "agreement_number": "009/2026",
    "field_of_activity": "trading",
    "is_ican_turned_on": false,
    "is_partner_turned_on": true,
    "district_id": 1,
    "updated_at": "2026-09-30 12:56:44",
    "created_at": "2026-09-30 12:56:44",
    "wasyt_uuid": "6abcc0bc0a8b7-a8da8773-e97d-4b7a-aeb3-beb613967791",
    "id": 13,
    "is_deleted": false
}

Tur bo‘yicha hamkor ma’lumotnomasi ​

GET/external/partner/records/{type}

Sahifalangan ma’lumotnoma (id, value va tur maydonlari). Manzil turlari region, region_district, region_mfy faqat kalit bilan ochiladi, wasyt_uuid ni beradi va sahifada 1000 tagacha yozuv qaytaradi. Sarlavhadagi kompaniya ma’lumotlari — filial, cashbox, cashbox_balance, stock, stock_product, product, product_category, product_brand (20 tagacha yozuv); kompaniya aniqlanmasa — 404, noma’lum tur — 400.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
External-System-Secret-Key{external_system_secret_key}Tashqi tizim maxfiy kaliti
Company-Partner-Uuid{company_partner_uuid}Kompaniya hamkor UUID si bo‘yicha (yoki Company-Wasyt-Uuid)
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
typeTuri (metod tavsifiga qarang)

So‘rov parametrlari ​

MaydonTuriMajburiyTavsif
filter[id]integer|arrayYo‘qFaqat shu ID li yozuvlar (har qanday tur)
filter[value]stringYo‘qvalue qismi bo‘yicha qidiruv (har qanday tur)
filter[region_id]integer|arrayYo‘qregion_district: shu viloyatlar tumanlari
filter[district_id]integer|arrayYo‘qregion_mfy: shu tumanlar mahallalari
filter[level]integerYo‘qfilial: 1 — faqat bosh kompaniya, boshqa qiymat — faqat filiallar
filter[company_id]integer|arrayYo‘qcashbox, stock: faqat shu kompaniyalarniki
filter[type]string|arrayYo‘qcashbox: kassa turi
filter[cashbox_id]integer|arrayYo‘qcashbox_balance: shu kassalar qoldiqlari
filter[currency]string|arrayYo‘qcashbox_balance: qoldiq valyutasi
filter[payment_type]string|arrayYo‘qcashbox_balance: qoldiq to‘lov turi
filter[is_available]booleanYo‘qstock: omborning mavjudligi
filter[stock_id]integer|arrayYo‘qstock_product: shu omborlar qoldiqlari; product: shu omborlarda bor tovarlar
filter[product_id]integer|arrayYo‘qstock_product: shu tovarlar qoldiqlari
filter[quantity_from]numberYo‘qstock_product: qoldiq shu qiymatdan kam emas
filter[name_or_barcode]stringYo‘qproduct: nomi yoki shtrix-kodi qismi bo‘yicha qidiruv
filter[category_id]integer|arrayYo‘qproduct: shu kategoriyalar tovarlari
filter[brand_id]integer|arrayYo‘qproduct: shu brendlar tovarlari
filter[parent_id]integer|arrayYo‘qproduct_category: shu kategoriyalarning ichki kategoriyalari
show[]stringYo‘qwith-deleted — o‘chirilganlar bilan birga, only-deleted — faqat o‘chirilganlar (yumshoq o‘chiriladigan modellar uchun)
pageintegerYo‘qSahifa raqami, 1 dan
page-sizeintegerYo‘qSahifadagi yozuvlar soni: standart 20; region, region_district, region_mfy uchun — 1000 tagacha, qolganlari uchun — 20 tadan ko‘p emas

Javob · 200 ​

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

Javob maydonlari
MaydonTuriTavsif
dataobject[]Ma'lumotlar
data[].idintegerID
data[].valuestringMa'nosi
data[].parent_idintegerOta-ona
data[].company_namestringKompaniya
data[].innstringINN
data[].addressstringManzil
data[].latitudenullKenglik
data[].longitudenullUzunlik
data[].is_deletedboolean
json
{
    "data": [
        {
            "id": 2,
            "value": "Company 1-1",
            "parent_id": 1,
            "company_name": "Company 1-1",
            "inn": "000000002",
            "address": "Address 2",
            "latitude": null,
            "longitude": null,
            "is_deleted": false
        },
        {
            "id": 1,
            "value": "Company 1",
            "parent_id": null,
            "company_name": "Company 1",
            "inn": "000000001",
            "address": "Address 1",
            "latitude": null,
            "longitude": null,
            "is_deleted": false
        }
    ],
    "links": {
        "first": "https://api.wasyt.uz/external/partner/records/filial?page=1",
        "last": "https://api.wasyt.uz/external/partner/records/filial?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [],
        "path": "https://api.wasyt.uz/external/partner/records/filial",
        "per_page": 20,
        "to": 2,
        "total": 2
    }
}