Skip to content

Товары складов ​

Складские позиции: товар каталога на конкретном складе с остатком, ценами и статусом. Здесь же раздел «Все товары» (весь каталог, включая ещё не оприходованные товары), поиск по PLU и движение позиции.

МетодАдресНазначение
GET/company/stock/product/catalog/statsШапка раздела «Все товары»
GET/company/stock/product/catalogСписок «Все товары»
GET/company/stock/product/plu/{plu}Найти позиции по PLU
GET/company/stock/product/{model}/movement-historyДвижение позиции
GET/company/stock/productСписок складских позиций
GET/company/stock/product/{model}Складская позиция

Шапка раздела «Все товары» ​

GET/company/stock/product/catalog/stats

Для той же отфильтрованной выборки, что и список каталога, возвращает branches (вкладки филиалов с числом позиций), cards (число товаров, стоимость остатка по валютам закупки, неликвид, нулевой остаток, признак «Свободная цена (все)») и counts — счётчики статусных вкладок.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Ответ · 200 ​

Поля ответа
ПолеТипОписание
branchesobject
branches.totalintegerВсего записей
branches.itemsobject[]Состав
branches.items[].idintegerID
branches.items[].namestringНазвание
branches.items[].countintegerКоличество
cardsobject
cards.products_countinteger
cards.stock_amountobject
cards.stock_amount.uzsinteger
cards.stock_amount.usdinteger
cards.illiquid_countinteger
cards.zero_stock_countinteger
cards.free_price_allboolean
countsobject
counts.allinteger
counts.favoriteinteger
counts.activeinteger
counts.inactiveinteger
counts.in_stockinteger
counts.low_stockinteger
counts.zero_stockinteger
counts.illiquidinteger
json
{
    "branches": {
        "total": 2,
        "items": [
            {
                "id": 1,
                "name": "Company 1",
                "count": 2
            },
            {
                "id": 2,
                "name": "Company 1-1",
                "count": 0
            }
        ]
    },
    "cards": {
        "products_count": 3,
        "stock_amount": {
            "uzs": 1000,
            "usd": 4260
        },
        "illiquid_count": 0,
        "zero_stock_count": 1,
        "free_price_all": false
    },
    "counts": {
        "all": 3,
        "favorite": 0,
        "active": 2,
        "inactive": 0,
        "in_stock": 0,
        "low_stock": 2,
        "zero_stock": 1,
        "illiquid": 0
    }
}

Список «Все товары» ​

GET/company/stock/product/catalog

Весь каталог доступных компаний: товар со складской позицией или одной строкой без склада, пока его не оприходовали. Избранные товары всегда в начале; фильтр filter[status] (favorite, active, in_stock, low_stock, zero_stock, illiquid и др.). format=excel или format=csv отдаёт выгрузку.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры запроса ​

ПараметрОписание
filter[id]ID — точное значение
filter[company_id]Компания — одно значение или список filter[company_id][]
filter[stock_id]Склад — точное значение
filter[product_id]Продукт — точное значение
filter[quantity]Количество — диапазон: [0] — от, [1] — до
filter[product.category_id]Категория — точное значение (с учётом вложенных)
filter[product.brand_id]Бренд — точное значение
filter[product.name]Название — поиск по части строки
filter[product.barcode]Штрих-код — точное значение
filter[product.is_free_price]Продажа по свободной цене — точное значение
filter[product.created_at]Создано — период: [0] — с, [1] — по (Y-m-d)
filter[common]Общий — точное значение (с учётом вложенных)
sort[]Сортировка, - — по убыванию: id, -id, product_id, -product_id
with[]Подгрузить связи: company, stock, product, product.parent, product.category.ancestors, product.brand, product.unit, product.price, product.last_purchase_product, product_price, last_purchase_at, last_purchase_price, available_quantity, reserved_quantity, status
pageНомер страницы, с 1
page-sizeЗаписей на странице, не больше 20
http
GET /company/stock/product/catalog?with[0]=stock&with[1]=product&with[2]=status

Ответ · 200 ​

Постраничный ответ: записи в data[], пагинация в links и meta.

Поля ответа
ПолеТипОписание
dataobject[]Данные
data[].idintegerID
data[].company_idintegerКомпания
data[].stock_idnullСклад
data[].product_idintegerПродукт
data[].quantityintegerКоличество
data[].created_atstringСоздано
data[].updated_atstringОбновлено
data[].statusstringСтатус
data[].days_without_movementintegerБез движения
data[].last_movement_atnullПоследнее движение
data[].stocknull
data[].productobject
data[].product.idintegerID
data[].product.parent_idnullРодитель
data[].product.creator_idintegerСоздатель
data[].product.company_idintegerКомпания
data[].product.category_idintegerКатегория
data[].product.brand_idintegerБренд
data[].product.unit_idintegerЕдиница измерения
data[].product.namestringНазвание
data[].product.full_textstringПолный текст
data[].product.plustringАртикул (PLU)
data[].product.descriptionstringОписание
data[].product.is_free_pricebooleanПродажа по свободной цене
data[].product.is_favoriteboolean
data[].product.min_quantitynull
data[].product.barcodestringШтрих-код
data[].product.images_listarrayИзображения
data[].product.images_list_thumbsarray
data[].product.created_atstringСоздано
data[].product.updated_atstringОбновлено
data[].product.is_deletedboolean
json
{
    "data": [
        {
            "id": -3,
            "company_id": 1,
            "stock_id": null,
            "product_id": 3,
            "quantity": 0,
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59",
            "status": "zero_stock",
            "days_without_movement": 0,
            "last_movement_at": null,
            "stock": null,
            "product": {
                "id": 3,
                "parent_id": null,
                "creator_id": 2,
                "company_id": 1,
                "category_id": 5,
                "brand_id": 1,
                "unit_id": 2,
                "name": "Product 2",
                "full_text": "Product 2",
                "plu": "0002",
                "description": "Description 2",
                "is_free_price": false,
                "is_favorite": false,
                "min_quantity": null,
                "barcode": "0000000000002",
                "images_list": [],
                "images_list_thumbs": [],
                "created_at": "2026-09-30 12:47:59",
                "updated_at": "2026-09-30 12:47:59",
                "is_deleted": false
            }
        },
        {
            "id": 2,
            "company_id": 1,
            "stock_id": 1,
            "product_id": 2,
            "quantity": 2,
            "sources": [
                {
                    "source_type": "purchase",
                    "source_id": 1,
                    "source_product_id": 2,
                    "quantity": 0.7,
                    "purchase_price": 2000,
                    "purchase_currency": "usd",
                    "created_at": "2026-09-30 12:47:58",
                    "purchase_price_uzs": 2000000,
                    "purchase_price_usd": 2000,
                    "purchase_price_eur": 2000,
                    "purchase_price_rub": 2000
                },
                {
                    "source_type": "purchase",
                    "source_id": 2,
                    "source_product_id": 3,
                    "quantity": 1.3,
                    "purchase_price": 2200,
                    "purchase_currency": "usd",
                    "created_at": "2026-09-30 12:47:59",
                    "purchase_price_uzs": 2200000,
                    "purchase_price_usd": 2200,
                    "purchase_price_eur": 2200,
                    "purchase_price_rub": 2200
                }
            ],
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59",
            "status": "low_stock",
            "days_without_movement": 0,
            "last_movement_at": "2026-09-30 12:47:59",
            "stock": {
                "id": 1,
                "creator_id": 2,
                "company_id": 1,
                "name": "Stock 1",
                "is_available": true,
                "created_at": "2026-09-30 12:47:59",
                "updated_at": "2026-09-30 12:47:59",
                "is_deleted": false
            },
            "product": {
                "id": 2,
                "parent_id": 1,
                "creator_id": 1,
                "company_id": 1,
                "category_id": 4,
                "brand_id": 1,
                "unit_id": 1,
                "name": "Product 1-1",
                "full_text": "Product 1-1 full text",
                "plu": "0011",
                "description": "Description 1-1",
                "is_free_price": false,
                "is_favorite": false,
                "min_quantity": null,
                "barcode": "0000000000011",
                "images_list": [
                    "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png",
                    "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png"
                ],
                "images_list_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"
                        }
                    },
                    {
                        "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"
                        }
                    }
                ],
                "created_at": "2026-09-30 12:47:59",
                "updated_at": "2026-09-30 12:53:18",
                "is_deleted": false
            }
        }
    ],
    "links": {
        "first": "https://api.wasyt.uz/company/stock/product/catalog?page=1",
        "last": "https://api.wasyt.uz/company/stock/product/catalog?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [],
        "path": "https://api.wasyt.uz/company/stock/product/catalog",
        "per_page": 20,
        "to": 3,
        "total": 3
    }
}

Найти позиции по PLU ​

GET/company/stock/product/plu/{plu}

Складские позиции товара с данным PLU на всех складах или только на filter[stock_id]. Если ничего не найдено — 404.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры пути ​

ПараметрОписание
pluАртикул (PLU)

Параметры запроса ​

ПараметрОписание
with[]Подгрузить связи
http
GET /company/stock/product/plu/0001?with[0]=product&with[1]=product.unit&with[2]=product_price&with[3]=stock

Ответ · 200 ​

Поля ответа
ПолеТипОписание
dataobject[]Данные
data[].idintegerID
data[].company_idintegerКомпания
data[].stock_idintegerСклад
data[].product_idintegerПродукт
data[].quantityintegerКоличество
data[].sourcesobject[]
data[].sources[].source_typestringИсточник
data[].sources[].source_idintegerИсточник
data[].sources[].source_product_idinteger
data[].sources[].quantityintegerКоличество
data[].sources[].purchase_priceintegerЦена при покупке
data[].sources[].purchase_currencystringВалюта при покупке
data[].sources[].created_atstringСоздано
data[].sources[].purchase_price_uzsinteger
data[].sources[].purchase_price_usdinteger
data[].sources[].purchase_price_eurinteger
data[].sources[].purchase_price_rubinteger
data[].created_atstringСоздано
data[].updated_atstringОбновлено
data[].product_priceobject
data[].product_price.idintegerID
data[].product_price.updater_idintegerОбновитель
data[].product_price.company_idintegerКомпания
data[].product_price.product_idintegerПродукт
data[].product_price.source_typestringИсточник
data[].product_price.source_idintegerИсточник
data[].product_price.priceintegerЦена
data[].product_price.currencystringВалюта
data[].product_price.min_pricenull
data[].product_price.min_price_percentnull
data[].product_price.created_atstringСоздано
data[].product_price.updated_atstringОбновлено
data[].productobject
data[].product.idintegerID
data[].product.parent_idnullРодитель
data[].product.creator_idintegerСоздатель
data[].product.company_idintegerКомпания
data[].product.category_idintegerКатегория
data[].product.brand_idintegerБренд
data[].product.unit_idintegerЕдиница измерения
data[].product.namestringНазвание
data[].product.full_textstringПолный текст
data[].product.plustringАртикул (PLU)
data[].product.descriptionstringОписание
data[].product.is_free_pricebooleanПродажа по свободной цене
data[].product.is_favoriteboolean
data[].product.min_quantitynull
data[].product.barcodestringШтрих-код
data[].product.images_listarrayИзображения
data[].product.images_list_thumbsobject[]
data[].product.images_list_thumbs[].widen_100object
data[].product.images_list_thumbs[].widen_100.rawstring
data[].product.images_list_thumbs[].widen_100.webpstring
data[].product.images_list_thumbs[].widen_500object
data[].product.images_list_thumbs[].widen_500.rawstring
data[].product.images_list_thumbs[].widen_500.webpstring
data[].product.images_list_thumbs[].originalobject
data[].product.images_list_thumbs[].original.rawstring
data[].product.images_list_thumbs[].original.webpstring
data[].product.created_atstringСоздано
data[].product.updated_atstringОбновлено
data[].product.is_deletedboolean
data[].product.unitobject
data[].product.unit.idintegerID
data[].product.unit.company_idintegerКомпания
data[].product.unit.source_idintegerИсточник
data[].product.unit.nameobjectНазвание
data[].product.unit.name.ozstring
data[].product.unit.name.rustring
data[].product.unit.name.uzstring
data[].product.unit.accuracyintegerКол-во знаков после запятой
data[].product.unit.created_atstringСоздано
data[].product.unit.updated_atstringОбновлено
data[].product.unit.is_deletedboolean
data[].stockobject
data[].stock.idintegerID
data[].stock.creator_idintegerСоздатель
data[].stock.company_idintegerКомпания
data[].stock.namestringНазвание
data[].stock.is_availableboolean
data[].stock.created_atstringСоздано
data[].stock.updated_atstringОбновлено
data[].stock.is_deletedboolean
json
{
    "data": [
        {
            "id": 1,
            "company_id": 1,
            "stock_id": 1,
            "product_id": 1,
            "quantity": 1,
            "sources": [
                {
                    "source_type": "purchase",
                    "source_id": 1,
                    "source_product_id": 1,
                    "quantity": 1,
                    "purchase_price": 1000,
                    "purchase_currency": "uzs",
                    "created_at": "2026-09-30 12:47:59",
                    "purchase_price_uzs": 1000,
                    "purchase_price_usd": 1,
                    "purchase_price_eur": 1,
                    "purchase_price_rub": 1
                }
            ],
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59",
            "product_price": {
                "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-30T12:47:59",
                "updated_at": "2026-09-30T12:47:59"
            },
            "product": {
                "id": 1,
                "parent_id": null,
                "creator_id": 1,
                "company_id": 1,
                "category_id": 4,
                "brand_id": 1,
                "unit_id": 1,
                "name": "Product 1",
                "full_text": "Product 1",
                "plu": "0001",
                "description": "Description 1",
                "is_free_price": false,
                "is_favorite": false,
                "min_quantity": null,
                "barcode": "0000000000001",
                "images_list": [
                    "https://api-minio.icangroup.uz/wasyt/test_data/images/1.png",
                    "https://api-minio.icangroup.uz/wasyt/test_data/images/2.png"
                ],
                "images_list_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"
                        }
                    },
                    {
                        "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"
                        }
                    }
                ],
                "created_at": "2026-09-30 12:47:59",
                "updated_at": "2026-09-30 12:53:30",
                "is_deleted": false,
                "unit": {
                    "id": 1,
                    "company_id": 1,
                    "source_id": 3,
                    "name": {
                        "oz": "Unit 1 oz",
                        "ru": "Unit 1 ru",
                        "uz": "Unit 1 uz"
                    },
                    "accuracy": 4,
                    "created_at": "2026-09-30 12:47:59",
                    "updated_at": "2026-09-30 12:47:59",
                    "is_deleted": false
                }
            },
            "stock": {
                "id": 1,
                "creator_id": 2,
                "company_id": 1,
                "name": "Stock 1",
                "is_available": true,
                "created_at": "2026-09-30 12:47:59",
                "updated_at": "2026-09-30 12:47:59",
                "is_deleted": false
            }
        }
    ]
}

Движение позиции ​

GET/company/stock/product/{model}/movement-history

История движения складской позиции: product (текущий остаток), summary (приход, расход, остаток и число операций за всё время) и постраничный журнал data от новых к старым с остатком после каждой операции (продажи, возвраты и обмены, приходы, списания, перемещения).

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры пути ​

ПараметрОписание
modelID записи

Ответ · 200 ​

Постраничный ответ: записи в data[], пагинация в links и meta.

Поля ответа
ПолеТипОписание
dataobject[]Данные
data[].idstringID
data[].datestringДата
data[].typestringТип
data[].document_typestring
data[].document_idinteger
data[].document_codestring
data[].quantityintegerКоличество
data[].remainderintegerОстаток
json
{
    "product": {
        "id": 22,
        "product_id": 82,
        "stock_id": 1,
        "company_id": 1,
        "quantity": 50
    },
    "summary": {
        "income": 65,
        "outcome": 12,
        "remainder": 50,
        "operations_count": 6
    },
    "data": [
        {
            "id": "transfer-14-transfer_in-f4c92f675c24a85d000df182754c6b05",
            "date": "2030-01-05 12:00:00",
            "type": "transfer_in",
            "document_type": "transfer",
            "document_id": 14,
            "document_code": "TI-54808616",
            "quantity": 3,
            "remainder": 50
        },
        {
            "id": "transfer-13-transfer_out-79fbf3c142eb3c9f624a3dd3373358f1",
            "date": "2030-01-04 11:00:00",
            "type": "transfer_out",
            "document_type": "transfer",
            "document_id": 13,
            "document_code": "TO-54808616",
            "quantity": -4,
            "remainder": 47
        }
    ],
    "meta": {
        "current_page": 1,
        "last_page": 1,
        "per_page": 10,
        "total": 6,
        "from": 1,
        "to": 6
    }
}

Список складских позиций ​

GET/company/stock/product

Постраничный список позиций складов доступных компаний с блоком total: общее количество, стоимость по закупке и по цене продажи в разрезе валют. Поиск filter[common] по названию, штрихкоду и PLU; дополнительные колонки через with[] (last_purchase_at, last_purchase_price, available_quantity, status и др.). format=excel или format=csv отдаёт выгрузку.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры запроса ​

ПараметрОписание
filter[id]ID — точное значение
filter[company_id]Компания — одно значение или список filter[company_id][]
filter[stock_id]Склад — точное значение
filter[product_id]Продукт — точное значение
filter[quantity]Количество — диапазон: [0] — от, [1] — до
filter[product.category_id]Категория — точное значение (с учётом вложенных)
filter[product.brand_id]Бренд — точное значение
filter[product.name]Название — поиск по части строки
filter[product.barcode]Штрих-код — точное значение
filter[product.is_free_price]Продажа по свободной цене — точное значение
filter[product.created_at]Создано — период: [0] — с, [1] — по (Y-m-d)
filter[common]Общий — точное значение (с учётом вложенных)
sort[]Сортировка, - — по убыванию: id, -id
with[]Подгрузить связи: company, stock, product, product.parent, product.category.ancestors, product.brand, product.unit, product.price, product.last_purchase_product, product_price, last_purchase_at, last_purchase_price, available_quantity, reserved_quantity, status
pageНомер страницы, с 1
page-sizeЗаписей на странице, не больше 20
http
GET /company/stock/product?filter[stock_id]=1&filter[common]=0000000000011

Ответ · 200 ​

Постраничный ответ: записи в data[], пагинация в links и meta.

Поля ответа
ПолеТипОписание
dataobject[]Данные
data[].idintegerID
data[].company_idintegerКомпания
data[].stock_idintegerСклад
data[].product_idintegerПродукт
data[].quantityintegerКоличество
data[].sourcesobject[]
data[].sources[].source_typestringИсточник
data[].sources[].source_idintegerИсточник
data[].sources[].source_product_idinteger
data[].sources[].quantitynumberКоличество
data[].sources[].purchase_priceintegerЦена при покупке
data[].sources[].purchase_currencystringВалюта при покупке
data[].sources[].created_atstringСоздано
data[].sources[].purchase_price_uzsinteger
data[].sources[].purchase_price_usdinteger
data[].sources[].purchase_price_eurinteger
data[].sources[].purchase_price_rubinteger
data[].created_atstringСоздано
data[].updated_atstringОбновлено
json
{
    "data": [
        {
            "id": 2,
            "company_id": 1,
            "stock_id": 1,
            "product_id": 2,
            "quantity": 2,
            "sources": [
                {
                    "source_type": "purchase",
                    "source_id": 1,
                    "source_product_id": 2,
                    "quantity": 0.7,
                    "purchase_price": 2000,
                    "purchase_currency": "usd",
                    "created_at": "2026-09-30 12:47:58",
                    "purchase_price_uzs": 2000000,
                    "purchase_price_usd": 2000,
                    "purchase_price_eur": 2000,
                    "purchase_price_rub": 2000
                },
                {
                    "source_type": "purchase",
                    "source_id": 2,
                    "source_product_id": 3,
                    "quantity": 1.3,
                    "purchase_price": 2200,
                    "purchase_currency": "usd",
                    "created_at": "2026-09-30 12:47:59",
                    "purchase_price_uzs": 2200000,
                    "purchase_price_usd": 2200,
                    "purchase_price_eur": 2200,
                    "purchase_price_rub": 2200
                }
            ],
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59"
        }
    ],
    "links": {
        "first": "https://api.wasyt.uz/company/stock/product?page=1",
        "last": "https://api.wasyt.uz/company/stock/product?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [],
        "path": "https://api.wasyt.uz/company/stock/product",
        "per_page": 20,
        "to": 1,
        "total": 1
    },
    "total": {
        "quantity": "2.00000000",
        "purchase_amount": {
            "usd": "4260.0"
        },
        "sale_amount": {
            "usd": "4800.0000000000"
        }
    }
}

Складская позиция ​

GET/company/stock/product/{model}

Одна складская позиция по ID вместе с запрошенными связями и колонками.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры пути ​

ПараметрОписание
modelID записи

Ответ · 200 ​

Поля ответа
ПолеТипОписание
idintegerID
company_idintegerКомпания
stock_idintegerСклад
product_idintegerПродукт
quantityintegerКоличество
sourcesobject[]
sources[].source_typestringИсточник
sources[].source_idintegerИсточник
sources[].source_product_idinteger
sources[].quantityintegerКоличество
sources[].purchase_priceintegerЦена при покупке
sources[].purchase_currencystringВалюта при покупке
sources[].created_atstringСоздано
sources[].purchase_price_uzsinteger
sources[].purchase_price_usdinteger
sources[].purchase_price_eurinteger
sources[].purchase_price_rubinteger
created_atstringСоздано
updated_atstringОбновлено
json
{
    "id": 1,
    "company_id": 1,
    "stock_id": 1,
    "product_id": 1,
    "quantity": 1,
    "sources": [
        {
            "source_type": "purchase",
            "source_id": 1,
            "source_product_id": 1,
            "quantity": 1,
            "purchase_price": 1000,
            "purchase_currency": "uzs",
            "created_at": "2026-09-30 12:47:59",
            "purchase_price_uzs": 1000,
            "purchase_price_usd": 1,
            "purchase_price_eur": 1,
            "purchase_price_rub": 1
        }
    ],
    "created_at": "2026-09-30 12:47:59",
    "updated_at": "2026-09-30 12:47:59"
}