Информация об остатках и оборачиваемости
Метод доступен для моделей: FBY, FBS, Экспресс и DBS.
Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке
- offers-and-cards-management — Управление товарами и карточками
- offers-and-cards-management:read-only — Просмотр товаров и карточек
- all-methods — Полное управление кабинетом
- all-methods:read-only — Просмотр всех данных
Возвращает данные об остатках товаров (для всех моделей) и об оборачиваемости товаров (для модели FBY).
По умолчанию данные по оборачивамости не возращаются
Чтобы они были в ответе, передавайте true в поле withTurnover.
Для модели FBY: информация об остатках может возвращаться с нескольких складов Маркета, у которых будут разные warehouseId. Получить список складов Маркета можно с помощью метода GET v2/warehouses.
Для модели FBS: в ответе может вернуться не только партнерский склад, но и склад возвратов Маркета. Это возможно, если возврат поступил в указанную продавцом точку возвратов и долго не был забран.
Ограничение для параметра limit
Не передавайте значение больше 200.
| ⚙️ Лимит: 100 000 товаров в минуту |
|---|
Request
POST
https://api.partner.market.yandex.ru/v2/campaigns/{campaignId}/offers/stocks
Path parameters
|
Name |
Description |
|
campaignId |
Type: integer Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: |
Query parameters
|
Name |
Description |
|
limit |
Type: integer Количество значений на одной странице. Min value: |
|
page_token |
Type: string Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра Если задан Example: |
Body
application/json
{
"stocksWarehouseId": 1,
"hasStocks": true,
"withTurnover": false,
"archived": true,
"offerIds": [
"example"
]
}
|
Name |
Description |
|
archived |
Type: boolean Фильтр по нахождению в архиве. Передайте |
|
hasStocks |
Type: boolean Только для модели FBY Фильтр по наличию товаров. Используйте только вместе со Передайте |
|
offerIds |
Type: ShopSku[] | null Фильтр по вашим SKU товаров. Возвращается информация об остатках всех переданных SKU, включая товары в архиве. Такой список возвращается только целиком Если вы запрашиваете информацию по конкретным SKU, не заполняйте:
Min items: Max items: Unique items: Example
|
|
stocksWarehouseId |
Type: integer Идентификатор склада. Если параметр указан, возвращаются только товары на переданном складе. Для модели FBY: получить список складов Маркета можно с помощью метода GET v2/warehouses. Min value: |
|
withTurnover |
Type: boolean Только для модели FBY Возвращать ли информацию по оборачиваемости. Значение по умолчанию: Default: |
ShopSku
Ваш SKU — идентификатор товара в вашей системе.
Правила использования SKU:
-
У каждого товара SKU должен быть свой.
-
Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов.
Важно
Пробельные символы в начале и конце значения автоматически удаляются. Например, " SKU123 " и "SKU123" будут обработаны как одинаковые значения.
Что такое SKU и как его назначать
Type: string
Min length: 1
Max length: 255
Pattern: ^(?=.*\S.*)[^\x00-\x08\x0A-\x1f\x7f]{1,255}$
Example: example
Responses
200 OK
Остатки товаров на складах.
Body
application/json
{
"status": "OK",
"result": {
"paging": {
"nextPageToken": "example",
"prevPageToken": "example"
},
"warehouses": [
{
"warehouseId": 0,
"offers": [
null
]
}
]
}
}
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
result
Type: GetWarehouseStocksDTO
Список складов с информацией об остатках на каждом из них.
Example
{ "paging": { "nextPageToken": "example", "prevPageToken": "example" }, "warehouses": [ { "warehouseId": 0, "offers": [ { "offerId": "example", "turnoverSummary": {}, "stocks": [ null ], "updatedAt": "2025-01-01T00:00:00Z" } ] } ] }Example
{ "result": { "paging": { "nextPageToken": "example", "prevPageToken": "example" }, "warehouses": [ { "warehouseId": 0, "offers": [ {} ] } ] } }
ApiResponseStatusType
Тип ответа. Возможные значения:
OK— ошибок нет.ERROR— при обработке запроса произошла ошибка.
Type: string
Enum: OK, ERROR
ApiResponse
Стандартная обертка для ответов сервера.
|
Name |
Description |
|
status |
Type: ApiResponseStatusType Тип ответа. Возможные значения:
Enum: |
Example
{
"status": "OK"
}
ForwardScrollingPagerDTO
Идентификатор следующей страницы.
|
Name |
Description |
|
nextPageToken |
Type: string Идентификатор следующей страницы результатов. Example: |
Example
{
"nextPageToken": "example"
}
ScrollingPagerDTO
Информация о страницах результатов.
Type: object
All of 2 types
-
Type: ForwardScrollingPagerDTO
Идентификатор следующей страницы.
Example
{ "nextPageToken": "example" } -
Type: object
prevPageToken
Type: string
Идентификатор предыдущей страницы результатов.
Example:
exampleExample
{ "prevPageToken": "example" }
Example
{
"nextPageToken": "example",
"prevPageToken": "example"
}
TurnoverType
Оценка оборачиваемости.
| enum | Диапазон оборачиваемости | Комментарий |
|---|---|---|
LOW |
turnoverDays ≥ 120 |
|
ALMOST_LOW |
100 ≤ turnoverDays < 120 |
|
HIGH |
45 ≤ turnoverDays < 100 |
|
VERY_HIGH |
0 ≤ turnoverDays < 45 |
|
NO_SALES |
— | Продаж нет. |
FREE_STORE |
Любое значение. | Платить за хранение товаров этой категории не требуется. |
Type: string
Enum: LOW, ALMOST_LOW, HIGH, VERY_HIGH, NO_SALES, FREE_STORE
TurnoverDTO
Информация об оборачиваемости товара.
Подробнее о хранении и оборачиваемости товаров читайте в Справке Маркета для продавцов.
|
Name |
Description |
|
turnover |
Type: TurnoverType Оценка оборачиваемости. Оценка оборачиваемости. |enum|Диапазон оборачиваемости|Комментарий|
|-|-|-|
| Enum: |
|
turnoverDays |
Type: number Значение в днях. |
Example
{
"turnover": "LOW",
"turnoverDays": 0.5
}
WarehouseStockType
Тип остатков товаров на складе:
-
AVAILABLE(соответствует типу «Доступный к заказу» в отчете «Остатки на складе» в кабинете продавца на Маркете) — товар, доступный для продажи. -
DEFECT(соответствует типу «Брак») — товар с браком. -
EXPIRED(соответствует типу «Просрочен») — товар с истекшим сроком годности. -
FIT(соответствует типу «Годный») — товар, который доступен для продажи или уже зарезервирован. -
FREEZE— товар, который зарезервирован для заказов. -
QUARANTINE(соответствует типу «Карантин») — товар, временно недоступный для продажи (например, товар перемещают из одного помещения склада в другое). -
UTILIZATION— товар, который будет утилизирован.
Type: string
Enum: FIT, FREEZE, AVAILABLE, QUARANTINE, UTILIZATION, DEFECT, EXPIRED
WarehouseStockDTO
Информация об остатках товара.
|
Name |
Description |
|
count |
Type: integer Значение остатков. |
|
type |
Type: WarehouseStockType Тип остатков. Тип остатков товаров на складе:
Enum: |
Example
{
"type": "FIT",
"count": 0
}
WarehouseOfferDTO
Информация об остатках товара.
|
Name |
Description |
|
offerId |
Type: ShopSku Ваш SKU — идентификатор товара в вашей системе. Правила использования SKU:
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов. Важно Пробельные символы в начале и конце значения автоматически удаляются. Например, Что такое SKU и как его назначать Min length: Max length: Pattern: Example: |
|
stocks |
Type: WarehouseStockDTO[] Информация об остатках. Example
|
|
turnoverSummary |
Type: TurnoverDTO Информация об оборачиваемости. Информация об оборачиваемости товара. Подробнее о хранении и оборачиваемости товаров читайте в Справке Маркета для продавцов. Example
|
|
updatedAt |
Type: string<date-time> Дата и время последнего обновления информации об остатках. Формат даты и времени: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"offerId": "example",
"turnoverSummary": {
"turnover": "LOW",
"turnoverDays": 0.5
},
"stocks": [
{
"type": "FIT",
"count": 0
}
],
"updatedAt": "2025-01-01T00:00:00Z"
}
WarehouseOffersDTO
Информация об остатках товаров на складе.
|
Name |
Description |
|
offers |
Type: WarehouseOfferDTO[] Информация об остатках. Example
|
|
warehouseId |
Type: integer Идентификатор склада. Для модели FBY: возвращается идентификатор склада Маркета. Для модели FBS: может возвращаться идентификатор как партнерского склада, так и склада возвратов Маркета. |
Example
{
"warehouseId": 0,
"offers": [
{
"offerId": "example",
"turnoverSummary": {
"turnover": "LOW",
"turnoverDays": 0.5
},
"stocks": [
{
"type": "FIT",
"count": 0
}
],
"updatedAt": "2025-01-01T00:00:00Z"
}
]
}
GetWarehouseStocksDTO
Список складов с информацией об остатках на каждом из них.
|
Name |
Description |
|
warehouses |
Type: WarehouseOffersDTO[] Страница списка складов. Для модели FBY: может содержать несколько складов Маркета. Для модели FBS: может содержать как партнерский склад, так и склад возвратов Маркета. Example
|
|
paging |
Type: ScrollingPagerDTO Информация о страницах результатов. Example
|
Example
{
"paging": {
"nextPageToken": "example",
"prevPageToken": "example"
},
"warehouses": [
{
"warehouseId": 0,
"offers": [
{
"offerId": "example",
"turnoverSummary": {},
"stocks": [
null
],
"updatedAt": "2025-01-01T00:00:00Z"
}
]
}
]
}
400 Bad Request
Запрос содержит неправильные данные. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
ApiErrorDTO
Общий формат ошибки.
|
Name |
Description |
|
code |
Type: string Код ошибки. Example: |
|
message |
Type: string Описание ошибки. Example: |
Example
{
"code": "example",
"message": "example"
}
ApiErrorResponse
Стандартная обертка для ошибок сервера.
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
errors
Type: ApiErrorDTO[] | null
Список ошибок.
Min items:
1Example
[ { "code": "example", "message": "example" } ]Example
{ "errors": [ { "code": "example", "message": "example" } ] }
Example
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
401 Unauthorized
В запросе не указаны данные для авторизации. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
403 Forbidden
Данные для авторизации неверны или доступ к ресурсу запрещен. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
420 Method Failure
Превышено ограничение на доступ к ресурсу. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
500 Internal Server Error
Внутренняя ошибка Маркета. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
No longer supported, please use an alternative and newer version.
Среднее количество дней, за которое товар продается. Подробно об оборачиваемости рассказано в Справке Маркета для продавцов.