Аналитика и данные (analytics)
В данном разделе доступны методы получения:
В данном разделе доступны методы получения:
Методы получения статистики продвижения, в частности:
Статистика кампаний{{ /adv/v2/fullstats }}
Метод формирует статистику для всех кампаний, независимо от типа.
Данные вернутся для кампаний в статусах:
7
— завершена9
— приостановлена продавцом11
— пауза из-за расхода бюджета
Если в запросе указан только ID кампании, по ней вернутся данные только за последние сутки.
dates
либо interval
, но не оба сразу.
Authorizations:
Request Body schema: application/jsonrequired
id | integer ID кампании |
dates | Array of strings <date> [ items <date > ] Даты, за которые необходимо выдать информацию. |
Responses
Request samples
- Payload
Запрос с датами
[- {
- "id": 8960367,
- "dates": [
- "2023-10-07",
- "2023-10-06"
]
}, - {
- "id": 9876543,
- "dates": [
- "2023-10-07",
- "2023-12-06"
]
}
]
Response samples
- 200
- 400
- 401
- 429
Ответ при запросе с полем date
[- {
- "views": 1052,
- "clicks": 2,
- "ctr": 0.19,
- "cpc": 0.09,
- "sum": 177.7,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "dates": [
- "2023-10-07",
- "2023-10-06"
], - "days": [
- {
- "date": "2023-10-06T03:00:00+03:00",
- "views": 414,
- "clicks": 1,
- "ctr": 0.24,
- "cpc": 70,
- "sum": 70,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "apps": [
- {
- "views": 228,
- "clicks": 0,
- "ctr": 0,
- "cpc": 0,
- "sum": 38.71,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "nm": [
- {
- "views": 25,
- "clicks": 0,
- "ctr": 0,
- "cpc": 0,
- "sum": 4,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "name": "Тапочки",
- "nmId": 111111111111
}
], - "appType": 1
}
]
}
], - "boosterStats": [
- {
- "date": "2023-10-07T00:00:00Z",
- "nm": 170095908,
- "avg_position": 348
}
], - "advertId": 10524818
}
]
Статистика автоматической кампании по кластерам фраз{{ /adv/v2/auto/stat-words }}
Метод формирует кластеры ключевых — то есть, наборы похожих — фраз из поисковой строки, если по ним хотя бы один раз были показаны товары из кампании. В ответе метода также указано количество показов этих товаров.
Информация обновляется каждые 15 минут.
Authorizations:
query Parameters
id required | integer Example: id=1234 ID кампании |
Responses
Response samples
- 200
- 400
- 401
- 429
{- "excluded": [
- "Samsung",
- "Xiaomi"
], - "clusters": [
- {
- "cluster": "Телефон",
- "count": 100,
- "keywords": [
- "Телефон",
- "Мобильный телефон"
]
}
]
}
Статистика поисковой кампании по ключевым фразам{{ /adv/v1/stat/words }}
Метод формирует статистику кампании типа Поиск по ключевым фразам из поисковой строки: количество просмотров товара и затраты по одной ключевой фразе.
Информация обновляется каждые 30 минут.
Authorizations:
query Parameters
id required | integer Example: id=1 ID кампании |
Responses
Response samples
- 200
- 401
- 429
{- "words": {
- "phrase": [ ],
- "strong": [ ],
- "excluded": [ ],
- "pluse": [
- "детское постельное белье для мальчика 1.5"
], - "keywords": [
- {
- "keyword": "постельное белье 1.5",
- "count": 772
}
], - "fixed": true
}, - "stat": [
- {
- "advertId": 7703570,
- "keyword": "Всего по кампании",
- "advertName": "",
- "campaignName": "Бельё",
- "begin": "2023-07-03T15:15:38.287441+03:00",
- "end": "2023-07-03T15:15:38.287441+03:00",
- "views": 1846,
- "clicks": 73,
- "frq": 1.03,
- "ctr": 3.95,
- "cpc": 7.88,
- "duration": 769159,
- "sum": 575.6
}, - {
- "advertId": 7703570,
- "keyword": "постельное белье 1.5 детское",
- "advertName": "",
- "campaignName": "Бельё",
- "begin": "2023-07-03T15:15:38.287441+03:00",
- "end": "2023-07-03T15:15:38.287441+03:00",
- "views": 1846,
- "clicks": 73,
- "frq": 1.03,
- "ctr": 3.95,
- "cpc": 7.88,
- "duration": 769159,
- "sum": 575.6
}
]
}
Статистика по ключевым фразам{{ /adv/v0/stats/keywords }}
Метод формирует статистику по ключевым фразам из поисковой строки: количество просмотров товара и затраты по одной ключевой фразе. Подходит для автоматических кампаний и Аукционов.
Статистика формируется за каждый день, когда кампания была активна. В одном запросе можно получить данные максимум за 7 дней.
Данные обновляются каждый час.
Authorizations:
query Parameters
advert_id required | integer Example: advert_id=123456789 ID кампании |
from required | string <date> Example: from=2024-08-10 Начало периода |
to required | string <date> Example: to=2024-08-12 Конец периода |
Responses
Response samples
- 200
- 400
- 401
- 429
{- "keywords": [
- {
- "date": "2024-08-12",
- "stats": [
- {
- "clicks": 68,
- "ctr": 3.73,
- "keyword": "светильники",
- "sum": 565.75,
- "views": 1825
}
]
}
]
}
Получение истории затрат{{ /adv/v1/upd }}
Метод формирует список фактических затрат на рекламные кампании за заданный период.
Authorizations:
query Parameters
from required | string <date> Example: from=2023-07-31 Начало интервала |
to required | string <date> Example: to=2023-08-02 Конец интервала. |
Responses
Response samples
- 200
- 400
- 401
- 429
[- {
- "updNum": 0,
- "updTime": "2023-07-31T12:12:54.060536+03:00",
- "updSum": 24,
- "advertId": 3355881,
- "campName": "лук лучок",
- "advertType": 6,
- "paymentType": "Баланс",
- "advertStatus": 9
}, - {
- "updNum": 0,
- "updTime": null,
- "updSum": 107,
- "advertId": 3366882,
- "campName": "золотая луковица",
- "advertType": 8,
- "paymentType": "Счет",
- "advertStatus": 11
}
]
Получение истории пополнений счёта{{ /adv/v1/payments }}
Метод возвращает историю пополнений счёта ВБ.Продвижение за заданный период.
Authorizations:
query Parameters
from | string <date> Example: from=2023-07-31 Начало интервала |
to | string <date> Example: to=2023-08-02 Конец интервала. |
Responses
Response samples
- 200
- 400
- 401
- 429
[- {
- "id": 1036666,
- "date": "2022-02-04T09:06:47.985843Z",
- "sum": 600,
- "type": 0,
- "statusId": 1,
- "cardStatus": ""
}, - {
- "id": 55261296,
- "date": "2023-04-13T10:07:42",
- "sum": 1500,
- "type": 3,
- "statusId": 1,
- "cardStatus": "succeeded"
}
]
Статистика медиакампаний{{ /adv/v1/stats }}
Метод формирует статистику кампаний сервиса ВБ.Медиа. Статистику можно группировать по датам и/или интервалам.
Authorizations:
Request Body schema: application/jsonrequired
id | integer ID кампании |
dates | Array of strings <date> [ items <date > ] Даты, за которые необходимо выдать информацию. |
Responses
Request samples
- Payload
Запрос с датами
[- {
- "id": 8960367,
- "dates": [
- "2023-10-07",
- "2023-10-06"
]
}, - {
- "id": 9876543,
- "dates": [
- "2023-10-07",
- "2023-12-06"
]
}
]
Response samples
- 200
- 401
- 429
Ответ при запросе с интервалами
[- {
- "interval": {
- "begin": "2023-10-21",
- "end": "2023-10-25"
}, - "stats": [
- {
- "item_id": 62237,
- "item_name": "Gloria Jeans",
- "category_name": "Детям",
- "advert_type": 1,
- "place": 2,
- "views": 11849,
- "clicks": 209,
- "cr": 0.48,
- "ctr": 1.76,
- "date_from": "2023-10-21T00:00:00+03:00",
- "date_to": "2023-10-27T23:59:59+03:00",
- "subject_name": "Одежда",
- "atbs": 4,
- "orders": 1,
- "price": 175000,
- "cpc": 837.32,
- "status": 6,
- "daily_stats": [
- {
- "date": "2023-10-21T00:00:00+03:00",
- "app_type_stats": [
- {
- "app_type": 1,
- "stats": [
- {
- "views": 2017,
- "clicks": 27,
- "atbs": 1,
- "ctr": 1.34
}
]
}
]
}
], - "expenses": 175000,
- "cr1": 1.91,
- "cr2": 25
}
]
}
]
Методы получения статистики:
- Карточек товаров за период
- Групп карточек товаров за период
- Карточек товаров по дням
- Групп карточек товаров по дням
Статистика карточек товаров за период{{ /api/v2/nm-report/detail }}
Метод формирует отчёт о товарах, сравнивая ключевые показатели — например, добавления в корзину, заказы и переходы в карточку товара — за текущий период с предыдущим той же продолжительности.
Параметры brandNames
,objectIDs
, tagIDs
, nmIDs
могут быть пустыми []
, тогда в ответе возвращаются все карточки продавца.
Если выбрано несколько параметров, в ответе будут карточки, в которых есть одновременно все эти параметры. Если карточки не подходят по параметрам запроса, вернётся пустой ответ []
.
Можно получить отчёт максимум за последние 365 дней.
В данных предыдущего периода:
- Данные в
previousPeriod
указаны за такой же период, что и вselectedPeriod
. - Если дата начала
previousPeriod
раньше, чем год назад от текущей даты, она будет приведена к виду:previousPeriod.begin = текущая дата - 365 дней.
Authorizations:
Request Body schema: application/jsonrequired
brandNames | Array of strings Название бренда |
objectIDs | Array of integers <int32> [ items <int32 > ] ID предмета |
tagIDs | Array of integers <int32> [ items <int32 > ] ID ярлыка |
nmIDs | Array of integers <int32> [ items <int32 > ] Артикул WB |
timezone | string Временная зона. |
required | object Период |
object Параметры сортировки. Если не указано, то по умолчанию используется значение "openCard" и сортировка по убыванию.
| |
page required | integer <int32> Страница |
Responses
Request samples
- Payload
{- "brandNames": [
- "Some"
], - "objectIDs": [
- 358
], - "tagIDs": [
- 123
], - "nmIDs": [
- 1234567
], - "timezone": "Europe/Moscow",
- "period": {
- "begin": "2023-06-01 20:05:32",
- "end": "2024-03-01 20:05:32"
}, - "orderBy": {
- "field": "ordersSumRub",
- "mode": "asc"
}, - "page": 1
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "page": 1,
- "isNextPage": true,
- "cards": [
- {
- "nmID": 1234567,
- "vendorCode": "supplierVendor",
- "brandName": "Some",
- "tags": [
- {
- "id": 123,
- "name": "Sale"
}
], - "object": {
- "id": 447,
- "name": "Кондиционеры для волос"
}, - "statistics": {
- "selectedPeriod": {
- "begin": "2023-06-01 20:05:32",
- "end": "2024-03-01 20:05:32",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "cancelCount": 0,
- "cancelSumRub": 0,
- "avgPriceRub": 0,
- "avgOrdersCountPerDay": 0,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": 0
}
}, - "previousPeriod": {
- "begin": "2023-05-07 20:05:31",
- "end": "2023-06-01 20:05:31",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 1,
- "ordersSumRub": 1262,
- "buyoutsCount": 1,
- "buyoutsSumRub": 1262,
- "cancelCount": 0,
- "cancelSumRub": 0,
- "avgPriceRub": 1262,
- "avgOrdersCountPerDay": 0.04,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": 100
}
}, - "periodComparison": {
- "openCardDynamics": 0,
- "addToCartDynamics": 0,
- "ordersCountDynamics": -100,
- "ordersSumRubDynamics": -100,
- "buyoutsCountDynamics": -100,
- "buyoutsSumRubDynamics": -100,
- "cancelCountDynamics": 0,
- "cancelSumRubDynamics": 0,
- "avgOrdersCountPerDayDynamics": 0,
- "avgPriceRubDynamics": -100,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": -100
}
}
}, - "stocks": {
- "stocksMp": 0,
- "stocksWb": 0
}
}
]
}, - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Статистика групп карточек товаров за период{{ /api/v2/nm-report/grouped }}
Метод формирует отчёт о товарах, сравнивая ключевые показатели — например, добавления в корзину, заказы и переходы в карточку товара — за текущий период с предыдущим той же продолжительности. Карточки товаров сгруппированы по предметам, брендам и ярлыкам.
Параметры brandNames
, objectIDs
, tagIDs
могут быть пустыми []
, тогда группировка происходит по всем карточкам продавца.
Можно получить отчёт максимум за последние 365 дней.
В данных предыдущего периода:
- Данные в
previousPeriod
указаны за такой же период, что и вselectedPeriod
. - Если дата начала
previousPeriod
раньше, чем год назад от текущей даты, она будет приведена к виду:previousPeriod.begin = текущая дата - 365 дней.
Authorizations:
Request Body schema: application/jsonrequired
objectIDs | Array of integers <int32> [ items <int32 > ] ID предмета |
brandNames | Array of strings Название бренда |
tagIDs | Array of integers <int32> [ items <int32 > ] ID ярлыка |
timezone | string Временная зона. |
required | object Период |
object Параметры сортировки. Если не указано, то по умолчанию используется значение "openCard" и сортировка по убыванию.
| |
page required | integer <int32> Страница |
Responses
Request samples
- Payload
{- "objectIDs": [
- 358
], - "brandNames": [
- "Some"
], - "tagIDs": [
- 123
], - "timezone": "Europe/Moscow",
- "period": {
- "begin": "2023-10-04 20:05:32",
- "end": "2024-03-01 20:05:32"
}, - "orderBy": {
- "field": "ordersSumRub",
- "mode": "asc"
}, - "page": 1
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "page": 1,
- "isNextPage": true,
- "groups": [
- {
- "brandName": "Some",
- "tags": [
- {
- "id": 123,
- "name": "Sale"
}
], - "object": {
- "id": 1668,
- "name": "Воски для волос"
}, - "statistics": {
- "selectedPeriod": {
- "begin": "2023-10-04 20:05:32",
- "end": "2024-03-01 20:05:32",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "cancelCount": 0,
- "cancelSumRub": 0,
- "avgPriceRub": 0,
- "avgOrdersCountPerDay": 0,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": 0
}
}, - "previousPeriod": {
- "begin": "2023-11-04 20:05:31",
- "end": "2024-03-01 20:05:31",
- "openCardCount": 466,
- "addToCartCount": 72,
- "ordersCount": 84,
- "ordersSumRub": 127060.42,
- "buyoutsCount": 69,
- "buyoutsSumRub": 104898.42,
- "cancelCount": 13,
- "cancelSumRub": 0,
- "avgPriceRub": 1562.65,
- "avgOrdersCountPerDay": 0.72,
- "conversions": {
- "addToCartPercent": 15.5,
- "cartToOrderPercent": 116.7,
- "buyoutsPercent": 84.1
}
}, - "periodComparison": {
- "openCardDynamics": -100,
- "addToCartDynamics": -100,
- "ordersCountDynamics": -100,
- "ordersSumRubDynamics": -100,
- "buyoutsCountDynamics": -100,
- "buyoutsSumRubDynamics": -100,
- "cancelCountDynamics": 0,
- "cancelSumRubDynamics": 0,
- "avgOrdersCountPerDayDynamics": 0,
- "avgPriceRubDynamics": -100,
- "conversions": {
- "addToCartPercent": -100,
- "cartToOrderPercent": -100,
- "buyoutsPercent": -100
}
}
}
}
]
}, - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Статистика карточек товаров по дням{{ /api/v2/nm-report/detail/history }}
Метод предоставляет статистику карточек товаров по дням. Можно получить данные по добавлениям в корзину, заказам, переходам в карточку товара и так далее.
Можно получить данные максимум за последнюю неделю.
Authorizations:
Request Body schema: application/jsonrequired
nmIDs required | Array of integers <int32> [ items <int32 > ] Артикул WB (максимум 20) |
required | object Период |
timezone | string Временная зона. |
aggregationLevel | string Тип агрегации. Если не указано, то по умолчанию используется агрегация по дням. |
Responses
Request samples
- Payload
{- "nmIDs": [
- 1234567
], - "period": {
- "begin": "2023-06-20",
- "end": "2023-06-22"
}, - "timezone": "Europe/Moscow",
- "aggregationLevel": "day"
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": [
- {
- "nmID": 1234567,
- "imtName": "Наименование карточки товара",
- "vendorCode": "supplierVendor",
- "history": [
- {
- "dt": "2023-06-20",
- "openCardCount": 26,
- "addToCartCount": 1,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "buyoutPercent": 0,
- "addToCartConversion": 3.8,
- "cartToOrderConversion": 0
}
]
}
], - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Статистика групп карточек товаров по дням{{ /api/v2/nm-report/grouped/history }}
Метод предоставляет статистику карточек товаров по дням. Карточки товаров сгруппированы по предметам, брендам и ярлыкам. Можно получить данные по добавлениям в корзину, заказам, переходам в карточку товара и так далее.
Параметры brandNames
, objectIDs
, tagIDs
могут быть пустыми []
, тогда группировка происходит по всем карточкам продавца.
Произведение количества предметов, брендов, тегов в запросе может быть не больше 16.
Можно получить данные максимум за последнюю неделю.
Authorizations:
Request Body schema: application/jsonrequired
objectIDs | Array of integers <int32> [ items <int32 > ] ID предмета |
brandNames | Array of strings Название бренда |
tagIDs | Array of integers <int32> [ items <int32 > ] ID ярлыка |
required | object Период |
timezone | string Временная зона. |
aggregationLevel | string Тип агрегации. Если не указано, то по умолчанию используется агрегация по дням. |
Responses
Request samples
- Payload
{- "objectIDs": [
- 358
], - "brandNames": [
- "Some"
], - "tagIDs": [
- 123
], - "period": {
- "begin": "2023-06-21",
- "end": "2023-06-23"
}, - "timezone": "Europe/Moscow",
- "aggregationLevel": "day"
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": [
- {
- "object": {
- "id": 358,
- "name": "Шампуни"
}, - "brandName": "Some",
- "tag": {
- "id": 123,
- "name": "Sale"
}, - "history": [
- {
- "dt": "2023-06-21",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "buyoutPercent": 0,
- "addToCartConversion": 0,
- "cartToOrderConversion": 0
}
]
}
], - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Методы получения отчёта по поисковым запросам, в частности:
- Основной страницы
- Дополнительных данных к основной странице с пагинацией по группам или пагинацией по товарам в группе
- Поисковых запросов по товару
- Заказов и позиций по поисковым запросам товара
Основная страница{{ /api/v2/search-report/report }}
Метод формирует набор данных для основной страницы отчёта по поисковым запросам с:
- общей информацией
- позициями товаров
- данными по видимости и переходам в карточку
- данными для таблицы по группам
Для получения дополнительных данных в таблице используйте отдельный запрос для:
Дополнительный параметр выбора списка товаров в таблице:
positionCluster
— средняя позиция в поиске
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Текущий период |
object (pastPeriod) Прошлый период для сравнения. Количество дней — меньше или равно | |
nmIds | Array of integers <int32> [ items <int32 > ] Список артикулов WB для фильтрации |
subjectIds | Array of integers <int32> [ items <int32 > ] Список ID предметов для фильтрации |
brandNames | Array of strings Список названий брендов для фильтрации |
tagIds | Array of integers <int64> [ items <int64 > ] Список ID тегов для фильтрации |
positionCluster required | string (PositionCluster) Enum: "all" "firstHundred" "secondHundred" "below" Товары с какой средней позицией в поиске показывать в отчёте:
|
required | object (OrderBy) Параметры сортировки |
limit required | integer <uint32> <= 1000 Количество групп товаров в ответе |
offset required | integer <uint32> После какого элемента выдавать данные |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "nmIds": [
- 162579635,
- 166699779
], - "subjectIds": [
- 32,
- 64
], - "brandNames": [
- "Adidas",
- "Nike"
], - "tagIds": [
- 3,
- 5,
- 6
], - "positionCluster": "all",
- "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "limit": 130,
- "offset": 50
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "commonInfo": {
- "supplierRating": {
- "current": 5.3,
- "dynamics": 5.4
}, - "advertisedProducts": {
- "current": 5,
- "dynamics": 50
}, - "totalProducts": 150
}, - "positionInfo": {
- "average": {
- "current": 5,
- "dynamics": 50
}, - "median": {
- "current": 5,
- "dynamics": 50
}, - "chartItems": [
- {
- "dt": "2024-10-19",
- "average": 1,
- "median": 1
}
], - "clusters": {
- "firstHundred": {
- "current": 5,
- "dynamics": 50
}, - "secondHundred": {
- "current": 5,
- "dynamics": 50
}, - "below": {
- "current": 5,
- "dynamics": 50
}
}
}, - "visibilityInfo": {
- "visibility": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "byDay": [
- {
- "dt": "2024-02-10",
- "visibility": 100,
- "open": 124
}
], - "byWeek": [
- {
- "dt": "2024-02-10",
- "visibility": 100,
- "open": 124
}
], - "byMonth": [
- {
- "dt": "2024-02-10",
- "visibility": 100,
- "open": 124
}
]
}, - "groups": [
- {
- "subjectName": "Phones",
- "subjectId": 50,
- "brandName": "Apple",
- "tagName": "phones",
- "tagId": 65,
- "metrics": {
- "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}, - "items": [
- {
- "nmId": 268913787,
- "name": "iPhone 13 256 ГБ Серебристый",
- "vendorCode": "wb3ha2668w",
- "subjectName": "Смартфоны",
- "brandName": "Apple",
- "isAdvertised": false,
- "isCardRated": true,
- "rating": 6,
- "feedbackRating": 1,
- "price": {
- "minPrice": 150,
- "maxPrice": 300
}, - "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
]
}
}
Пагинация по группам{{ /api/v2/search-report/table/groups }}
Метод формирует дополнительные данные к основному отчёту с пагинацией по группам. Пагинация возможна только при наличии фильтра по бренду, предмету или тегу.
Дополнительный параметр выбора списка товаров в таблице:
positionCluster
— средняя позиция в поиске
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Текущий период |
object (pastPeriod) Прошлый период для сравнения. Количество дней — меньше или равно | |
nmIds | Array of integers <int32> [ items <int32 > ] Список артикулов WB для фильтрации |
subjectIds | Array of integers <int32> [ items <int32 > ] Список ID предметов для фильтрации |
brandNames | Array of strings Список названий брендов для фильтрации |
tagIds | Array of integers <int64> [ items <int64 > ] Список ID тегов для фильтрации |
required | object (OrderBy) Параметры сортировки |
positionCluster required | string (PositionCluster) Enum: "all" "firstHundred" "secondHundred" "below" Товары с какой средней позицией в поиске показывать в отчёте:
|
limit required | integer <uint32> <= 1000 Количество групп товаров в ответе |
offset required | integer <uint32> После какого элемента выдавать данные |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "nmIds": [
- 162579635,
- 166699779
], - "subjectIds": [
- 64,
- 334
], - "brandNames": [
- "nille",
- "aikas"
], - "tagIds": [
- 32,
- 53
], - "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "positionCluster": "all",
- "limit": 130,
- "offset": 50
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "groups": [
- {
- "subjectName": "Phones",
- "subjectId": 50,
- "brandName": "Apple",
- "tagName": "phones",
- "tagId": 65,
- "metrics": {
- "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}, - "items": [
- {
- "nmId": 268913787,
- "name": "iPhone 13 256 ГБ Серебристый",
- "vendorCode": "wb3ha2668w",
- "subjectName": "Смартфоны",
- "brandName": "Apple",
- "isAdvertised": false,
- "isCardRated": true,
- "rating": 6,
- "feedbackRating": 1,
- "price": {
- "minPrice": 150,
- "maxPrice": 300
}, - "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
]
}
}
Пагинация по товарам в группе{{ /api/v2/search-report/table/details }}
Метод формирует дополнительные данные к основному отчёту с пагинацией по товарам в группе. Пагинация возможна вне зависимости от наличия фильтров.
Фильтры для пагинации по товарам в группе или без фильтров:
- кортеж
subjectId
,brandName
,tagId
— фильтр для группы nmIds
— фильтр по карточке товара
Дополнительный параметр выбора списка товаров:
positionCluster
— средняя позиция в поиске
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Текущий период |
object (pastPeriod) Прошлый период для сравнения. Количество дней — меньше или равно | |
subjectId | integer <int32> ID предмета |
brandName | string Название товара |
tagId | integer <int64> ID ярлыка |
nmIds | Array of integers <uint64> <= 50 items [ items <uint64 > ] Список артикулов WB |
required | object (OrderBy) Параметры сортировки |
positionCluster required | string Enum: "all" "firstHundred" "secondHundred" "below" Товары с какой средней позицией в поиске показывать в отчёте:
|
limit required | integer <uint32> <= 1000 Количество товаров в ответе |
offset required | integer <uint32> После какого элемента выдавать данные |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "subjectId": 123,
- "brandName": "Apple",
- "tagId": 45,
- "nmIds": [
- 162579635,
- 166699779
], - "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "positionCluster": "all",
- "limit": 150,
- "offset": 100
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "products": [
- {
- "nmId": 268913787,
- "name": "iPhone 13 256 ГБ Серебристый",
- "vendorCode": "wb3ha2668w",
- "subjectName": "Смартфоны",
- "brandName": "Apple",
- "isAdvertised": false,
- "isCardRated": true,
- "rating": 6,
- "feedbackRating": 1,
- "price": {
- "minPrice": 150,
- "maxPrice": 300
}, - "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
}
Поисковые запросы по товару{{ /api/v2/search-report/product/search-texts }}
Метод формирует топ поисковых запросов по товару.
Параметры выбора поисковых запросов:
limit
— количество запросов, максимум 30topOrderBy
— способ выбора топа запросов
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Текущий период |
object (pastPeriod) Прошлый период для сравнения. Количество дней — меньше или равно | |
nmIds required | Array of integers <uint64> <= 50 items [ items <uint64 > ] Список артикулов WB |
topOrderBy required | string Enum: "openCard" "addToCart" "openToCart" "orders" "cartToOrder" Сортировка по полю:
|
required | object (OrderBy) Параметры сортировки |
limit required | integer <uint64> (TextLimit) [ 1 .. 30 ] Количество поисковых запросов по товару |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "nmIds": [
- 162579635,
- 166699779
], - "topOrderBy": "openToCart",
- "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "limit": 20
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "items": [
- {
- "text": "костюм",
- "nmId": 211131895,
- "subjectName": "Phones",
- "brandName": "Apple",
- "vendorCode": "wb3ha2668w",
- "name": "iPhone 13 256 ГБ Серебристый",
- "isCardRated": true,
- "rating": 6,
- "feedbackRating": 1,
- "price": {
- "minPrice": 150,
- "maxPrice": 300
}, - "frequency": {
- "current": 5,
- "dynamics": 50
}, - "weekFrequency": 140,
- "medianPosition": {
- "current": 5,
- "dynamics": 50
}, - "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
}
Заказы и позиции по поисковым запросам товара{{ /api/v2/search-report/product/orders }}
Метод формирует данные для таблицы по количеству заказов и позиций в поиске по запросам покупателя. Данные указаны в рамках периода для запрошенного товара.
Authorizations:
Request Body schema: application/jsonrequired
required | object (PeriodOrdersRequest) Текущий период. Максимум 7 суток |
nmId required | integer <uint64> Артикул WB |
searchTexts required | Array of strings [ 1 .. 30 ] items Поисковые запросы |
Responses
Request samples
- Payload
{- "period": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "nmId": 211131895,
- "searchTexts": [
- "костюм",
- "пиджак"
]
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "total": [
- {
- "dt": "2024-02-10",
- "avgPosition": 10,
- "orders": 20
}
], - "items": [
- {
- "text": "string",
- "frequency": 0,
- "dateItems": [
- {
- "dt": "2024-02-10",
- "avgPosition": 10,
- "orders": 20
}
]
}
]
}
}
Чтобы получить отчёт:
- Сгенерируйте его с помощью метода метода создания отчёта.
- Дождитесь, когда отчёт будет готов. Вы можете проверить статус готовности через получение списка отчётов. Готовый отчёт хранится 48 часов.
Если вы получили статусFAILED
, сгенерируйте отчёт повторно. - Получите отчёт.
Можно получить отчёт максимум за год.
Максимальное количество отчётов, генерируемых в сутки — 20.
Создать отчёт{{ /api/v2/nm-report/downloads }}
Метод создаёт задание на генерацию отчёта с расширенной аналитикой продавца.
Вы можете создать отчёт по воронке продаж или параметрам поиска с группировкой по:
- артикулам WB
- категориям, брендам и ярлыкам
В отчётах по воронке продаж можно группировать данные по дням, неделям или месяцам.
Также можете создать отчёт по текстам поисковых запросов.
Если не удалось получить отчёт, можно создать повторное задание на генерацию. Также можно проверить статусы созданных отчётов.
Authorizations:
Request Body schema: application/json
id required | string <uuid> ID отчёта в UUID-формате. Генерируется продавцом самостоятельно |
reportType required | string Тип отчёта — |
userReportName | string Название отчёта (если не указано, сформируется автоматически) |
required | object Параметры отчёта |
Responses
Request samples
- Payload
Воронка продаж. По артикулам WB
{- "id": "06eae887-9d9f-491f-b16a-bb1766fcb8d2",
- "reportType": "DETAIL_HISTORY_REPORT",
- "userReportName": "Card report",
- "params": {
- "nmIDs": [
- 1234567
], - "subjectIDs": [
- 1234567
], - "brandNames": [
- "Name"
], - "tagIDs": [
- 1234567
], - "startDate": "2024-06-21",
- "endDate": "2024-06-23",
- "timezone": "Europe/Moscow",
- "aggregationLevel": "day",
- "skipDeletedNm": false
}
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": "Created"
}
Получить список отчётов{{ /api/v2/nm-report/downloads }}
Метод предоставляет список отчётов с расширенной аналитикой продавца. Ответ содержит ID созданных отчётов и статусы генерации.
Authorizations:
query Parameters
filter[downloadIds] | Array of strings <uuid> [ items <uuid > ] ID отчёта |
Responses
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": [
- {
- "id": "06eae887-9d9f-491f-b16a-bb1766fcb8d2",
- "createdAt": "2024-06-26 20:05:32",
- "status": "SUCCESS",
- "name": "Card report",
- "size": 123,
- "startDate": "2024-06-21",
- "endDate": "2024-06-23"
}
]
}
Сгенерировать отчёт повторно{{ /api/v2/nm-report/downloads/retry }}
Метод создает повторное задание на генерацию отчёта с расширенной аналитикой продавца. Необходимо, если при генерации отчёта вы получили статус FAILED
.
Authorizations:
Request Body schema: application/jsonrequired
downloadId | string <uuid> ID отчёта |
Responses
Request samples
- Payload
{- "downloadId": "06eea887-9d9f-491f-b16a-bb1766fcb8d2"
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": "Retry"
}
Получить отчёт{{ /api/v2/nm-report/downloads/file/{downloadId} }}
Метод предоставляет отчёт с расширенной аналитикой продавца по ID задания на генерацию.
Можно получить отчёт, который сгенерирован за последние 48 часов.
Отчёт будет загружен внутри архива ZIP в формате CSV.
Authorizations:
path Parameters
downloadId required | string <uuid> ID отчёта |
Responses
Response samples
- 200
- 400
- 401
- 403
- 429
nmID, dt, openCardCount, addToCartCount, ordersCount, ordersSumRub, buyoutsCount, buyoutsSumRub, cancelCount, cancelSumRub, addToCartConversion, cartToOrderConversion, buyoutPercent 70027655,2024-11-21,1,0,0,0,0,0,0,0,0,0,0 ... ... 150317666,2024-11-21,2,0,0,0,0,0,0,0,0,0,0