Skip to content

Wildberries API TypeScript SDK / GeneralModule

Class: GeneralModule

Defined in: modules/general/index.ts:26

Constructors

Constructor

ts
new GeneralModule(client: BaseClient): GeneralModule;

Defined in: modules/general/index.ts:27

Parameters

ParameterType
clientBaseClient

Returns

GeneralModule

Methods

ping()

ts
ping(): Promise<PingResponse>;

Defined in: modules/general/index.ts:72

Проверка подключения к WB API

Метод проверяет три вещи:

  1. Запрос доходит до WB API
  2. Валидность токена (не истёк, не отозван)
  3. Совпадение категории токена и сервиса

Метод НЕ предназначен для проверки доступности конкретного сервиса. Для каждой категории API используется свой домен:

КатегорияДомен
Контентcontent-api.wildberries.ru
Маркетплейсmarketplace-api.wildberries.ru
Статистикаstatistics-api.wildberries.ru
Аналитикаseller-analytics-api.wildberries.ru
Рекомендацииrecommend-api.wildberries.ru
Вопросы и отзывыfeedbacks-api.wildberries.ru
Цены и скидкиdiscounts-prices-api.wildberries.ru
Продвижениеadvert-api.wildberries.ru
Чат с покупателямиbuyer-chat-api.wildberries.ru
Тарифыcommon-api.wildberries.ru
Общееcommon-api.wildberries.ru
Возвраты покупателямreturns-api.wildberries.ru
Документыdocument-api.wildberries.ru
Финансыfinance-api.wildberries.ru

Rate limit: Максимум 3 запроса за 30 секунд (6 req/min, 10s interval, burst 3)

Returns

Promise<PingResponse>

Ответ с временной меткой и статусом подключения

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

See

https://dev.wildberries.ru/openapi/api-information#tag/Proverka-podklyucheniya-k-WB-API

Example

typescript
const result = await sdk.general.ping();
console.log(result.Status); // 'OK'

news()

ts
news(options?: NewsRequestParams): Promise<NewsResponse>;

Defined in: modules/general/index.ts:108

Получение новостей портала продавцов

Возвращает список новостей портала продавцов Wildberries. В запросе необходимо указать один из параметров: from (дата) или fromID (ID новости). Максимум 100 новостей за один запрос.

Rate limit:

ПериодЛимитИнтервалВсплеск
1 мин1 запрос1 мин10 запросов

Parameters

ParameterTypeDescription
options?NewsRequestParamsПараметры запроса

Returns

Promise<NewsResponse>

Список новостей

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

See

https://dev.wildberries.ru/openapi/api-information#tag/API-novostej

Example

typescript
const result = await sdk.general.news({ from: '2024-01-01' });
for (const item of result.data) {
  console.log(item.header, item.date);
}

sellerInfo()

ts
sellerInfo(): Promise<SellerInfoResponse>;

Defined in: modules/general/index.ts:142

Получение информации о продавце

Возвращает наименование продавца и уникальный ID профиля продавца. Для запроса подойдёт любой токен, кроме тестового контура.

Rate limit:

ПериодЛимитИнтервалВсплеск
1 мин1 запрос1 мин10 запросов

Returns

Promise<SellerInfoResponse>

Информация о продавце (наименование, ID профиля, торговая марка)

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

See

https://dev.wildberries.ru/openapi/api-information#tag/Informaciya-o-prodavce

Example

typescript
const seller = await sdk.general.sellerInfo();
console.log(seller.name, seller.sid);

createInvite()

ts
createInvite(data: CreateInviteRequest): Promise<CreateInviteResponse>;

Defined in: modules/general/index.ts:184

Создание приглашения для нового пользователя

Метод создаёт приглашение для нового пользователя с настройкой доступов к разделам профиля продавца. Приглашение действительно в течение ограниченного времени, указанного в ответе.

Авторизация: Требуется Персональный токен (категория: Пользователи) от активного владельца профиля. Доступно для всех стран продавцов.

Rate limit:

ПериодЛимитИнтервалВсплеск
1 сек1 запрос1 сек5 запросов

Parameters

ParameterTypeDescription
dataCreateInviteRequestДанные для создания приглашения

Returns

Promise<CreateInviteResponse>

Информация о созданном приглашении

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

See

https://dev.wildberries.ru/openapi/api-information#tag/Upravlenie-polzovatelyami-prodavca

Example

typescript
const result = await sdk.general.createInvite({
  invite: { phoneNumber: '79999999999', position: 'Менеджер' },
  access: [
    { code: 'balance', disabled: false },
    { code: 'finance', disabled: true }
  ]
});
console.log(result.inviteUrl);

getUsers()

ts
getUsers(params?: GetUsersParams): Promise<GetUsersResponse>;

Defined in: modules/general/index.ts:226

Получение списка пользователей продавца

Возвращает список пользователей профиля продавца с их правами доступа. Можно фильтровать по активным пользователям или только приглашённым.

Авторизация: Требуется Персональный токен (категория: Пользователи) от активного владельца профиля. Доступно для всех стран продавцов.

Rate limit:

ПериодЛимитИнтервалВсплеск
1 сек1 запрос1 сек5 запросов

Parameters

ParameterTypeDescription
params?GetUsersParamsПараметры запроса

Returns

Promise<GetUsersResponse>

Список пользователей с общим количеством

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

See

https://dev.wildberries.ru/openapi/api-information#tag/Upravlenie-polzovatelyami-prodavca

Example

typescript
const result = await sdk.general.getUsers({ limit: 50 });
console.log(`Total users: ${result.total}`);
for (const user of result.users) {
  console.log(user.firstName, user.email);
}

updateUserAccess()

ts
updateUserAccess(data: UpdateUserAccessRequest): Promise<void>;

Defined in: modules/general/index.ts:272

Изменение доступов пользователей

Обновляет права доступа для одного или нескольких пользователей профиля продавца. Можно изменить доступ к различным разделам: баланс, финансы, документы и др.

Авторизация: Требуется Персональный токен (категория: Пользователи) от активного владельца профиля. Доступно для всех стран продавцов.

Rate limit:

ПериодЛимитИнтервалВсплеск
1 сек1 запрос1 сек5 запросов

Parameters

ParameterTypeDescription
dataUpdateUserAccessRequestДанные для обновления доступов

Returns

Promise<void>

void

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

See

https://dev.wildberries.ru/openapi/api-information#tag/Upravlenie-polzovatelyami-prodavca

Example

typescript
await sdk.general.updateUserAccess({
  usersAccesses: [
    {
      userId: 12345,
      access: [
        { code: 'balance', disabled: true },
        { code: 'finance', disabled: false }
      ]
    }
  ]
});

deleteUser()

ts
deleteUser(deletedUserID: number): Promise<void>;

Defined in: modules/general/index.ts:306

Удаление пользователя

Удаляет пользователя из профиля продавца по его ID. Удалённый пользователь теряет доступ ко всем разделам профиля.

Авторизация: Требуется Персональный токен (категория: Пользователи) от активного владельца профиля. Доступно для всех стран продавцов.

Rate limit:

ПериодЛимитИнтервалВсплеск
1 сек1 запрос1 сек10 запросов

Parameters

ParameterTypeDescription
deletedUserIDnumberID пользователя для удаления

Returns

Promise<void>

void

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

See

https://dev.wildberries.ru/openapi/api-information#tag/Upravlenie-polzovatelyami-prodavca

Example

typescript
await sdk.general.deleteUser(12345);

getJamSubscriptionStatus()

ts
getJamSubscriptionStatus(params: GetJamSubscriptionStatusParams): Promise<JamSubscriptionStatus>;

Defined in: modules/general/index.ts:367

Определение тарифа подписки Джем (Jam) через пробные запросы

Parameters

ParameterTypeDescription
paramsGetJamSubscriptionStatusParamsParameters containing nmIds for the probe

Returns

Promise<JamSubscriptionStatus>

Jam subscription status with detected tier and metadata

Deprecated

Используйте getJamSubscription вместо этого метода. Прямой API GET /api/common/v1/subscriptions не требует nmIds и не тратит квоту аналитики. Этот probe-метод сохранён как fallback для случаев, когда нет Сервисного токена.

Определяет тариф через пробные запросы к аналитическому эндпоинту поисковых запросов товара (/api/v2/search-report/product/search-texts), используя разные значения limit:

  1. Запрос с limit: 31 (выше лимита стандартного тарифа = 30)
    • 200 → тариф «Продвинутый» (advanced)
    • 400 → не продвинутый → продолжаем
  2. Запрос с limit: 1
    • 200 → тариф «Стандартный» (standard)
    • 400 → подписка Джем отсутствует (none)

Ошибки аутентификации, превышения лимитов и сетевые ошибки не перехватываются и пробрасываются вызывающему коду.

Rate limit: Uses the same quota as analytics.createProductSearchText (3 requests/minute, 20-second interval, burst 3). Each call makes 1–2 probe requests.

Throws

When nmIds array is empty

Throws

When API key is invalid (401/403)

Throws

When rate limit exceeded (429)

Throws

When network request fails or times out

Example

typescript
const status = await sdk.general.getJamSubscriptionStatus({ nmIds: [12345678] });

switch (status.tier) {
  case 'advanced':
    console.log('Advanced Jam — limit up to 50');
    break;
  case 'standard':
    console.log('Standard Jam — limit up to 30');
    break;
  case 'none':
    console.log('No Jam subscription');
    break;
}

getJamSubscription()

ts
getJamSubscription(): Promise<JamSubscriptionDetails>;

Defined in: modules/general/index.ts:458

Получение информации о подписке Джем (Jam)

Возвращает подробную информацию о подписке Джем продавца: даты активации и окончания, уровень подписки, способ оформления и статус.

Если продавец никогда не подключал подписку, возвращается пустой объект (200).

Авторизация: Сервисный токен любой категории.

Rate limit: 1 request per minute, 1 min interval, burst 10

Returns

Promise<JamSubscriptionDetails>

Jam subscription details (empty object if never subscribed)

Throws

When API key is invalid or not a Service token (401/403)

Throws

When rate limit exceeded (429)

Throws

When network request fails or times out

Since

3.5.0

See

https://dev.wildberries.ru/docs/openapi/api-information#tag/Informaciya-o-prodavce/operation/getCommonV1Subscriptions

Example

typescript
const jam = await sdk.general.getJamSubscription();
if (jam.state === 'active') {
  console.log(`Jam ${jam.level} active until ${jam.till}`);
  console.log(`Source: ${jam.activationSource}, since: ${jam.since}`);
} else if (jam.state) {
  console.log(`Jam inactive (state: ${jam.state})`);
} else {
  console.log('Never subscribed to Jam');
}

getSellerRating()

ts
getSellerRating(): Promise<SellerRatingResponse>;

Defined in: modules/general/index.ts:486

Получить рейтинг продавца и количество отзывов

Возвращает пользовательский рейтинг продавца и общее количество отзывов.

Авторизация: Сервисный токен категории Вопросы и отзывы.

Rate limit: 1 request per minute, 1 min interval, burst 1

Returns

Promise<SellerRatingResponse>

Seller rating and review count

Throws

When API key is invalid or wrong token category (401/403)

Throws

When rate limit exceeded (429)

Throws

When network request fails or times out

Since

3.5.0

See

https://dev.wildberries.ru/docs/openapi/api-information#tag/Informaciya-o-prodavce/operation/getCommonV1Rating

Example

typescript
const rating = await sdk.general.getSellerRating();
console.log(`Rating: ${rating.valuation} (${rating.feedbackCount} reviews)`);

Made with ❤️ for the Wildberries developer community