Seller API Content

Queries limits:

Maximum of 100 requests per minute to all Content methods are allowed.

Public API for Content is designed for server-to-server data synchronization between Wildberries and Suppliers.
You download data from Wildberries to your computing resources for further operating it.
It is not allowed to use the Content API as an external database. If you exceed the requests limits, access to the API will be restricted.

Upload

Create and edit a card.

Upload a card

Creating a card is asynchronous, after sending the request is put in a queue for processing.

A product card is valid if at least one nomenclature has been created successfully.

Important. If there were errors during queue processing, the nomenclature is considered invalid.

How to create a card:

  1. Get parent categories using Parent categories method.
  2. Choose the category and get all subcategories using Product categories list.
  3. Choose the subcategory and get all available characteristics using characteristics methods. Use values from Configurator to get values of color, gender, country of origin, season and HS code.
  4. Send the request. If the response is Success (200) but the card was not created, check errors using List of failed nomenclature with errors method.

With one request you can create maximum 100 cards (imtID) and 30 nomenclatures (nmID) in each card. Maximum request size is 10 Mb.

The dimensions of the goods can only be specified in centimeters.

Authorizations:
HeaderApiKey
Request Body schema: application/json
Array
subjectID
required
integer

subcategory ID

required
Array of objects

Product variants, maximum 30 in one card.

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error description

object or string

Any additional errors

Request samples

Content type
application/json
Example
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": { }
}

Update a card

Edits product cards. If you need some product data, get it using Nomenclature list method.

You can not edit or delete barcodes but you can add new ones. You have not to send photos, video and tags and can not edit them.

If this method response is Success (200) but product card was not updated, check errors using List of failed nomenclature with errors method. Correct the request and try again.

With one request you can edit maximum 3000 nomenclatures (nmID). Maximum request size is 10 Mb.

The dimensions of the goods can only be specified in centimeters.

Authorizations:
HeaderApiKey
Request Body schema: application/json
required
Array
nmID
required
integer

WB article

vendorCode
required
string

Supplier's article

brand
string

Brand

title
string

Product title

description
string

Product description. The maximum number of characters depends on the product category. Standard - 2000, minimum - 1000, maximum - 5000.
More details about description rules in Product card filling rules in Instructions category of sellers portal.

object

Product dimensions in centimeters

Array of objects

Product characteristics

required
Array of objects

Product sizes.
If product has no sizes, send only barcodes.

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error description

object or string

Any additional errors

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": { }
}

Adding nomenclature to the card

Adds new nomenclature to the product card.
Adding nomenclature is asynchronous, after sending the request is put in a queue for processing.
Important. If the adding request passed but the nomenclature was not created, check errors using List of failed nomenclature with errors method. If the nomenclature is listed there, you should correct the reported errors in the adding nomenclature request and resend it.
Maximum request size is 10 Mb.

The dimensions of the goods can only be specified in centimeters.

Authorizations:
HeaderApiKey
Request Body schema: application/json
imtID
integer

imtID of the card

Array of objects

Nomenclature

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error description

object or string

Any additional errors

Request samples

Content type
application/json
{
  • "imtID": 987654321,
  • "cardsToAdd": [
    ]
}

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": { }
}

Merging or separating of nomenclatures

Merges nomenclatures (nmID) in same product card (imtID) or separate them.

To merge nomenclatures, the request with a list of nomenclatures has to be sent with the targetIMT parameter specified in the body of the request. In this case, all nomenclatures will be merged under the imtID specified in the targetIMT.

To separate the nomenclature from the product card, it is necessary to pass this nomenclature without the targetIMT parameter in the request body.
This creates a new imtID for the transferred nomenclature.
If several nomenclatures are passed in the separating request, they will all be automatically merged under one new imtID.
To assign a unique imtID to each nomenclature, it is necessary to send one nomenclature per query. For nomenclatures that are not transferred in the request, no changes will be made.
Maximum request size is 10 Mb.

Important. It is possible to merge nomenclatures containing only the same items.
Important. One product card (inside one imtID) cannot contain more than 30 nomenclatures (nmID).

Authorizations:
HeaderApiKey
Request Body schema: application/json
One of
targetIMT
required
integer

Seller's existing imtID, in which nomenclatures have to be merged

nmIDs
required
Array of integers

nmID to be merged, maximum 30

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error description

object or string

Any additional errors

Request samples

Content type
application/json
Example
{
  • "targetIMT": 123,
  • "nmIDs": [
    ]
}

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": { }
}

Generation of barcodes

Generates array of unique barcodes to create size of nomenclature in product card.

Authorizations:
HeaderApiKey
Request Body schema: application/json
required
count
integer

Number of barcodes to be generated, maximum 5,000

Responses

Response Schema: application/json
data
Array of strings

An array of generated barcodes

error
boolean

Error flag

errorText
string

Error description.

additionalErrors
string

Any additional errors

Request samples

Content type
application/json
{
  • "count": 100
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

View

Getting information about created product cards, nomenclatures and sizes.

Nomenclature list

Method provides list of created nomenclatures with different filters, pagination and sorting.

This method is available by token with the option Promotion

Important. Nomenclatures in the trash, will not issue in the response of method.
You can get such nomenclatures using by method "List of nomenclatures that are in the trash"

How to work with cursor/list:
To get full list of nomenclatures, if their number exceed 100, user need to use pagination.

  1. Make first request (all listed params are required):
            {
              "settings": {
    "cursor": { "limit": 100 }, "filter": { "withPhoto": -1 } } }

    In addition you can add "textSearch" and sort.
            "sort": {
              "sortColumn": "",
              "ascending": false
            }
  2. From last part of response list, copy 2 strings from cursor field response:
    • "updatedAt": "***",
    • "nmID": ***,
  3. Paste copied strings in new request.
  4. Repeat 2 and 3, until total will be less than limit in response.
    This will mean you got all cards.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Example: locale=ru

Language of name, value and object (ru, en, zh)

Request Body schema: application/json
required
object

Settings

Responses

Response Schema: application/json
Array of objects

Product cards

object

Pagination

Request samples

Content type
application/json
{
  • "settings": {
    }
}

Response samples

Content type
application/json
{}

List of failed nomenclature with errors

Method allows to get list of nomenclature's and list of errors happened during creation of product card.
Warning: to delete nomenclature from failed you need to repeat request with corrected errors of creation product card.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Example: locale=en

Language of multi-lang parameters

Responses

Response Schema: application/json
Array of objects
error
boolean

Error flag.

errorText
string

Error description.

additionalErrors
string or null

Any additional errors.

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Limits for the product cards

The method allows to get separately free and paid vendor limits for creating product cards.
To calculate the number of cards that can be created, use the formula: (freeLimits + paidLimits) - Number of cards created.
All cards that can be obtained using the "Nomenclature list" and "List of nomenclatures that are in the trash" methods are considered created.

Authorizations:
HeaderApiKey

Responses

Response Schema: application/json
object
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string or null

Additional errors

Response samples

Content type
application/json
{
  • "data": {
    },
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Configurator

Parent categories list

Method provides list of all parent categories of products.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Example: locale=en

Product name language (ru, en, zh)

Responses

Response Schema: application/json
Array of objects
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

Product category list

Using this method, you can get a list of product categories by a text filter (category name).

To get a list of all categories, you need to specify “top” parameter bigger than available quantity of categories (eg top=8000)

As of 03/27/2023, there are 7440 categories in the list. The number of available categories may change.

Authorizations:
HeaderApiKey
query Parameters
name
string
Example: name=Socks

Search by product name (any supported language)

limit
integer
Example: limit=1000

Number of search results, maximum 1,000

locale
string
Example: locale=en

Response language (ru, en, zh)

offset
integer
Example: offset=5000

How many results to skip

parentID
integer
Example: parentID=1000

Parent category ID

Responses

Response Schema: application/json
Array of objects

Categories and subcategories

error
boolean

Error flag

errorText
string

Error text

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Subject characteristics (subcategories)

Returns list of the subject characteristics by its ID

Authorizations:
HeaderApiKey
path Parameters
subjectId
required
integer
Example: 105

Subcategory ID

query Parameters
locale
string
Example: locale=en

Language of subjectName and name (ru, en, zh)

Responses

Response Schema: application/json
Array of objects
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

Color

Provides values of color characteristic.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Example: locale=en

Language of subjectName and name (ru, en, zh)

Responses

Response Schema: application/json
Array of objects
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

Gender

Provides values of sex characteristic.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Example: locale=en

Language of subjectName and name (ru, en, zh)

Responses

Response Schema: application/json
data
Array of strings

List of values for sex characteristic.

error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

Country of origin

Provides value of characteristic country of origin.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Example: locale=en

Language of subjectName and name (ru, en, zh)

Responses

Response Schema: application/json
Array of objects
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

Season

Provide values of season characteristic.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Example: locale=en

Language of subjectName and name (ru, en, zh)

Responses

Response Schema: application/json
data
Array of strings

Array of values for season characteristic.

error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

HS codes

Method provides list of HS codes by category name and filter by HS code.

Authorizations:
HeaderApiKey
query Parameters
subjectID
required
integer
Example: subjectID=105

Subject ID

search
integer
Example: search=6106903000

Search by HS code. Works only with the subjectID parameter

locale
string
Example: locale=en

Language (ru, en, zh) of the subjectName and name fields values. Not used in a sandbox

Responses

Response Schema: application/json
Array of objects

Data

error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

VAT rate

Using this method, you can obtain a list of values for the VAT rate characteristic

Authorizations:
HeaderApiKey
query Parameters
locale
required
string
Example: locale=ru

Language of the data elements values (ru, en, zh). Not used in the sandbox

Responses

Response Schema: application/json
data
Array of strings
error
boolean

Error flag

errorText
string

Error text

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Media files

Edit media files

Edits product (nomenclature) media files.

Attention. New media files (data) replace old ones (mediaFiles). To add new files, set links both to new and old files.

Requirements to images:

  • maximum images for each product (nomenclature) — 30,
  • minimal resolution – 700 × 900 pixels,
  • maximum size — 32 MB,
  • minimal quality — 65%,
  • formats — JPG, PNG, BMP, GIF (static), WebP.

Requirements video:

  • maximum video for each product (nomenclature),
  • maximum size — 50 MB,
  • formats — MOV, MP4.

If one or several images do not meet the requirements, no images will be uploaded even if you have the success response (200).

Authorizations:
HeaderApiKey
Request Body schema: application/json
required
nmId
integer

Wildberries article

data
Array of strings

Links to images in the order that they are on the card

Responses

Response Schema: application/json
data
object
error
boolean

Error flag

errorText
string

Error description

additionalErrors
object

Additional errors

Request samples

Content type
application/json

Response samples

Content type
application/json
{
  • "data": { },
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Add media files

Adds one media file for the product (nomenclature).

Requirements to images:

  • maximum images for each product (nomenclature) — 30,
  • minimal resolution – 700 × 900 pixels,
  • maximum size — 32 МB,
  • minimal quality — 65%,
  • formats — JPG, PNG, BMP, GIF (static), WebP.

Requirements video:

  • maximum video for each product (nomenclature),
  • maximum size — 50 MB;
  • formats — MOV, MP4.
Authorizations:
HeaderApiKey
header Parameters
X-Nm-Id
required
string
Example: 213864079

Wildberries article

X-Photo-Number
required
integer
Example: 2

Number of media file, starting from 1. To add the video set 1.

To add the image to the uploaded ones, set file the number more then number of uploaded files.

Request Body schema: multipart/form-data
required
uploadfile
string <binary>

Responses

Response Schema: application/json
data
object
error
boolean

Error flag

errorText
string

Error description

additionalErrors
object

Additional errors

Response samples

Content type
application/json
{
  • "data": { },
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Tags

Service for operating with the tags of product cards. Tags are designed to quickly find a product card in your user panel.

Tags list

The method allows to get a list of existing seller's tags.

Authorizations:
HeaderApiKey

Responses

Response Schema: application/json
object
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string

Additional errors

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "error": false,
  • "errorText": "",
  • "additionalErrors": ""
}

Creating a tag

The method allows you to create a tag.
It is possible to create 15 tags.
The maximum length of a tag is 15 characters.

Authorizations:
HeaderApiKey
Request Body schema: application/json
required
color
string

Tag color.

Available colors:
D1CFD7 - grey
FEE0E0 - red
ECDAFF - purple
E4EAFF - blue
DEF1DD - green
FFECC7 - yellow

name
string

Tag name

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string or null

Additional errors

Request samples

Content type
application/json
{
  • "color": "D1CFD7",
  • "name": "Sale"
}

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Updating the tag

The method allows to change the information about the tag (name and color).

Authorizations:
HeaderApiKey
path Parameters
id
required
integer
Example: 1

Numeric tag identifier

Request Body schema: application/json
required
color
string

Tag color

name
string

Tag name

Responses

Response Schema: application/json
One of
data
object or null
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string or null

Additional errors

Request samples

Content type
application/json
{
  • "color": "D1CFD7",
  • "name": "Sale"
}

Response samples

Content type
application/json
Example
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Removing the tag

The method allows to remove the tag.

Authorizations:
HeaderApiKey
path Parameters
id
required
integer
Example: 1

Numeric tag identifier

Responses

Response Schema: application/json
One of
data
object or null
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string or null

Additional errors

Response samples

Content type
application/json
Example
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Tag management in the product card

The method allows to add tags to the product card and remove tags from the product card.
When removing a tag from a product card, the tag itself is not removed.
It is possible to add 15 tags to a product card.

Authorizations:
HeaderApiKey
Request Body schema: application/json
required
nmID
integer

WB article

tagsIDs
Array of integers

An array of numeric tag IDs.
When removing a tag from a product card, the tag itself is not removed.
To add tags to existing ones in the product card, you need to specify in the request the new tags and the tags that are already exist in the product card.

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error description

additionalErrors
string or null

Additional errors

Request samples

Content type
application/json
{
  • "nmID": 179891389,
  • "tagsIDs": [
    ]
}

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": null
}

Trash

Delete nomenclature

Moves the nomenclature into trash for 30 days. After 30 days this nomenclature will be deleted

Authorizations:
HeaderApiKey
Request Body schema: application/json
required
Array
nmIDs
Array of integers

Wildberries articles to delete, maximum 1,000

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error text

additionalErrors
object

Additional errors

Request samples

Content type
application/json
{
  • "nmIDs": [
    ]
}

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": { }
}

Recover from trash

Returns the nomenclature from trash IMPORTANT: When restoring the nomenclature from the trash, its imtID doesn't remain the same as it was for the item in the trash.

Authorizations:
HeaderApiKey
Request Body schema: application/json
required
Array
nmIDs
integer

Wildberries articles, maximum 1,000

Responses

Response Schema: application/json
data
object or null
error
boolean

Error flag

errorText
string

Error text

additionalErrors
object

Additional errors

Request samples

Content type
application/json
{
  • "nmIDs": [
    ]
}

Response samples

Content type
application/json
{
  • "data": null,
  • "error": false,
  • "errorText": "",
  • "additionalErrors": { }
}

Nomenclatures in trash

Method provides list of nomenclatures in trash.

This method is available by token with the option Promotion


Workflow:
To get full list of nomenclatures, if their number exceed 100, user need to use pagination.

  1. Make the first request (all listed parameters are required):
            {
              "settings": {
    "cursor": { "limit": 100 } } }

  2. From last part of response list copy 2 strings from cursor field response:
    • "trashedAt": "***",
    • "nmID": ***,
  3. Paste copied strings in cursor request parameter, repeat the method request.
  4. Repeat 2 and 3, until total will be less than limit in response.
    This will mean you got all cards.

Optionally, you can add search and sorting. See description in Request Body schema.
Request samples provide an example request with all possible parameters.

Authorizations:
HeaderApiKey
query Parameters
locale
string
Enum: "ru" "en" "zh"

Language of name, value and object parameters

Request Body schema: application/json
required
object

Settings

Responses

Response Schema: application/json
Array of objects

The list of requested product cards

object

Request samples

Content type
application/json
{
  • "settings": {
    }
}

Response samples

Content type
application/json
{}