Данные по размерам
http
POST /api/v2/stocks-report/products/sizesБаза: https://seller-analytics-api.wildberries.ru · Модуль: analytics · Раздел: История остатков · Документация спецификации ↗
Метод формирует набор данных об остатках по размерам товара.
Возможны случаи:
- Товар имеет размеры и
"includeOffice":true, тогда в ответе будут данные об остатках по каждому из размеров с вложенной детализацией по складам. - Товар имеет размеры и
"includeOffice":false, тогда в ответе будут данные об остатках по каждому из размеров без вложенной детализации по складам. - Товар не имеет размера и
"includeOffice":true, тогда в ответе будет детализация по складам. Без данных об остатках по каждому из размеров. - Товар не имеет размера и
"includeOffice":false, тогда тело ответа будет пустым. Товар не имеет размера, если у него единственный размер с"techSize":"0". В ответах метода получения данных по товарам у таких товаров"hasSizes":false. Данные по складам продавца приходят в агрегированном виде — без детализации по конкретным складам — эти записи будут с"regionName":"Свой склад"или"regionName":"Свой склад СГТ"и"officeName":"".
Данные отчёта обновляются 1 раз в 2 часа.
Лимит запросов на один профиль продавца:
| Тип | Период | Лимит | Интервал | Всплеск |
|---|---|---|---|---|
| Персональный | 1 мин | 3 запроса | 20 сек | 3 запроса |
| Сервисный | 1 мин | 3 запроса | 20 сек | 3 запроса |
| Базовый с секретом | 1 мин | 3 запроса | 20 сек | 3 запроса |
| Базовый | 1 ч | 2 запроса | 30 мин | 1 запрос |
Тело запроса
application/json — схема TableSizeRequest, обязательно
nmIDinteger<int64>(обязательно) — Артикул WBcurrentPeriodPeriodInv(обязательно)startstring(обязательно) — Дата начала периода. Не позднееend. Не ранее 3 месяцев от текущей датыendstring(обязательно) — Дата окончания периода. Не ранее 3 месяцев от текущей даты
stockTypeStockType(обязательно)orderByTableOrderBy(обязательно)fieldTableGroupField(обязательно)modeOrderByMode(обязательно)
includeOfficeboolean(обязательно) — Включить детализацию по складам
Ответы
| Код | Описание | Схема |
|---|---|---|
200 | Успешно | PostV2StocksReportProductsSizesResponse200 |
400 | Неправильный запрос | ErrorObject400 |
401 | Не авторизован | object |
402 | Требуется платёж | object |
403 | Доступ запрещён | ErrorObject403 |
429 | Слишком много запросов | object |
Структура 200:
dataTableSizeResponseofficesTableOfficeItem[]— Множество данных по складамregionNamestring— Страна отгрузкиofficeIDinteger<int64>— ID складаofficeNamestring— Название складаmetricsobject— Метрики складаordersCountinteger<int64>— Заказы, шт.ordersSuminteger<int64>— Заказы, суммаavgOrdersnumber<float64>— Среднее количество заказов в деньavgOrdersByMonthFloatGraphByPeriodItem[]— Среднее количество заказов по месяцамstartstring— Начало месяцаendstring— Конец месяцаvaluenumber<float64>— Среднее количество заказов
buyoutCountinteger<int64>— Выкупы, шт.buyoutSuminteger<int64>— Выкупы, суммаbuyoutPercentinteger<int64>— Процент выкупаstockCountinteger<int64>— Остатки на текущий день, шт.stockSuminteger<int64>— Стоимость остатков на текущий деньsaleRateobject— Оборачиваемость текущих остатков. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительностьdaysinteger<int32>— Количество днейhoursinteger<int32>— Количество часов
avgStockTurnoverobject— Оборачиваемость средних остатков. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительностьdaysinteger<int32>— Количество днейhoursinteger<int32>— Количество часов
toClientCountinteger<int64>— В пути к клиенту, шт.fromClientCountinteger<int64>— В пути от клиента, шт.officeMissingTimeobject— Время отсутствия товара на складе. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительность 4."hours":-4— отсутствие в течение всего периодаdaysinteger<int32>— Количество днейhoursinteger<int32>— Количество часов
lostOrdersCountnumber<float64>— Упущенные заказы, шт. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostOrdersSumnumber<float64>— Упущенные заказы, сумма. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostBuyoutsCountnumber<float64>— Упущенные выкупы, шт. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostBuyoutsSumnumber<float64>— Упущенные выкупы, сумма. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значение
sizesobject[]— Множество данных по размерам товараnamestring— Название размераchrtIDinteger<int64>— ID размераofficesTableOfficeItem[]— СкладыregionNamestring— Страна отгрузкиofficeIDinteger<int64>— ID складаofficeNamestring— Название складаmetricsobject— Метрики складаordersCountinteger<int64>— Заказы, шт.ordersSuminteger<int64>— Заказы, суммаavgOrdersnumber<float64>— Среднее количество заказов в деньavgOrdersByMonthFloatGraphByPeriodItem[]— Среднее количество заказов по месяцамstartstring— Начало месяца- …
endstring— Конец месяца- …
valuenumber<float64>— Среднее количество заказов- …
buyoutCountinteger<int64>— Выкупы, шт.buyoutSuminteger<int64>— Выкупы, суммаbuyoutPercentinteger<int64>— Процент выкупаstockCountinteger<int64>— Остатки на текущий день, шт.stockSuminteger<int64>— Стоимость остатков на текущий деньsaleRateobject— Оборачиваемость текущих остатков. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительностьdaysinteger<int32>— Количество дней- …
hoursinteger<int32>— Количество часов- …
avgStockTurnoverobject— Оборачиваемость средних остатков. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительностьdaysinteger<int32>— Количество дней- …
hoursinteger<int32>— Количество часов- …
toClientCountinteger<int64>— В пути к клиенту, шт.fromClientCountinteger<int64>— В пути от клиента, шт.officeMissingTimeobject— Время отсутствия товара на складе. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительность 4."hours":-4— отсутствие в течение всего периодаdaysinteger<int32>— Количество дней- …
hoursinteger<int32>— Количество часов- …
lostOrdersCountnumber<float64>— Упущенные заказы, шт. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostOrdersSumnumber<float64>— Упущенные заказы, сумма. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostBuyoutsCountnumber<float64>— Упущенные выкупы, шт. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostBuyoutsSumnumber<float64>— Упущенные выкупы, сумма. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значение
metricsobject— Метрики размераordersCountinteger<int64>— Заказы, шт.ordersSuminteger<int64>— Заказы, суммаavgOrdersnumber<float64>— Среднее количество заказов в деньavgOrdersByMonthFloatGraphByPeriodItem[]— Среднее количество заказов по месяцамstartstring— Начало месяцаendstring— Конец месяцаvaluenumber<float64>— Среднее количество заказов
buyoutCountinteger<int64>— Выкупы, шт.buyoutSuminteger<int64>— Выкупы, суммаbuyoutPercentinteger<int64>— Процент выкупаstockCountinteger<int64>— Остатки на текущий день, шт.stockSuminteger<int64>— Стоимость остатков на текущий деньsaleRateobject— Оборачиваемость текущих остатков. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительностьdaysinteger<int32>— Количество днейhoursinteger<int32>— Количество часов
avgStockTurnoverobject— Оборачиваемость средних остатков. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительностьdaysinteger<int32>— Количество днейhoursinteger<int32>— Количество часов
toClientCountinteger<int64>— В пути к клиенту, шт.fromClientCountinteger<int64>— В пути от клиента, шт.officeMissingTimeobject— Время отсутствия товара на складе. Особые случаи: 1."hours":-1— бесконечная длительность 2."hours":-2— нулевая длительность 3."hours":-3— нерассчитанная длительность 4."hours":-4— отсутствие в течение всего периодаdaysinteger<int32>— Количество днейhoursinteger<int32>— Количество часов
lostOrdersCountnumber<float64>— Упущенные заказы, шт. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostOrdersSumnumber<float64>— Упущенные заказы, сумма. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostBuyoutsCountnumber<float64>— Упущенные выкупы, шт. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеlostBuyoutsSumnumber<float64>— Упущенные выкупы, сумма. Особые случаи: 1. Значение меньше0и не равно-2— значение не рассчитано 2. Значение-2— нулевое значениеcurrentPriceobject— Текущая ценаminPriceinteger<int64>— Минимальная цена продавца со скидкой продавца (без учёта скидки WB Клуба)maxPriceinteger<int64>— Максимальная цена продавца со скидкой продавца (без учёта скидки WB Клуба)
currencyCurrency
Структура 400:
titlestring— Заголовок ошибкиdetailstring— Детали ошибкиrequestIdstring— Уникальный ID запросаoriginstring— ID внутреннего сервиса WB
Структура 401:
titlestring— Заголовок ошибкиdetailstring— Детали ошибкиcodestring— Внутренний код ошибкиrequestIdstring— Уникальный ID запросаoriginstring— ID внутреннего сервиса WBstatusnumber— HTTP статус-кодstatusTextstring— Расшифровка HTTP статус-кодаtimestampstring— Дата и время запроса
Структура 402:
titlestring— Заголовок ошибкиdetailstring— Детали ошибки. Ошибка возвращается только сервисам из Каталога решений для бизнеса
Структура 403:
titlestring— Заголовок ошибкиdetailstring— Детали ошибкиrequestIdstring— Уникальный ID запросаoriginstring— ID внутреннего сервиса WB
Структура 429:
titlestring— Заголовок ошибкиdetailstring— Детали ошибкиcodestring— Внутренний код ошибкиrequestIdstring— Уникальный ID запросаoriginstring— ID внутреннего сервиса WBstatusnumber— HTTP статус-кодstatusTextstring— Расшифровка HTTP статус-кодаtimestampstring— Дата и время запроса
Примеры вызова
Аргументы показаны именами параметров — подставьте свои значения. Языки, в клиенте которых этой операции нет, не показаны.
python
from wb_api_client.analytics import Configuration, ApiClient
from wb_api_client.analytics.api import AnalyticsApi
cfg = Configuration(access_token="<ваш JWT WB>")
api = AnalyticsApi(ApiClient(cfg))
result = api.post_v2_stocks_report_products_sizes(table_size_request=...)
print(result)ts
import {
Configuration,
AnalyticsApi,
} from "@valeryverkhoturov/wb-api-client/analytics";
const cfg = new Configuration({});
cfg.setAccessToken("<ваш JWT WB>");
const api = new AnalyticsApi(cfg);
const { data } = await api.postV2StocksReportProductsSizes(tableSizeRequest);
console.log(data);go
import (
"context"
"fmt"
wbanalytics "github.com/ValeryVerkhoturov/wb-api-client-go/analytics"
)
cfg := wbanalytics.NewConfiguration()
cfg.SetAccessToken("<ваш JWT WB>")
client := wbanalytics.NewAPIClient(cfg)
result, _, err := client.AnalyticsAPI.PostV2StocksReportProductsSizes(context.Background()).TableSizeRequest(tableSizeRequest).Execute()
if err != nil {
panic(err)
}
fmt.Printf("%+v\n", result)java
import io.github.valeryverkhoturov.wbapi.analytics.ApiClient;
import io.github.valeryverkhoturov.wbapi.analytics.SecretString;
import io.github.valeryverkhoturov.wbapi.analytics.api.AnalyticsApi;
ApiClient client = new ApiClient();
client.setAccessToken(new SecretString("<ваш JWT WB>"));
AnalyticsApi api = new AnalyticsApi(client);
System.out.println(api.postV2StocksReportProductsSizes(tableSizeRequest));php
use ValeryVerkhoturov\WbApiClient\Analytics\Configuration;
use ValeryVerkhoturov\WbApiClient\Analytics\SecretString;
use ValeryVerkhoturov\WbApiClient\Analytics\Api\AnalyticsApi;
use GuzzleHttp\Client;
$config = (new Configuration())
->setAccessTokenSecret(new SecretString('<ваш JWT WB>'));
$api = new AnalyticsApi(new Client(), $config);
print_r($api->postV2StocksReportProductsSizes($table_size_request));bsl
#Использовать "wb-api-client"
Настройки = Новый Конфигурация();
Настройки.УстановитьТокен("<ваш JWT WB>");
Клиент = Новый AnalyticsApi(Настройки);
Сообщить(Клиент.PostV2StocksReportProductsSizes(Тело).Тело);csharp
using ValeryVerkhoturov.WbApiClient.Analytics.Api;
using ValeryVerkhoturov.WbApiClient.Analytics.Client;
var config = new Configuration();
config.AccessTokenSecret = new SecretString("<ваш JWT WB>");
var api = new AnalyticsApi(config);
Console.WriteLine(api.PostV2StocksReportProductsSizes(tableSizeRequest));rust
use wb_api_client::analytics::apis::{configuration::Configuration, analytics_api};
#[tokio::main]
async fn main() {
let mut cfg = Configuration::new();
cfg.set_access_token("<ваш JWT WB>");
let result = analytics_api::post_v2_stocks_report_products_sizes(&cfg, table_size_request).await;
println!("{:#?}", result);
}