Skip to content

Tovar narxlari ​

Kompaniya tovarlarining belgilangan sotuv narxlari — «Tovarlarni qayta baholash» bo‘limi: narxlar ro‘yxati, xulosa va minimal sotuv narxi.

MetodManzilVazifasi
GET/company/product/price/statsQayta baholash xulosasi
PATCH/company/product/price/min-price-percentMinimal narx foizini belgilash
PATCH/company/product/price/{model}/min-priceTovarning minimal narxini belgilash
GET/company/product/priceNarxlar ro‘yxati
GET/company/product/price/{model}Narxni ko‘rish

Qayta baholash xulosasi ​

GET/company/product/price/stats

«Tovarlarni qayta baholash» bo‘limi sarlavhasi: avg_markup_percent — har bir tovarning oxirgi qayta baholashi bo‘yicha o‘rtacha ustama, potential_profit_uzs — narxi bor barcha tovarlar bo‘yicha (sotuv narxi − oxirgi kirim tannarxi) yig‘indisi, kompaniya kurslari bo‘yicha UZS da, price_tag — chop etish uchun kompaniyaning birinchi narx yorlig‘i.

Sarlavhalar (headers) ​

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

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
avg_markup_percentnull
potential_profit_uzsinteger
price_tagobject
price_tag.idintegerID
price_tag.creator_idintegerYaratuvchi
price_tag.company_idintegerKompaniya
price_tag.namestringNomlanish
price_tag.widthintegerKenglik
price_tag.heightintegerBalandlik
price_tag.elementsobject[]Elementlar
price_tag.elements[].xinteger
price_tag.elements[].yinteger
price_tag.elements[].textstringMatn
price_tag.elements[].typestringTuri
price_tag.elements[].colorstringRang
price_tag.elements[].fontSizeinteger
price_tag.is_defaultboolean
price_tag.created_atstringYaratilgan
price_tag.updated_atstringYangilangan
price_tag.is_deletedboolean
json
{
    "avg_markup_percent": null,
    "potential_profit_uzs": 2398100,
    "price_tag": {
        "id": 1,
        "creator_id": 2,
        "company_id": 1,
        "name": "Price tag 1",
        "width": 512,
        "height": 512,
        "elements": [
            {
                "x": 20,
                "y": 20,
                "text": "АКЦИЯ",
                "type": "text",
                "color": "#e11d48",
                "fontSize": 28
            },
            {
                "x": 380,
                "y": 20,
                "src": "https://api-minio.icangroup.uz/wasyt/uploads/logo.png",
                "type": "image",
                "width": 110,
                "height": 60
            }
        ],
        "is_default": false,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false
    }
}

Minimal narx foizini belgilash ​

PATCH/company/product/price/min-price-percent

product_ids dagi tovarlarga, ular berilmasa — kompaniyaning barcha narxlariga min_price_percent ni o‘rnatadi (minimal narx = tannarx + foiz); aniq min_price summalari tozalanadi, 0 foiz minimumni olib tashlaydi. «Minimal sotuv narxi» huquqini talab qiladi (aks holda 403); count — yangilangan narxlar sonini qaytaradi.

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

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
min_price_percentnumberHaTannarx ustiga foiz, 0 dan 10000 gacha
product_idsarrayYo‘qTovarlar ID lari; maydonsiz — kompaniyaning barcha tovarlari
json
{
    "min_price_percent": 5,
    "product_ids": [
        1
    ]
}
bash
curl -X PATCH "https://api.wasyt.uz/company/product/price/min-price-percent" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"min_price_percent":5,"product_ids":[1]}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
countintegerSoni
json
{
    "count": 1
}

Tovarning minimal narxini belgilash ​

PATCH/company/product/price/{model}/min-price

Narx qatori uchun uning valyutasida aniq minimal sotuv narxini belgilaydi. U tovar tannarxidan past bo‘lishi mumkin emas (422); null tovarni foizga qaytaradi, 0 minimumni olib tashlaydi. «Minimal sotuv narxi» huquqini talab qiladi (aks holda 403); yangilangan narxni qaytaradi.

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

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
min_pricenumberYo‘qNarx valyutasidagi minimal sotuv narxi; null — foizga qaytarish
json
{
    "min_price": 3000
}
bash
curl -X PATCH "https://api.wasyt.uz/company/product/price/1/min-price" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"min_price":3000}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
idintegerID
updater_idintegerYangilovchi
company_idintegerKompaniya
product_idintegerMahsulot
source_typestringManba
source_idintegerManba
priceintegerNarxi
currencystringValyuta
min_priceinteger
min_price_percentnull
created_atstringYaratilgan
updated_atstringYangilangan
effective_min_priceinteger
price_uzsinteger
effective_min_price_uzsinteger
price_usdnumber
effective_min_price_usdinteger
price_eurnumber
effective_min_price_eurinteger
price_rubnumber
effective_min_price_rubinteger
json
{
    "id": 1,
    "updater_id": 2,
    "company_id": 1,
    "product_id": 1,
    "source_type": "purchase",
    "source_id": 1,
    "price": 1100,
    "currency": "uzs",
    "min_price": 3000,
    "min_price_percent": null,
    "created_at": "2026-09-30 12:47:59",
    "updated_at": "2026-09-30 12:52:24",
    "effective_min_price": 3000,
    "price_uzs": 1100,
    "effective_min_price_uzs": 3000,
    "price_usd": 1.1,
    "effective_min_price_usd": 3,
    "price_eur": 1.1,
    "effective_min_price_eur": 3,
    "price_rub": 1.1,
    "effective_min_price_rub": 3
}

Narxlar ro‘yxati ​

GET/company/product/price

Joriy kompaniya tovarlarining sotuv narxlari tovar va uning kategoriyasi bilan. Filtrlar: product_id, currency, product.name, product.barcode, product.category_id (ichki kategoriyalar bilan); id va price bo‘yicha saralash.

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 — aniq qiymat
filter[updater_id]Yangilovchi — aniq qiymat
filter[company_id]Kompaniya — aniq qiymat
filter[product_id]Mahsulot — aniq qiymat
filter[currency]Valyuta — aniq qiymat
filter[created_at]Yaratilgan — davr: [0] — dan, [1] — gacha (Y-m-d)
filter[product.category_id]Kategoriya — aniq qiymat (ichki elementlar bilan)
filter[product.name]Nomlanish — qator qismi bo‘yicha qidiruv
filter[product.barcode]Shtrix kod — aniq qiymat
sort[]Saralash, - — kamayish bo‘yicha: id, -id, price, -price
with[]Bog‘liq ma’lumotlarni qo‘shish: updater.profile, company, product, product.category, product.category.ancestors
pageSahifa raqami, 1 dan
page-sizeSahifadagi yozuvlar soni, ko‘pi bilan 20
http
GET /company/product/price?sort[0]=id&sort[1]=-id&sort[2]=price&sort[3]=-price

Javob · 200 ​

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

Javob maydonlari
MaydonTuriTavsif
dataobject[]Ma'lumotlar
data[].idintegerID
data[].updater_idintegerYangilovchi
data[].company_idintegerKompaniya
data[].product_idintegerMahsulot
data[].source_typestringManba
data[].source_idintegerManba
data[].priceintegerNarxi
data[].currencystringValyuta
data[].min_pricenull
data[].min_price_percentnull
data[].created_atstringYaratilgan
data[].updated_atstringYangilangan
data[].effective_min_priceinteger
data[].price_uzsinteger
data[].effective_min_price_uzsinteger
data[].price_usdnumber
data[].effective_min_price_usdinteger
data[].price_eurnumber
data[].effective_min_price_eurinteger
data[].price_rubnumber
data[].effective_min_price_rubinteger
json
{
    "data": [
        {
            "id": 1,
            "updater_id": 2,
            "company_id": 1,
            "product_id": 1,
            "source_type": "purchase",
            "source_id": 1,
            "price": 1100,
            "currency": "uzs",
            "min_price": null,
            "min_price_percent": null,
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59",
            "effective_min_price": 0,
            "price_uzs": 1100,
            "effective_min_price_uzs": 0,
            "price_usd": 1.1,
            "effective_min_price_usd": 0,
            "price_eur": 1.1,
            "effective_min_price_eur": 0,
            "price_rub": 1.1,
            "effective_min_price_rub": 0
        },
        {
            "id": 2,
            "updater_id": 2,
            "company_id": 1,
            "product_id": 2,
            "source_type": "purchase",
            "source_id": 1,
            "price": 2400,
            "currency": "usd",
            "min_price": null,
            "min_price_percent": null,
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59",
            "effective_min_price": 0,
            "price_uzs": 2400000,
            "effective_min_price_uzs": 0,
            "price_usd": 2400,
            "effective_min_price_usd": 0,
            "price_eur": 2400,
            "effective_min_price_eur": 0,
            "price_rub": 2400,
            "effective_min_price_rub": 0
        }
    ],
    "links": {
        "first": "https://api.wasyt.uz/company/product/price?page=1",
        "last": "https://api.wasyt.uz/company/product/price?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [],
        "path": "https://api.wasyt.uz/company/product/price",
        "per_page": 20,
        "to": 2,
        "total": 2
    }
}

Narxni ko‘rish ​

GET/company/product/price/{model}

Joriy kompaniya tovarining sotuv narxini 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
updater_idintegerYangilovchi
company_idintegerKompaniya
product_idintegerMahsulot
source_typestringManba
source_idintegerManba
priceintegerNarxi
currencystringValyuta
min_pricenull
min_price_percentnull
created_atstringYaratilgan
updated_atstringYangilangan
effective_min_priceinteger
price_uzsinteger
effective_min_price_uzsinteger
price_usdnumber
effective_min_price_usdinteger
price_eurnumber
effective_min_price_eurinteger
price_rubnumber
effective_min_price_rubinteger
json
{
    "id": 1,
    "updater_id": 2,
    "company_id": 1,
    "product_id": 1,
    "source_type": "purchase",
    "source_id": 1,
    "price": 1100,
    "currency": "uzs",
    "min_price": null,
    "min_price_percent": null,
    "created_at": "2026-09-30 12:47:59",
    "updated_at": "2026-09-30 12:47:59",
    "effective_min_price": 0,
    "price_uzs": 1100,
    "effective_min_price_uzs": 0,
    "price_usd": 1.1,
    "effective_min_price_usd": 0,
    "price_eur": 1.1,
    "effective_min_price_eur": 0,
    "price_rub": 1.1,
    "effective_min_price_rub": 0
}