Wildberries API TypeScript SDK / AnalyticsModule
Class: AnalyticsModule
Defined in: modules/analytics/index.ts:10
Constructors
Constructor
new AnalyticsModule(client: BaseClient): AnalyticsModule;Defined in: modules/analytics/index.ts:11
Parameters
| Parameter | Type |
|---|---|
client | BaseClient |
Returns
AnalyticsModule
Methods
createNmReportDetail()
createNmReportDetail(data: NmReportDetailRequest): Promise<NmReportDetailResponse>;Defined in: modules/analytics/index.ts:28
Статистика карточек товаров за период
Метод формирует отчёт о товарах, сравнивая ключевые показатели — например, добавления в корзину, заказы и переходы в карточку товара — за текущий период с аналогичным прошлым.<br><br> Параметры brandNames,objectIDs, tagIDs, nmIDs могут быть пустыми [], тогда в ответе возвращаются все карточки продавца.<br><br> Если выбрано несколько параметров, в ответе будут карточки, в которых есть одновременно все эти параметры. Если карточки не подходят по параметрам запроса, вернётся пустой ответ [].<br><br> Можно получить отчёт максимум за последние 365 дней.<br><br> В данных предыдущего периода: * Данные в previousPeriod указаны за такой же период, что и в selectedPeriod. * Если дата начала previousPeriod раньше, чем год назад от текущей даты, она будет приведена к виду: previousPeriod.begin = текущая дата — 365 дней. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | NmReportDetailRequest | Parameter |
Returns
Promise<NmReportDetailResponse>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createNmReportDetail({});
console.log(result);createDetailHistory()
createDetailHistory(data: NmReportDetailHistoryRequest): Promise<NmReportDetailHistoryResponse>;Defined in: modules/analytics/index.ts:47
Статистика карточек товаров по дням
Метод возвращает статистику карточек товаров по дням. Можно получить данные по добавлениям в корзину, заказам, переходам в карточку товара и так далее.<br><br> Можно получить данные максимум за последнюю неделю. <div class="description_important"> Чтобы получать <a href="/openapi/analytics#tag/Analitika-prodavca-CSV">отчёты за период до года</a>, подпишитесь на <a href='https://seller.wildberries.ru/monetization/jam'>расширенную аналитику Джем</a> </div> <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | NmReportDetailHistoryRequest | Parameter |
Returns
Promise<NmReportDetailHistoryResponse>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createDetailHistory({});
console.log(result);createGroupedHistory()
createGroupedHistory(data: NmReportGroupedHistoryRequest): Promise<NmReportGroupedHistoryResponse>;Defined in: modules/analytics/index.ts:66
Статистика групп карточек товаров по дням
Метод возвращает статистику карточек товаров по дням. Карточки товаров сгруппированы по предметам, брендам и ярлыкам. Можно получить данные по добавлениям в корзину, заказам, переходам в карточку товара и так далее.<br><br> Параметры brandNames, objectIDs, tagIDs могут быть пустыми [], тогда группировка происходит по всем карточкам продавца.<br><br> Произведение количества предметов, брендов, ярлыков в запросе может быть не больше 16.<br><br> Можно получить данные максимум за последнюю неделю. <div class="description_important"> Чтобы получать <a href="/openapi/analytics#tag/Analitika-prodavca-CSV">отчёты за период до года</a>, подпишитесь на <a href='https://seller.wildberries.ru/monetization/jam'>расширенную аналитику Джем</a> </div> <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | NmReportGroupedHistoryRequest | Parameter |
Returns
Promise<NmReportGroupedHistoryResponse>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createGroupedHistory({});
console.log(result);getNmReportDownloads()
getNmReportDownloads(options?: {
filter[downloadIds]?: string[];
}): Promise<NmReportGetReportsResponse>;Defined in: modules/analytics/index.ts:85
Получить список отчётов
Метод возвращает список отчётов с расширенной аналитикой продавца. Ответ содержит ID созданных отчётов и статусы генерации. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
options? | { filter[downloadIds]?: string[]; } | Query parameters |
options.filter[downloadIds]? | string[] | - |
Returns
Promise<NmReportGetReportsResponse>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.getNmReportDownloads({});
console.log(result);createNmReportDownload()
createNmReportDownload(data?:
| SalesFunnelProductReq
| SalesFunnelGroupReq
| SearchReportGroupReq
| SearchReportProductReq
| SearchReportTextReq
| StocksReportReq): Promise<NmReportCreateReportResponse>;Defined in: modules/analytics/index.ts:104
Создать отчёт
Метод создаёт задание на генерацию отчёта с расширенной аналитикой продавца.<br><br> Вы можете создать CSV-версии отчётов по воронке продаж или параметрам поиска с группировкой по: * артикулам WB * предметам, брендам и ярлыкам В отчётах по воронке продаж можно группировать данные по дням, неделям или месяцам.<br><br> Также можете создать CSV-версии отчётов по текстам поисковых запросов и истории остатков.<br><br> Параметры includeSubstitutedSKUs и includeSearchTexts не могут одновременно иметь значение false.<br><br> Если не удалось получить отчёт, можно создать повторное задание на генерацию. Также можно получить список и проверить статусы отчётов. <div class="description_important"> Отчёт по <a href="https://seller.wildberries.ru/content-analytics/history-remains">истории остатков</a> — модель <code>StocksReportReq</code> — можно создать без подписки <a href="https://seller.wildberries.ru/monetization/jam">Джем</a> </div> <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data? | | SalesFunnelProductReq | SalesFunnelGroupReq | SearchReportGroupReq | SearchReportProductReq | SearchReportTextReq | StocksReportReq | Request body data |
Returns
Promise<NmReportCreateReportResponse>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createNmReportDownload({});
console.log(result);createDownloadsRetry()
createDownloadsRetry(data: NmReportRetryReportRequest): Promise<NmReportRetryReportResponse>;Defined in: modules/analytics/index.ts:123
Сгенерировать отчёт повторно
Метод создает повторное задание на генерацию отчёта с расширенной аналитикой продавца. Необходимо, если при генерации отчёта вы получили статус FAILED. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | NmReportRetryReportRequest | Request body data |
Returns
Promise<NmReportRetryReportResponse>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createDownloadsRetry({});
console.log(result);getDownloadsFile()
getDownloadsFile(downloadId: string): Promise<unknown>;Defined in: modules/analytics/index.ts:142
Получить отчёт
Метод возвращает отчёт с расширенной аналитикой продавца по ID задания на генерацию. <br><br> Можно получить отчёт, который сгенерирован за последние 48 часов.<br>Отчёт будет загружен внутри архива ZIP в формате CSV. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
downloadId | string | ID отчёта |
Returns
Promise<unknown>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.getDownloadsFile('downloadId-value');
console.log(result);createSearchReportReport()
createSearchReportReport(data: MainRequest): Promise<CommonResponseProperties & {
data: MainResponse;
}>;Defined in: modules/analytics/index.ts:161
Основная страница
Метод формирует набор данных для основной страницы отчёта по поисковым запросам с: - общей информацией - позициями товаров - данными по видимости и переходам в карточку - данными для таблицы по группам Для получения дополнительных данных в таблице используйте отдельный запрос для: - пагинации по группам - получения по товарам в группе Дополнительный параметр выбора списка товаров в таблице: - positionCluster — средняя позиция в поиске Параметры includeSubstitutedSKUs и includeSearchTexts не могут одновременно иметь значение false. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | MainRequest | Request body data |
Returns
Promise<CommonResponseProperties & { data: MainResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createSearchReportReport({});
console.log(result);createTableGroup()
createTableGroup(data: TableGroupRequest): Promise<CommonResponseProperties & {
data: TableGroupResponse;
}>;Defined in: modules/analytics/index.ts:180
Пагинация по группам
Метод формирует дополнительные данные к основному отчёту с пагинацией по группам. Пагинация возможна только при наличии фильтра по бренду, предмету или ярлыку.<br><br> Дополнительный параметр выбора списка товаров в таблице: - positionCluster — средняя позиция в поиске Параметры includeSubstitutedSKUs и includeSearchTexts не могут одновременно иметь значение false. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | TableGroupRequest | Request body data |
Returns
Promise<CommonResponseProperties & { data: TableGroupResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createTableGroup({});
console.log(result);createTableDetail()
createTableDetail(data: TableDetailsRequest): Promise<CommonResponseProperties & {
data: TableDetailsResponse;
}>;Defined in: modules/analytics/index.ts:199
Пагинация по товарам в группе
Метод формирует дополнительные данные к основному отчёту с пагинацией по товарам в группе. Пагинация возможна вне зависимости от наличия фильтров.<br><br> Фильтры для пагинации по товарам в группе или без фильтров: - кортеж subjectId,brandName,tagId — фильтр для группы - nmIds — фильтр по карточке товара Дополнительный параметр выбора списка товаров: - positionCluster — средняя позиция в поиске Параметры includeSubstitutedSKUs и includeSearchTexts не могут одновременно иметь значение false. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | TableDetailsRequest | Request body data |
Returns
Promise<CommonResponseProperties & { data: TableDetailsResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createTableDetail({});
console.log(result);createProductSearchText()
createProductSearchText(data: ProductSearchTextsRequest): Promise<CommonResponseProperties & {
data: ProductSearchTextsResponse;
}>;Defined in: modules/analytics/index.ts:218
Поисковые запросы по товару
Метод формирует топ поисковых запросов по товару. Параметры выбора поисковых запросов: - limit — количество запросов, максимум 30 (для тарифа Продвинутый — 100) - topOrderBy — способ выбора топа запросов Параметры includeSubstitutedSKUs и includeSearchTexts не могут одновременно иметь значение false. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | ProductSearchTextsRequest | Request body data |
Returns
Promise<CommonResponseProperties & { data: ProductSearchTextsResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createProductSearchText({});
console.log(result);createProductOrder()
createProductOrder(data: ProductOrdersRequest): Promise<CommonResponseProperties & {
data: ProductOrdersResponse;
}>;Defined in: modules/analytics/index.ts:237
Заказы и позиции по поисковым запросам товара
Метод формирует данные для таблицы по количеству заказов и позиций в поиске по запросам покупателя. Данные указаны в рамках периода для запрошенного товара. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | ProductOrdersRequest | Request body data |
Returns
Promise<CommonResponseProperties & { data: ProductOrdersResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createProductOrder({});
console.log(result);createProductsGroup()
createProductsGroup(data: TableGroupRequestSt): Promise<{
data: TableGroupResponseSt;
}>;Defined in: modules/analytics/index.ts:256
Данные по группам
Метод формирует набор данных об остатках по группам товаров. <br><br> Группа товаров описывается кортежем subjectID, brandName, tagID. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | TableGroupRequestSt | Request body data |
Returns
Promise<{ data: TableGroupResponseSt; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createProductsGroup({});
console.log(result);createProductsProduct()
createProductsProduct(data: TableProductRequest): Promise<{
data: TableProductResponse;
}>;Defined in: modules/analytics/index.ts:275
Данные по товарам
Метод формирует набор данных об остатках по товарам. <br><br> Можно получить данные как по отдельным товарам, так и в рамках всего отчёта — если в запросе отсутствуют фильтры: nmIDs, subjectID, brandName, tagID. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | TableProductRequest | Request body data |
Returns
Promise<{ data: TableProductResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createProductsProduct({});
console.log(result);createProductsSize()
createProductsSize(data: CommonSizeFilters): Promise<{
data: TableSizeResponse;
}>;Defined in: modules/analytics/index.ts:294
Данные по размерам
Метод формирует набор данных об остатках по размерам товара. <br><br> Возможны случаи: 1. Товар имеет размеры и "includeOffice":true, тогда в ответе будут данные об остатках по каждому из размеров с вложенной детализацией по складам. 2. Товар имеет размеры и "includeOffice":false, тогда в ответе будут данные об остатках по каждому из размеров без вложенной детализации по складам. 3. Товар не имеет размера и "includeOffice":true, тогда в ответе будет детализация по складам. Без данных об остатках по каждому из размеров. 4. Товар не имеет размера и "includeOffice":false, тогда тело ответа будет пустым.<br></br> Товар не имеет размера, если у него единственный размер с "techSize":"0". В ответах метода получения данных по товарам у таких товаров "hasSizes":false.<br></br> Данные по складам Маркетплейс (FBS) приходят в агрегированном виде — по всем сразу, без детализации по конкретным складам — эти записи будут с "regionName":"Маркетплейс" и "officeName":"". <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | CommonSizeFilters | Request body data |
Returns
Promise<{ data: TableSizeResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createProductsSize({});
console.log(result);createStocksReportOffice()
createStocksReportOffice(data: CommonShippingOfficeFilters): Promise<{
data: TableShippingOfficeResponse;
}>;Defined in: modules/analytics/index.ts:313
Данные по складам
Метод формирует набор данных об остатках по складам. <br><br> Данные по складам Маркетплейс (FBS) приходят в агрегированном виде — по всем сразу, без детализации по конкретным складам — эти записи будут с "regionName":"Маркетплейс" и "offices":[]. <div class="description_limit"> <a href="/openapi/api-information#tag/Vvedenie/Limity-zaprosov">Лимит запросов</a> на один аккаунт продавца: | Период | Лимит | Интервал | Всплеск | | --- | --- | --- | --- | | 1 минута | 3 запроса | 20 секунд | 3 запроса | </div>
Parameters
| Parameter | Type | Description |
|---|---|---|
data | CommonShippingOfficeFilters | Request body data |
Returns
Promise<{ data: TableShippingOfficeResponse; }>
Успешно
Throws
When API key is invalid (401/403)
Throws
When rate limit exceeded (429)
Throws
When request data is invalid (400/422)
Throws
When network request fails or times out
Example
const result = await sdk.general.createStocksReportOffice({});
console.log(result);