General (general)
Description of the API, authorization, rate limits, and errors. Access to seller portal news and seller information. API connectivity check.
Description of the API, authorization, rate limits, and errors. Access to seller portal news and seller information. API connectivity check.
The Wildberries API provides sellers with tools to manage their store and obtain real-time and statistical information via the HTTP REST API protocol.
The main advantage of the API is the ability to automate processes through integration with the seller's information systems, such as ERP, WMS, OMS, CRM. With the WB API, sellers can manage their store without manually using the website interface.
Using the API to operate a store on Wildberries is a great way to:
- automate routine processes
- access up-to-date information
- optimize inventory management
The API documentation is provided in the Swagger OpenAPI format and can be used for import into other tools, such as Postman, or for generating client code in various programming languages using Swagger CodeGen.
For manual API testing you can use:
- Register in the seller's personal account.
- Go to the store settings and create an API token. The token will allow you to access the WB API. The token system lets you control who interacts with your data through the API and how.
- Develop an integration with the API using your own developers or outsource specialists. You can also connect partner services from our business solutions catalog.
Practical tips:
- Use the documentation.
Official WB API documentation will help you understand the functionality and capabilities of the API. It includes examples of possible requests and responses, a list of potential errors, rate limits, security rules, and more. - Regularly check the integration.
Ensure that you are transmitting data correctly and note the responses you receive to timely update the integration. Remember the restrictions and take into account the request limits. - Keep the API token secure.
Do not share it with third parties unnecessarily. Use only trusted services. If you detect suspicious activity, immediately delete and replace the token. - Contact technical support if needed.
- Stay updated on WB API news and changes in:
Technical support is conducted through dialogues in the seller's personal account. When creating a new support request, use the API category.
Main response status codes for requests in the WB API:
| Code | Description | How to resolve |
|---|---|---|
| 200 | Success | |
| 204 | Deleted/Updated/Confirmed | |
| 400 | Bad request | Check the request syntax |
| 401 | Unauthorized | Check the authorization token. The token category must match the API category. Additionally, the token may be: • expired • incorrect • missing from the request |
| 403 | Access denied | The token must not be generated by a deleted user. Access to the method must not be blocked. If you want to use the Jam methods, check your subscription in your personal account |
| 404 | Not found | Check the request URL |
| 409 | Status update error/Error adding label/etc | Check the request data. It must meet the service's requirements and limitations |
| 413 | The request body size exceeds the given limit | Reduce the number of objects in the request |
| 422 | Error processing request parameters/Unexpected result/etc | Check the request data. The request data must not contradict each other |
| 429 | Too many requests | Check the method rate limits and retry the request later |
| 5ХХ | Internal service error | Service is unavailable. Retry the request later or contact WB technical support |
details field in 404 and 429 errors — we add useful information there regarding the use of methods
Example of an error:
{
"title": "path not found",
"detail": "Please consult the https://dev.wildberries.ru/openapi/api-information",
...
"status": 404,
"statusText": "Not Found",
"timestamp": "2025-04-24T07:25:28Z"
}
The WB API has request rate limits. To evenly distribute the load, the token bucket algorithm is used. Limits for specific API methods are specified in the documentation.
For example:
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 minute | 300 requests | 200 milliseconds | 20 requests |
One request with a response code of 409 is counted as 5 requests
- Period — the time interval during which the maximum number of requests according to the limit can be sent.
- Limit — the maximum number of requests per period. In the example, up to 300 requests can be sent in one minute. Requests should be evenly distributed over time.
- Interval — the time gap for pauses between requests. In the example, it should be
60 seconds/300 requests—200 millisecondsor0.2 seconds. Use the interval to evenly distribute the sending of requests. - Burst — the maximum number of requests that can be sent simultaneously, without interval pauses. The allowed burst is also returned in the response header
X-Ratelimit-Remaining. It appears in all response statuses except for error429.
X-Ratelimit-Remaining is the number of requests that can currently be sent without pauses. The value of X-Ratelimit-Remaining decreases by one after each request. If X-Ratelimit-Remaining is 0 and you make the next request without a delay, you will receive a 429 error in response. The value of X-Ratelimit-Remaining is restored over time.
409 error will count as 5 requests with other statuses. In such cases, the value of X-Ratelimit-Remaining will decrease by 5 units immediately.
If you exceed the request rate limit, you will receive a 429 error. In this case, you need to wait a short period before making the next request. To determine how long you need to wait, use the headers from the 429 response:
X-Ratelimit-Retry— the number of seconds after which you can retry the request. If you attempt it earlier, you will continue to receive a429error.X-Ratelimit-Limit— the maximum allowable burst of requests, which will be replenished afterX-Ratelimit-Resetseconds.X-Ratelimit-Reset— the number of seconds after which the allowable burst of requests will be restored to the maximum value specified inX-Ratelimit-Limit.
Response example:
HTTP/1.1 429 Too Many Requests
...
X-Ratelimit-Reset: 29
X-Ratelimit-Retry: 2
...
X-Ratelimit-Limit: 10
You need API token to authenticate requests. It is valid for 180 days after creation. Add the token to the Authorization request header.
Four types of tokens are available for authorization:
Personal access token
- Purpose: An exclusive token with advanced features. It is designed to grant access to seller data only to your own programs, including corporate (on-premise) systems hosted on your own or third-party infrastructure.
Advanced features mean that over time, a personal access token will provide access to additional categories of seller data that are not available with the basic token. We will announce this in the news in advance. - Suitable for:
- a company's own software products or systems hosted on its own or third-party servers
- ready-made on-premise ERP/CRM systems, including local (packaged) versions of 1C hosted on company servers or user computers
- Restrictions: A personal access token provides access to sensitive information, so it must not be shared with third parties or used in cloud services. When creating the token, the system will display a liability warning — you must accept it to proceed.
You choose the token settings yourself. If you are unsure which parameters to specify, check with the developer or IT specialist responsible for the system you are connecting.
Service token
- Purpose: A special token for connecting a specific cloud service from the official Catalog of business solutions on Wildberries.
- Features: Select a service from the Catalog when creating the token. Then all necessary settings, including data categories and access levels, are filled in automatically. You only need to confirm the token creation and provide it to the service.
- Restrictions: Token is created for one service only and doesn't work with any other
Base token
- Purpose: An additional token that provides access to a limited set of seller data and is used in all cases where a service or personal access token is not suitable.
- Suitable for:
- testing integration on real data before launch
- other cases where you cannot use a service or personal access token
- Restrictions: You can only work with a limited set of data.
Test token
- Purpose: A special token for securely testing and debugging integrations in an isolated environment — the WB API sandbox.
- Suitable for:
- developing and debugging integrations without risk to real data
- exploring API capabilities and experimenting with methods
- testing new features before launching in the production environment
- Restrictions: A test token only works with the sandbox and provides access to generated test data. Real seller's data is not accessible.
- In your personal access account, go to the API Integrations section.
- Click + Create token. A window for creating token with two tabs will open. For all token types except Service token, select the Manual integration tab.
- Choose the token type.
- For base and personal access tokens:
- Enter the token name
- Select the API categories you will be working with
- Set the data access level: Read and Write or Read Only
| Category | Methods |
|---|---|
| Content | Categories, Subjects and Characteristics Creating Product Cards Product Cards Media-Files Tags |
| Analytics | Sales Funnel Search Queries Stocks Report Seller Analytics CSV Warehouses Remains Report Report on Products with Mandatory Labeling Retention Reports Paid Reception Paid Storage Sales by Regions Share of Brand in Sales Hidden Products Goods Return Report |
| Prices and Discounts | Prices and Discounts Promotions Calendar |
| Marketplace | FBS Orders Seller Warehouses Inventory DBS Orders In-Store Pickup |
| Statistics | Product Reports Financial Reports |
| Promotion | Campaigns Campaigns Creation Campaigns Management Campaign Parameters Finance Media Statistics |
| Feedbacks and Questions | Questions Feedbacks Response Templates |
| Buyers Chat | Buyers Chat |
| Supplies | FBW Supplies |
| Buyers Returns | Buyers Returns |
| Documents | Documents |
| Finance | Balance |
- Optionally, add a comment to the token. For a personal access token, check the I understand that the token should not be shared with third parties box.
- Click Create. A window with your token will appear.
- Click the Copy and close button — the window will close, and the token will be copied to the clipboard. After this, you will not be able to view the token in your personal account again.
- Save the token in a safe place. If you lose the token, create a new one.
The token is a JWT according to RFC 7519. To check if your token is valid and which categories of API methods are available with it, you can decode it.
Token fields
The token type can be determined by the list of fields from the decoded token payload:
| Token | acc value |
for valie |
t value |
|---|---|---|---|
| Base token | 1 |
The field is missing | false |
| Test token | 2 |
The field is missing | true |
| Personal access token | 3 |
self |
false |
| Service token | 4 |
asid:{Service ID} |
false |
Other fields:
| Field | Type | Description |
|---|---|---|
| id | UUIDv4 | Unique token ID |
| s | uint | Token properties bitmask |
| sid | UUIDv4 | Wildberries seller ID |
| exp | uint | Token lifetime, complies with RFC 7519: JSON Web Token (JWT) |
The remaining payload fields are for internal use and may be removed.
s field
The s field is a bitmask, an integer, each bit of which means the presence or absence of some option.
Learn more about bitmask
Bit values
| Bit position | Property (if bit is 1) |
|---|---|
| 1 | Access to Content |
| 2 | Access to Analytics |
| 3 | Access to Prices and discounts |
| 4 | Access to Marketplace |
| 5 | Access to Statistics |
| 6 | Access to Promotion |
| 7 | Access to Feedbacks and Questions |
| 9 | Access to Buyers chat |
| 10 | Access to Supplies |
| 11 | Access to Buyers returns |
| 12 | Access to Documents |
| 13 | Access to Finance |
| 30 | Read only token |
Token decoding will allow to check if the token is valid and which categories of API methods are available. You can decode the token on the separate page.
Connection Check{{ /ping }}
Checks:
- Whether the request successfully reaches the WB API.
- The validity of the authorization token and request URL.
- Whether the token category matches the service.
Each service has its own version of the method depending on the domain:
| Category | Request URL |
|---|---|
| Content | https://content-api.wildberries.ru/pinghttps://content-api-sandbox.wildberries.ru/ping |
| Analytics | https://seller-analytics-api.wildberries.ru/ping |
| Prices and Discounts | https://discounts-prices-api.wildberries.ru/pinghttps://discounts-prices-api-sandbox.wildberries.ru/ping |
| Marketplace | https://marketplace-api.wildberries.ru/ping |
| Statistics | https://statistics-api.wildberries.ru/pinghttps://statistics-api-sandbox.wildberries.ru/ping |
| Promotion | https://advert-api.wildberries.ru/pinghttps://advert-api-sandbox.wildberries.ru/ping |
| Feedbacks and Questions | https://feedbacks-api.wildberries.ru/pinghttps://feedbacks-api-sandbox.wildberries.ru/ping |
| Buyers Chat | https://buyer-chat-api.wildberries.ru/ping |
| Supplies | https://supplies-api.wildberries.ru/ping |
| Buyers Returns | https://returns-api.wildberries.ru/ping |
| Documents | https://documents-api.wildberries.ru/ping |
| Finance | https://finance-api.wildberries.ru/ping |
| Tariffs, News, Seller Information | https://common-api.wildberries.ru/ping |
Authorizations:
Responses
Response samples
- 200
- 401
- 429
{- "TS": "2024-08-16T11:19:05+03:00",
- "Status": "OK"
}Getting seller portal news{{ /api/communications/v2/news }}
The method allows getting news from the seller portal.
To receive a successful response, one of the parameters from or fromID must be specified.
You can get up to 100 news items per request.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 minute | 1 request | 1 minute | 10 requests |
Authorizations:
query Parameters
| from | string <date> Example: from=2025-02-06 Date from which to get news |
| fromID | integer <uint64> Example: fromID=7369 The news ID, starting from which — including it — you need to get the list of news |
Responses
Response samples
- 200
- 401
- 429
{- "data": [
- {
- "content": "Теперь в кампаниях ВБ.Медиа вы можете размещать баннеры для пользователей, которые взаимодействовали\nс товарами из определённой категории: покупали, искали, добавляли в корзину и избранное. Также можно\nвыбрать период, за который хотите учитывать эти действия.Например, вы продаёте обувь. Рекламу можно\nпоказать людям, которые добавляли в корзину или избранное товары из этой категории за последние 14\nдней. Возможно, пользователи, которые попадают под этот критерий, уже совершили покупку. Поэтому вы\nможете уточнить настройки показа: добавить параметр «Не покупал товар из категории „Обувь“ в последние\n14 дней». Так вероятность того, что ваш баннер приведёт к покупке, будет выше.Чтобы запустить рекламу,\nсоздайте в кабинете ВБ.Медиа кампанию «По показам» и на шаге 4 включите «Поведенческие параметры».\nЭти параметры можно комбинировать с таргетированием по предполагаемым интересам, полу, возрасту и\nрегиону.Подробнее о том, как настроить таргетинг, — в инструкции «По показам».Запустить рекламу на\nWildberries\n",
- "date": "2025-02-05T14:10:35+03:00",
- "header": "Новые настройки кампаний в ВБ.Медиа: таргетируйте рекламу в зависимости от того, как аудитория\nиспользует сервисы Wildberries\n",
- "id": 7369,
- "types": [
- {
- "id": 4,
- "name": "Маркетинг"
}
]
}, - {
- "content": "Добавили получение отчётов по текстам поисковых запросов в формате CSV. В описания методов «Создать\nотчёт» и «Получить отчёт» добавили описания и примеры моделей: • запросов — SearchReportTextReq, •\nуспешных ответов (статус-код 200) — SearchReportTextRes.В ответ метода «Поисковые запросы по товару»\nдобавили 8 полей и структуры price и medianPosition. Узнать больше можно в Журнале изменений.Эти методы\nдоступны только с подпиской «Джем»\n",
- "date": "2025-02-06T18:14:58+03:00",
- "header": "Изменения в API «Аналитики и данных»",
- "id": 7373,
- "types": [
- {
- "id": 8,
- "name": "API"
}, - {
- "id": 41,
- "name": "Аналитика продавца"
}
]
}
]
}Get seller information{{ /api/v1/seller-info }}
This method allows you to obtain the seller's name and account ID.
You can use any token in request, as long as the Test Environment option is not selected.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 minute | 1 request | 1 minute | 10 requests |
Authorizations:
Responses
Response samples
- 200
- 401
- 429
{- "name": "ИП Кружинин В. Р.",
- "sid": "e8923014-e233-47q8-898e-3cc86d67ea61",
- "tradeMark": "Flax Store"
}