---
slug: "wildberries"
name: "Wildberries API"
vendor: "Wildberries"
industry: "marketplaces"
docsUrl: "https://dev.wildberries.ru/openapi/api-information"
version: 2
updatedAt: "2026-10-24"
---

# Wildberries API

Отрасль: Маркетплейсы. Актуально на 2026-10-24.

API маркетплейса Wildberries для продавцов. Разделён на категории, у каждой свой хост: контент (карточки товаров), цены и скидки, маркетплейс (сборочные задания FBS, поставки, остатки), статистика, аналитика, продвижение, вопросы и отзывы, чат с покупателями, поставки FBW, возвраты, документы, тарифы. Токен выпускается в кабинете продавца под нужные категории.

## Сценарии

### Собрать заказы FBS и передать поставку в доставку

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

1. Создай токен в кабинете продавца с категорией «Маркетплейс» и проверь его запросом /ping на хосте https://marketplace-api.wildberries.ru.
2. Забери новые заказы: GET /api/v3/orders/new. Каждый заказ — сборочное задание с id, артикулом и складом.
3. Создай поставку: POST /api/v3/supplies с name. В ответе — id поставки вида WB-GI-1234567.
4. Добавь задания в поставку: PATCH /api/marketplace/v3/supplies/{supplyId}/orders с массивом orders (до 100 за запрос). Задания перейдут в статус confirm.
5. Напечатай стикеры: POST /api/v3/orders/stickers с type (png, svg или zpl), width и height (58×40 или 40×30) и orders — до 100 заданий. Наклей стикер на каждую упаковку.
6. Когда всё собрано, закрой поставку: PATCH /api/v3/supplies/{supplyId}/deliver. Задания уйдут в доставку.

```bash
H="Authorization: $WB_TOKEN"
API=https://marketplace-api.wildberries.ru

curl "$API/api/v3/orders/new" -H "$H"

SUPPLY=$(curl -s -X POST "$API/api/v3/supplies" -H "$H" -H 'Content-Type: application/json' \
  -d '{"name": "Поставка 24.10"}' | jq -r .id)

curl -X PATCH "$API/api/marketplace/v3/supplies/$SUPPLY/orders" -H "$H" -H 'Content-Type: application/json' \
  -d '{"orders": [5632423, 5632424]}'

curl -X POST "$API/api/v3/orders/stickers?type=png&width=58&height=40" -H "$H" -H 'Content-Type: application/json' \
  -d '{"orders": [5632423, 5632424]}'

curl -X PATCH "$API/api/v3/supplies/$SUPPLY/deliver" -H "$H"
```

### Обновить остатки на своём складе

Синхронизировать остатки из учётной системы, чтобы WB не продал то, чего нет.

1. Нужен токен с категорией «Маркетплейс» и ID твоего склада продавца (warehouseId) — он виден в кабинете в разделе складов.
2. Остатки задаются по размерам товара: в каждой позиции chrtId (ID размера из карточки: sizes[].chrtID в списке карточек) и amount — количество.
3. Отправь остатки: PUT /api/v3/stocks/{warehouseId} — до 1 000 позиций за запрос. Успех — ответ 204 без тела.
4. Поля с неверными именами молча игнорируются: если остатки не поменялись, проверь написание chrtId и amount.
5. Лимит категории — 300 запросов в минуту. При 429 жди столько секунд, сколько в заголовке X-Ratelimit-Retry.

```bash
curl -X PUT "https://marketplace-api.wildberries.ru/api/v3/stocks/<warehouseId>" \
  -H "Authorization: $WB_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"stocks": [{"chrtId": 12345678, "amount": 10}, {"chrtId": 12345679, "amount": 0}]}'
```

### Изменить цены и скидки

Массово обновить цены: переоценка, акция, синхронизация с прайсом.

1. Нужен токен с категорией «Цены и скидки», хост https://discounts-prices-api.wildberries.ru.
2. Посмотри текущие цены: GET /api/v2/list/goods/filter с limit (до 1 000) и offset, или с filterNmID для одного товара.
3. Загрузи новые: POST /api/v2/upload/task — в data список товаров с nmID, price (цена до скидки, в рублях, целое число) и discount (скидка в процентах). До 1 000 товаров за запрос, цена и скидка не могут быть пустыми одновременно.
4. Загрузка обрабатывается заданием: в ответе id задания. Лимит — 10 запросов за 6 секунд.

```bash
curl -X POST https://discounts-prices-api.wildberries.ru/api/v2/upload/task \
  -H "Authorization: $WB_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"data": [{"nmID": 123, "price": 999, "discount": 30}, {"nmID": 456, "price": 2490, "discount": 15}]}'
```

### Выгрузить все карточки товаров

Получить список своих товаров с артикулами WB, артикулами продавца и размерами — для сопоставления с учётной системой.

1. Нужен токен с категорией «Контент», хост https://content-api.wildberries.ru. Лимит — 100 запросов в минуту на все методы категории.
2. Запроси первую страницу: POST /content/v2/get/cards/list с settings.cursor.limit = 100 и settings.filter.withPhoto = -1 (все карточки).
3. Для следующей страницы скопируй из ответа cursor.updatedAt и cursor.nmID в settings.cursor запроса.
4. Повторяй, пока cursor.total не станет меньше limit — значит, получены все карточки.
5. Из каждой карточки сохрани nmID, vendorCode и sizes[].chrtID — по chrtID обновляются остатки.

```bash
curl -X POST https://content-api.wildberries.ru/content/v2/get/cards/list \
  -H "Authorization: $WB_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"settings": {"cursor": {"limit": 100}, "filter": {"withPhoto": -1}}}'

# Следующая страница — с курсором из предыдущего ответа
curl -X POST https://content-api.wildberries.ru/content/v2/get/cards/list \
  -H "Authorization: $WB_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"settings": {"cursor": {"limit": 100, "updatedAt": "2023-12-06T11:17:00.96577Z", "nmID": 123654123}, "filter": {"withPhoto": -1}}}'
```

### Создать карточку товара

Завести новый товар: найти предмет, заполнить обязательные характеристики и отправить карточку.

1. Найди предмет (категорию): GET /content/v2/object/all с name — в ответе subjectID.
2. Узнай характеристики предмета: GET /content/v2/object/charcs/{subjectId}. Обязательные поля отмечены required; для каждой характеристики указан тип значения и единица измерения.
3. Отправь карточку: POST /content/v2/cards/upload с subjectID и variants — вариантами товара (до 30 на карточку), у каждого vendorCode, title, description, brand, sizes и characteristics.
4. Создание асинхронное: успешный ответ не значит, что карточка создана. Через минуту-две проверь ошибки методом /content/v2/cards/error/list и найди карточку в списке.
5. Править карточку — POST /content/v2/cards/update, но она перезаписывается целиком: передавай все поля, а не только изменённые.

```bash
curl -G https://content-api.wildberries.ru/content/v2/object/all \
  -H "Authorization: $WB_TOKEN" \
  --data-urlencode 'name=Кружки' -d limit=10

curl https://content-api.wildberries.ru/content/v2/object/charcs/<subjectID> -H "Authorization: $WB_TOKEN"

curl -X POST https://content-api.wildberries.ru/content/v2/cards/upload \
  -H "Authorization: $WB_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '[{
        "subjectID": <subjectID>,
        "variants": [{
          "vendorCode": "MUG-WHITE-330",
          "title": "Кружка керамическая 330 мл",
          "description": "Белая керамическая кружка, подходит для посудомоечной машины.",
          "brand": "Моя марка",
          "sizes": [{"price": 990, "skus": ["2000000000017"]}],
          "characteristics": [{"id": <id характеристики>, "value": ["керамика"]}]
        }]
      }]'
```

## Базовые URL

- Боевой (Контент): `https://content-api.wildberries.ru`
- Тестовый (Контент): `https://content-api-sandbox.wildberries.ru`
- Боевой (Цены и скидки): `https://discounts-prices-api.wildberries.ru`
- Тестовый (Цены и скидки): `https://discounts-prices-api-sandbox.wildberries.ru`
- Боевой (Маркетплейс): `https://marketplace-api.wildberries.ru`
- Боевой (Статистика): `https://statistics-api.wildberries.ru`
- Тестовый (Статистика): `https://statistics-api-sandbox.wildberries.ru`
- Боевой (Аналитика): `https://seller-analytics-api.wildberries.ru`
- Боевой (Продвижение): `https://advert-api.wildberries.ru`
- Боевой (Вопросы и отзывы): `https://feedbacks-api.wildberries.ru`
- Боевой (Чат с покупателями): `https://buyer-chat-api.wildberries.ru`
- Боевой (Поставки): `https://supplies-api.wildberries.ru`
- Боевой (Возвраты): `https://returns-api.wildberries.ru`
- Боевой (Документы): `https://documents-api.wildberries.ru`
- Боевой (Тарифы, Новости): `https://common-api.wildberries.ru`

## Авторизация

Тип: API-ключ

Токен создаётся в кабинете продавца: «Настройки» → «Доступ к API» → выбрать категории → «Создать токен». Сохраните его сразу — повторно посмотреть нельзя. Токен — JWT, действует 180 дней. Передаётся в заголовке `Authorization`.

Типы токенов: стандартный (полный доступ к выбранным категориям), тестовый (работает только в песочнице) и «только на чтение». Категория токена должна совпадать с категорией вызываемого API, иначе будет `401`.

Проверить доступ можно методом `/ping` на хосте категории, например `https://content-api.wildberries.ru/ping`. Ответ:

```
{"TS": "...", "Status": "OK"}
```

## Методы

### POST /content/v2/get/cards/list — Список карточек товаров

Хост «Контент». Возвращает созданные карточки с курсорной пагинацией.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `locale` | query | string | нет | Язык |
| `settings` | body | object | да | Настройки выборки |
| `settings.cursor.limit` | body | integer | нет | Количество карточек на странице |
| `settings.filter.withPhoto` | body | integer | нет | Фильтр по наличию фото; -1 — все |

Пример запроса:

```
{
  "settings": {
    "cursor": {
      "limit": 100
    },
    "filter": {
      "withPhoto": -1
    }
  }
}
```

### POST /content/v2/cards/upload — Создание карточек товаров

Создание обрабатывается асинхронно; ошибки смотрят в `/content/v2/cards/error/list`.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `subjectID` | body | integer | да | Предмет (категория) |
| `variants` | body | array | да | Варианты товара, до 30 на карточку |

### POST /content/v2/cards/update — Редактирование карточек

Карточка перезаписывается целиком — передавайте все параметры.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `nmID` | body | integer | да | Артикул WB |
| `vendorCode` | body | string | да | Артикул продавца |
| `sizes` | body | array | да | Размеры |
| `brand` | body | string | нет | Бренд |
| `title` | body | string | нет | Наименование, до 60 символов |
| `description` | body | string | нет | Описание |
| `characteristics` | body | array | нет | Характеристики |

### GET /content/v2/object/all — Список предметов

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `locale` | query | string | нет | Язык |
| `name` | query | string | нет | Поиск по названию |
| `limit` | query | integer | нет | По умолчанию 30, максимум 1 000 |
| `offset` | query | integer | нет | Смещение |
| `parentID` | query | integer | нет | Родительская категория |

### GET /content/v2/object/charcs/{subjectId} — Характеристики предмета

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `subjectId` | path | integer | да | ID предмета |
| `locale` | query | string | нет | Язык |

### POST /api/v2/upload/task — Установка цен и скидок

Хост «Цены и скидки». До 1 000 товаров в запросе; цена и скидка не могут быть пустыми одновременно.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `data` | body | array | да | Товары с ценами и скидками |

### GET /api/v2/list/goods/filter — Товары с ценами

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `limit` | query | integer | да | Максимум 1 000 |
| `offset` | query | integer | нет | Смещение |
| `filterNmID` | query | integer | нет | Фильтр по артикулу WB |

### PUT /api/v3/stocks/{warehouseId} — Обновление остатков

Хост «Маркетплейс». Успех — `204`; поля с неверными именами молча игнорируются.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `warehouseId` | path | integer | да | ID склада продавца |
| `stocks` | body | array | да | Остатки, от 1 до 1 000 позиций |

### GET /api/v3/orders/new — Новые сборочные задания

Хост «Маркетплейс». Возвращает все новые сборочные задания (FBS). Параметров нет.

### GET /api/v3/orders — Сборочные задания

Информация о заданиях без текущего статуса, не больше чем за 30 дней.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `limit` | query | integer | да | От 1 до 1 000 |
| `next` | query | integer | да | Пагинация: первый запрос — 0, далее значение next из ответа |
| `dateFrom` | query | integer | нет | Начало периода, Unix timestamp; по умолчанию 30 дней назад |
| `dateTo` | query | integer | нет | Конец периода, Unix timestamp |

### POST /api/v3/orders/status — Статусы сборочных заданий

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `orders` | body | array | да | ID заданий, от 1 до 1 000 |

### POST /api/v3/supplies — Создание поставки

Возвращает ID поставки.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `name` | body | string | да | Название, 1–128 символов |

### PATCH /api/marketplace/v3/supplies/{supplyId}/orders — Добавить задания в поставку

Добавляет до 100 сборочных заданий к поставке и переводит их в статус `confirm`. Может перемещать задания между активными поставками.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `supplyId` | path | string | да | ID поставки, например WB-GI-1234567 |
| `orders` | body | array | да | ID сборочных заданий, от 1 до 100 |

### PATCH /api/v3/supplies/{supplyId}/deliver — Передать поставку в доставку

Закрывает поставку и переводит её задания в статус доставки.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `supplyId` | path | string | да | ID поставки |

### POST /api/v3/orders/stickers — Стикеры сборочных заданий

Стикеры для заданий в статусе `confirm`.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `type` | query | string | да | svg, zplv, zplh или png |
| `width` | query | integer | да | 58 или 40 |
| `height` | query | integer | да | 40 или 30 |
| `orders` | body | array | да | ID заданий, от 1 до 100 |

### PATCH /api/v3/orders/{orderId}/cancel — Отмена сборочного задания

Переводит задание в статус отмены продавцом.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `orderId` | path | integer | да | ID сборочного задания |

## Нюансы

- У каждой категории свой хост и свой токен-доступ; токен без нужной категории даёт `401`.
- Лимиты работают по алгоритму token bucket: допустимы всплески, а `X-Ratelimit-Remaining` показывает, сколько запросов можно сделать без задержки.
- При `429` приходят заголовки `X-Ratelimit-Retry` (через сколько секунд повторять), `X-Ratelimit-Limit` (размер всплеска) и `X-Ratelimit-Reset` (через сколько секунд всплеск восстановится). Повтор раньше `Retry` снова вернёт `429`.
- В категории «Маркетплейс» ответ `409` засчитывается как 5 запросов.
- Создание карточек асинхронное: успешный ответ не гарантирует создание, ошибки смотрят отдельным методом.
- Обновление карточки перезаписывает её целиком.

## Ошибки

| Код | Описание |
|---|---|
| `200` | Успешно |
| `204` | Удалено, обновлено или подтверждено |
| `400` | Неправильный запрос |
| `401` | Не авторизован: проверьте токен и его категорию |
| `403` | Доступ запрещён: токен удалённого пользователя или метод заблокирован |
| `404` | Не найдено: проверьте URL |
| `409` | Ошибка обновления статуса или стикера |
| `413` | Слишком большое тело запроса |
| `422` | Ошибка обработки параметров |
| `429` | Слишком много запросов |
| `5XX` | Внутренняя ошибка сервиса |

## Ограничения

- Контент — 100 запросов в минуту на все методы категории на аккаунт продавца.
- Создание карточек — до 100 объединённых карточек (imtID) в запросе, до 30 nmID в карточке, до 10 МБ.
- Цены и скидки — 10 запросов за 6 секунд; до 1 000 товаров в загрузке цен.
- Маркетплейс — 300 запросов в минуту на продавца; добавление задания в поставку — 1 000 в минуту.
- Новости — 10 запросов за 10 минут.

## Источники

- [Общая информация об API](https://dev.wildberries.ru/openapi/api-information)
- [Работа с товарами](https://dev.wildberries.by/en/openapi/work-with-products)
- [Сборочные задания FBS](https://dev.wildberries.by/en/openapi/orders-fbs)

---

Если этого недостаточно — официальная документация: https://dev.wildberries.ru/openapi/api-information
JSON: https://mcp-everything.ru/api/integrations/wildberries. MCP: https://mcp-everything.ru/mcp
