Analytics and Data (analytics)
Data on campaigns finances, promotion statistics, and seller analytics.
Campaigns statistics{{ /adv/v2/fullstats }}
Returns campaign statistics.
Data will be returned for campaigns with statuses 7, 9, and 11
dates
parameter or the interval
parameter, but not both.You can send a request with only the campaign ID. In this case, data for the last 24 hours will be returned, but not for the entire campaign period.
Authorizations:
Request Body schema: application/jsonrequired
id | integer Campaign ID |
dates | Array of strings <date> [ items <date > ] Dates for which information needs to be provided. |
Responses
Request samples
- Payload
Request with dates
[- {
- "id": 8960367,
- "dates": [
- "2023-10-07",
- "2023-10-06"
]
}, - {
- "id": 9876543,
- "dates": [
- "2023-10-07",
- "2023-12-06"
]
}
]
Response samples
- 200
- 400
- 401
- 429
Response for a request with the field date
[- {
- "views": 1052,
- "clicks": 2,
- "ctr": 0.19,
- "cpc": 0.09,
- "sum": 177.7,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "dates": [
- "2023-10-07",
- "2023-10-06"
], - "days": [
- {
- "date": "2023-10-06T03:00:00+03:00",
- "views": 414,
- "clicks": 1,
- "ctr": 0.24,
- "cpc": 70,
- "sum": 70,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "apps": [
- {
- "views": 228,
- "clicks": 0,
- "ctr": 0,
- "cpc": 0,
- "sum": 38.71,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "nm": [
- {
- "views": 25,
- "clicks": 0,
- "ctr": 0,
- "cpc": 0,
- "sum": 4,
- "atbs": 0,
- "orders": 0,
- "cr": 0,
- "shks": 0,
- "sum_price": 0,
- "name": "Тапочки",
- "nmId": 111111111111
}
], - "appType": 1
}
]
}
], - "boosterStats": [
- {
- "date": "2023-10-07T00:00:00Z",
- "nm": 170095908,
- "avg_position": 348
}
], - "advertId": 10524818
}
]
Statistics of an automatic campaign by phrase clusters{{ /adv/v2/auto/stat-words }}
Returns clusters of key phrases (sets of similar ones) for which products were shown in the campaign, and the number of displays for them. Only those phrases for which products were shown at least once are included in the method's response.
Information is updated every 15 minutes.
Authorizations:
query Parameters
id required | integer Example: id=1234 Campaign ID |
Responses
Response samples
- 200
- 400
- 401
- 429
{- "excluded": [
- "Samsung",
- "Xiaomi"
], - "clusters": [
- {
- "cluster": "Phone",
- "count": 100,
- "keywords": [
- "Телефон",
- "Мобильный телефон"
]
}
]
}
Campaign statistics by key phrases{{ /adv/v1/stat/words }}
The method allows to get search campaign statistics by key phrases.
The information updates approximately every half hour.
Authorizations:
query Parameters
id required | integer Example: id=1 Campaign ID |
Responses
Response samples
- 200
- 401
- 429
{- "words": {
- "phrase": [ ],
- "strong": [ ],
- "excluded": [ ],
- "pluse": [
- "детское постельное белье для мальчика 1.5"
], - "keywords": [
- {
- "keyword": "постельное белье 1.5",
- "count": 772
}
], - "fixed": true
}, - "stat": [
- {
- "advertId": 7703570,
- "keyword": "Всего по кампании",
- "advertName": "",
- "campaignName": "Бельё",
- "begin": "2023-07-03T15:15:38.287441+03:00",
- "end": "2023-07-03T15:15:38.287441+03:00",
- "views": 1846,
- "clicks": 73,
- "frq": 1.03,
- "ctr": 3.95,
- "cpc": 7.88,
- "duration": 769159,
- "sum": 575.6
}, - {
- "advertId": 7703570,
- "keyword": "постельное белье 1.5 детское",
- "advertName": "",
- "campaignName": "Бельё",
- "begin": "2023-07-03T15:15:38.287441+03:00",
- "end": "2023-07-03T15:15:38.287441+03:00",
- "views": 1846,
- "clicks": 73,
- "frq": 1.03,
- "ctr": 3.95,
- "cpc": 7.88,
- "duration": 769159,
- "sum": 575.6
}
]
}
Statistics on keywords for Automatic campaigns and Auctions{{ /adv/v0/stats/keywords }}
Returns statistics on keywords for each day the campaign was active.
Data can be retrieved for a maximum of 7 days in one request.
Information is updated every hour.
Authorizations:
query Parameters
advert_id required | integer Example: advert_id=123456789 Campaign ID |
from required | string <date> Example: from=2024-08-10 Period start |
to required | string <date> Example: to=2024-08-12 Period end |
Responses
Response samples
- 200
- 400
- 401
- 429
{- "keywords": [
- {
- "date": "2024-08-12",
- "stats": [
- {
- "clicks": 68,
- "ctr": 3.73,
- "keyword": "светильники",
- "sum": 565.75,
- "views": 1825
}
]
}
]
}
Receiving costs history{{ /adv/v1/upd }}
The method allows to get a costs history
Authorizations:
query Parameters
from required | string <date> Example: from=2023-07-31 Beginning of the interval |
to required | string <date> Example: to=2023-08-02 End of interval. |
Responses
Response samples
- 200
- 400
- 401
- 429
[- {
- "updNum": 0,
- "updTime": "2023-07-31T12:12:54.060536+03:00",
- "updSum": 24,
- "advertId": 3355881,
- "campName": "лук лучок",
- "advertType": 6,
- "paymentType": "Баланс",
- "advertStatus": 9
}, - {
- "updNum": 0,
- "updTime": null,
- "updSum": 107,
- "advertId": 3366882,
- "campName": "золотая луковица",
- "advertType": 8,
- "paymentType": "Счет",
- "advertStatus": 11
}
]
Receiving the history of account top-ups{{ /adv/v1/payments }}
The method allows you to get a history of top-ups.
Authorizations:
query Parameters
from | string <date> Example: from=2023-07-31 Beginning of the interval |
to | string <date> Example: to=2023-08-02 End of interval. |
Responses
Response samples
- 200
- 400
- 401
- 429
[- {
- "id": 1036666,
- "date": "2022-02-04T09:06:47.985843Z",
- "sum": 600,
- "type": 0,
- "statusId": 1,
- "cardStatus": ""
}, - {
- "id": 55261296,
- "date": "2023-04-13T10:07:42",
- "sum": 1500,
- "type": 3,
- "statusId": 1,
- "cardStatus": "succeeded"
}
]
Media campaign statistics{{ /adv/v1/stats }}
The method allows to get statistics of media campaigns
Authorizations:
Request Body schema: application/jsonrequired
id | integer Campaign ID |
dates | Array of strings <date> [ items <date > ] Dates for which information needs to be provided. |
Responses
Request samples
- Payload
Request with dates
[- {
- "id": 8960367,
- "dates": [
- "2023-10-07",
- "2023-10-06"
]
}, - {
- "id": 9876543,
- "dates": [
- "2023-10-07",
- "2023-12-06"
]
}
]
Response samples
- 200
- 401
- 429
Response for interval queries
[- {
- "interval": {
- "begin": "2023-10-21",
- "end": "2023-10-25"
}, - "stats": [
- {
- "item_id": 62237,
- "item_name": "Gloria Jeans",
- "category_name": "Детям",
- "advert_type": 1,
- "place": 2,
- "views": 11849,
- "clicks": 209,
- "cr": 0.48,
- "ctr": 1.76,
- "date_from": "2023-10-21T00:00:00+03:00",
- "date_to": "2023-10-27T23:59:59+03:00",
- "subject_name": "Одежда",
- "atbs": 4,
- "orders": 1,
- "price": 175000,
- "cpc": 837.32,
- "status": 6,
- "daily_stats": [
- {
- "date": "2023-10-21T00:00:00+03:00",
- "app_type_stats": [
- {
- "app_type": 1,
- "stats": [
- {
- "views": 2017,
- "clicks": 27,
- "atbs": 1,
- "ctr": 1.34
}
]
}
]
}
], - "expenses": 175000,
- "cr1": 1.91,
- "cr2": 25
}
]
}
]
Retrieving product card (PC) statistics for a selected period, based on nmID/items/brands/tags{{ /api/v2/nm-report/detail }}
Retrieving statistics for product cards (PC) for a selected period, based on nmID/items/brands/tags.
The fields brandNames
, objectIDs
, tagIDs
, nmIDs
can be empty, in which case statistics for all product cards from the seller are included in the response.
When multiple fields are selected, the response includes data for cards that have all the selected fields. Pagination is supported.
You can obtain a report for a maximum of one last year (365 days).
Also, in the data where information about the previous period is provided:
- In
previousPeriod
, the data is for the same period as inselectedPeriod
. - If the start date of
previousPeriod
is earlier than a year ago from the current date, it will be adjusted as follows:previousPeriod.start = current date - 365 days.
Authorizations:
Request Body schema: application/jsonrequired
brandNames | Array of strings Brand name |
objectIDs | Array of integers <int32> [ items <int32 > ] Item Identifier |
tagIDs | Array of integers <int32> [ items <int32 > ] Numeric tag identifier |
nmIDs | Array of integers <int32> [ items <int32 > ] WB article |
timezone | string Timezone. |
required | object Period |
object Sorting Parameters. If not specified, the default is "openCard" with descending order.
| |
page required | integer <int32> Page |
Responses
Request samples
- Payload
{- "brandNames": [
- "Some"
], - "objectIDs": [
- 358
], - "tagIDs": [
- 123
], - "nmIDs": [
- 1234567
], - "timezone": "Europe/Moscow",
- "period": {
- "begin": "2023-06-01 20:05:32",
- "end": "2024-03-01 20:05:32"
}, - "orderBy": {
- "field": "ordersSumRub",
- "mode": "asc"
}, - "page": 1
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "page": 1,
- "isNextPage": true,
- "cards": [
- {
- "nmID": 1234567,
- "vendorCode": "supplierVendor",
- "brandName": "Some",
- "tags": [
- {
- "id": 123,
- "name": "Sale"
}
], - "object": {
- "id": 447,
- "name": "Hair Conditioners",
- "statistics": {
- "selectedPeriod": {
- "begin": "2023-06-01 20:05:32",
- "end": "2024-03-01 20:05:32",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "cancelCount": 0,
- "cancelSumRub": 0,
- "avgPriceRub": 0,
- "avgOrdersCountPerDay": 0,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": 0
}
}
}, - "previousPeriod": {
- "begin": "2023-05-07 20:05:31",
- "end": "2023-06-01 20:05:31",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 1,
- "ordersSumRub": 1262,
- "buyoutsCount": 1,
- "buyoutsSumRub": 1262,
- "cancelCount": 0,
- "cancelSumRub": 0,
- "avgPriceRub": 1262,
- "avgOrdersCountPerDay": 0.04,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": 100
}
}, - "periodComparison": {
- "openCardDynamics": 0,
- "addToCartDynamics": 0,
- "ordersCountDynamics": -100,
- "ordersSumRubDynamics": -100,
- "buyoutsCountDynamics": -100,
- "buyoutsSumRubDynamics": -100,
- "cancelCountDynamics": 0,
- "cancelSumRubDynamics": 0,
- "avgOrdersCountPerDayDynamics": 0,
- "avgPriceRubDynamics": -100,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": -100
}
}
}, - "stocks": {
- "stocksMp": 0,
- "stocksWb": 0
}
}
]
}, - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Retrieving product card statistics for a period, grouped by items, brands, and tags{{ /api/v2/nm-report/grouped }}
Retrieving statistics for product cards for a period, grouped by items, brands, and tags.
The fields brandNames
, objectIDs
, tagIDs
can be left empty, in which case grouping is done for all product cards from the seller.
You can obtain a report for a maximum of one last year (365 days).
Also, in the data where information about the previous period is provided:
- In
previousPeriod
, the data is for the same period as inselectedPeriod
. - If the start date of
previousPeriod
is earlier than a year ago from the current date, it will be adjusted as follows:previousPeriod.start = current date - 365 days.
Authorizations:
Request Body schema: application/jsonrequired
objectIDs | Array of integers <int32> [ items <int32 > ] Item Identifier |
brandNames | Array of strings Brand name |
tagIDs | Array of integers <int32> [ items <int32 > ] Numeric tag identifier |
timezone | string Timezone. |
required | object Period |
object Sorting Parameters. If not specified, the default is "openCard" with descending order.
| |
page required | integer <int32> Page |
Responses
Request samples
- Payload
{- "objectIDs": [
- 358
], - "brandNames": [
- "Some"
], - "tagIDs": [
- 123
], - "timezone": "Europe/Moscow",
- "period": {
- "begin": "2023-10-04 20:05:32",
- "end": "2024-03-01 20:05:32"
}, - "orderBy": {
- "field": "ordersSumRub",
- "mode": "asc"
}, - "page": 1
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "page": 1,
- "isNextPage": true,
- "groups": [
- {
- "brandName": "Some",
- "tags": [
- {
- "id": 123,
- "name": "Sale"
}
], - "object": {
- "id": 1668,
- "name": "Hair Waxes"
}, - "statistics": {
- "selectedPeriod": {
- "begin": "2023-10-04 20:05:32",
- "end": "2024-03-01 20:05:32",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "cancelCount": 0,
- "cancelSumRub": 0,
- "avgPriceRub": 0,
- "avgOrdersCountPerDay": 0,
- "conversions": {
- "addToCartPercent": 0,
- "cartToOrderPercent": 0,
- "buyoutsPercent": 0
}
}, - "previousPeriod": {
- "begin": "2023-11-04 20:05:31",
- "end": "2024-03-01 20:05:31",
- "openCardCount": 466,
- "addToCartCount": 72,
- "ordersCount": 84,
- "ordersSumRub": 127060.42,
- "buyoutsCount": 69,
- "buyoutsSumRub": 104898.42,
- "cancelCount": 13,
- "cancelSumRub": 0,
- "avgPriceRub": 1562.65,
- "avgOrdersCountPerDay": 0.72,
- "conversions": {
- "addToCartPercent": 15.5,
- "cartToOrderPercent": 116.7,
- "buyoutsPercent": 84.1
}
}
}, - "periodComparison": {
- "openCardDynamics": -100,
- "addToCartDynamics": -100,
- "ordersCountDynamics": -100,
- "ordersSumRubDynamics": -100,
- "buyoutsCountDynamics": -100,
- "buyoutsSumRubDynamics": -100,
- "cancelCountDynamics": 0,
- "cancelSumRubDynamics": 0,
- "avgOrdersCountPerDayDynamics": 0,
- "avgPriceRubDynamics": -100,
- "conversions": {
- "addToCartPercent": -100,
- "cartToOrderPercent": -100,
- "buyoutsPercent": -100
}
}
}
]
}, - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Retrieving product card statistics by days for selected nmID(s){{ /api/v2/nm-report/detail/history }}
Retrieving product card statistics by days for selected nmID
(s).
You can obtain a report for a maximum of one last week.
To obtain reports for a period of up to one year, subscribe to Jam extended analytics.
Authorizations:
Request Body schema: application/jsonrequired
nmIDs required | Array of integers <int32> [ items <int32 > ] WB article (maximum 20) |
required | object Period |
timezone | string Timezone. |
aggregationLevel | string Aggregation Type. If not specified, the default is aggregation
by days. |
Responses
Request samples
- Payload
{- "nmIDs": [
- 1234567
], - "period": {
- "begin": "2023-06-20",
- "end": "2023-06-22"
}, - "timezone": "Europe/Moscow",
- "aggregationLevel": "day"
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": [
- {
- "nmID": 1234567,
- "imtName": "Product Name",
- "vendorCode": "supplierVendor",
- "history": [
- {
- "dt": "2023-06-20",
- "openCardCount": 26,
- "addToCartCount": 1,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "buyoutPercent": 0,
- "addToCartConversion": 3.8,
- "cartToOrderConversion": 0
}
]
}
], - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Retrieving product card statistics by days for a period, grouped by items, brands, and tags{{ /api/v2/nm-report/grouped/history }}
Retrieving product card statistics by days for a period, grouped by items, brands, and tags.
The fields brandNames
, objectIDs
, tagIDs
can be left empty, in which case grouping is done for all seller's product cards.
In the request, the product, brand, and tag count should not exceed 16.
You can obtain a report for a maximum of one last week.
To obtain reports for a period of up to one year, subscribe to Jam extended analytics.
Authorizations:
Request Body schema: application/jsonrequired
objectIDs | Array of integers <int32> [ items <int32 > ] Item Identifier |
brandNames | Array of strings Brand name |
tagIDs | Array of integers <int32> [ items <int32 > ] Numeric tag identifier |
required | object Period |
timezone | string Timezone. |
aggregationLevel | string Aggregation Type. If not specified, the default is aggregation |
Responses
Request samples
- Payload
{- "objectIDs": [
- 358
], - "brandNames": [
- "Some"
], - "tagIDs": [
- 123
], - "period": {
- "begin": "2023-06-21",
- "end": "2023-06-23"
}, - "timezone": "Europe/Moscow",
- "aggregationLevel": "day"
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": [
- {
- "object": {
- "id": 358,
- "name": "Shampoos"
}, - "brandName": "Some",
- "tag": {
- "id": 123,
- "name": "Sale"
}, - "history": [
- {
- "dt": "2023-06-21",
- "openCardCount": 0,
- "addToCartCount": 0,
- "ordersCount": 0,
- "ordersSumRub": 0,
- "buyoutsCount": 0,
- "buyoutsSumRub": 0,
- "buyoutPercent": 0,
- "addToCartConversion": 0,
- "cartToOrderConversion": 0
}
]
}
], - "error": true,
- "errorText": "",
- "additionalErrors": [
- {
- "field": "string",
- "description": "string"
}
]
}
Main Page{{ /api/v2/search-report/report }}
Forms a dataset for the main report page with:
- General information
- Product positions
- Data on visibility and transitions to the product card
- Data for the table by groups
To obtain additional data in the table, use a separate request for:
- Pagination by groups
- Retrieval of products within a group
Additional parameters for selecting the list of products in the table:
positionCluster
— average position in search
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Current period |
object (pastPeriod) Previous period for comparison. Number of days — less than or equal to | |
nmIds | Array of integers <int32> [ items <int32 > ] List of WB article numbers for filtering |
subjectIds | Array of integers <int32> [ items <int32 > ] List of subject IDs for filtering |
brandNames | Array of strings List of brands names for filtering |
tagIds | Array of integers <int64> [ items <int64 > ] List of tag IDs for filtering |
positionCluster required | string (PositionCluster) Enum: "all" "firstHundred" "secondHundred" "below" Which average search position of products to display in the report:
|
required | object (OrderBy) Soring parameters |
limit required | integer <uint32> <= 1000 Number of product groups in the response |
offset required | integer <uint32> From which element to start outputting data |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "nmIds": [
- 162579635,
- 166699779
], - "subjectIds": [
- 32,
- 64
], - "brandNames": [
- "Adidas",
- "Nike"
], - "tagIds": [
- 3,
- 5,
- 6
], - "positionCluster": "all",
- "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "limit": 130,
- "offset": 50
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "commonInfo": {
- "supplierRating": {
- "current": 5.3,
- "dynamics": 5.4
}, - "advertisedProducts": {
- "current": 5,
- "dynamics": 50
}, - "totalProducts": 150
}, - "positionInfo": {
- "average": {
- "current": 5,
- "dynamics": 50
}, - "median": {
- "current": 5,
- "dynamics": 50
}, - "chartItems": [
- {
- "dt": "2024-10-19",
- "average": 1,
- "median": 1
}
], - "clusters": {
- "firstHundred": {
- "current": 5,
- "dynamics": 50
}, - "secondHundred": {
- "current": 5,
- "dynamics": 50
}, - "below": {
- "current": 5,
- "dynamics": 50
}
}
}, - "visibilityInfo": {
- "visibility": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "byDay": [
- {
- "dt": "2024-02-10",
- "visibility": 100,
- "open": 124
}
], - "byWeek": [
- {
- "dt": "2024-02-10",
- "visibility": 100,
- "open": 124
}
], - "byMonth": [
- {
- "dt": "2024-02-10",
- "visibility": 100,
- "open": 124
}
]
}, - "groups": [
- {
- "subjectName": "Phones",
- "subjectId": 50,
- "brandName": "Apple",
- "tagName": "phones",
- "tagId": 65,
- "metrics": {
- "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}, - "items": [
- {
- "nmId": 268913787,
- "name": "iPhone 13 256 ГБ Серебристый",
- "vendorCode": "wb3ha2668w",
- "subjectName": "Смартфоны",
- "brandName": "Apple",
- "isAdvertised": false,
- "isCardRated": true,
- "rating": 6,
- "feedbackRating": 1,
- "price": {
- "minPrice": 150,
- "maxPrice": 300
}, - "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
]
}
}
Pagination by Groups{{ /api/v2/search-report/table/groups }}
Pagination by groups in the report. It is possible only if there is a filter by brand, subject, or tag.
Additional parameters for selecting the list of products in the table:
positionCluster
— average position in search
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Current period |
object (pastPeriod) Previous period for comparison. Number of days — less than or equal to | |
nmIds | Array of integers <int32> [ items <int32 > ] List of WB article numbers for filtering |
subjectIds | Array of integers <int32> [ items <int32 > ] List of subject IDs for filtering |
brandNames | Array of strings List of brands names for filtering |
tagIds | Array of integers <int64> [ items <int64 > ] List of tag IDs for filtering |
required | object (OrderBy) Soring parameters |
positionCluster required | string (PositionCluster) Enum: "all" "firstHundred" "secondHundred" "below" Which average search position of products to display in the report:
|
limit required | integer <uint32> <= 1000 Number of product groups in the response |
offset required | integer <uint32> From which element to start outputting data |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "nmIds": [
- 162579635,
- 166699779
], - "subjectIds": [
- 64,
- 334
], - "brandNames": [
- "nike",
- "adidas"
], - "tagIds": [
- 32,
- 53
], - "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "positionCluster": "all",
- "limit": 130,
- "offset": 50
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "groups": [
- {
- "subjectName": "Phones",
- "subjectId": 50,
- "brandName": "Apple",
- "tagName": "phones",
- "tagId": 65,
- "metrics": {
- "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}, - "items": [
- {
- "nmId": 268913787,
- "name": "iPhone 13 256 ГБ Серебристый",
- "vendorCode": "wb3ha2668w",
- "subjectName": "Смартфоны",
- "brandName": "Apple",
- "isAdvertised": false,
- "isCardRated": true,
- "rating": 6,
- "feedbackRating": 1,
- "price": {
- "minPrice": 150,
- "maxPrice": 300
}, - "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
]
}
}
Pagination by Products Within a Group{{ /api/v2/search-report/table/details }}
Pagination by products within a group. It is possible regardless of the presence of filters.
Filters for pagination by products within a group or without filters:
- tuple
subjectId
,brandName
,tagId
— filter for the group nmIds
— filter by nomenclature
Additional parameters for selecting the list of products in the table:
positionCluster
— average position in search
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Current period |
object (pastPeriod) Previous period for comparison. Number of days — less than or equal to | |
subjectId | integer <int32> Subject ID |
brandName | string Product name |
tagId | integer <int64> Tag ID |
nmIds | Array of integers <uint64> <= 50 items [ items <uint64 > ] WB article numbers list |
required | object (OrderBy) Soring parameters |
positionCluster required | string Enum: "all" "firstHundred" "secondHundred" "below" Which average search position of products to display in the report:
|
limit required | integer <uint32> <= 1000 Number pf products in the response |
offset required | integer <uint32> From which element to start outputting data |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "subjectId": 123,
- "brandName": "Apple",
- "tagId": 45,
- "nmIds": [
- 162579635,
- 166699779
], - "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "positionCluster": "all",
- "limit": 150,
- "offset": 100
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "products": [
- {
- "nmId": 268913787,
- "name": "iPhone 13 256 ГБ Серебристый",
- "vendorCode": "wb3ha2668w",
- "subjectName": "Смартфоны",
- "brandName": "Apple",
- "isAdvertised": false,
- "isCardRated": true,
- "rating": 6,
- "feedbackRating": 1,
- "price": {
- "minPrice": 150,
- "maxPrice": 300
}, - "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
}
Search Queries by Product{{ /api/v2/search-report/product/search-texts }}
Forms the top search queries by product.
Search query selection parameters:
limit
— number of queries, maximum 30topOrderBy
— method for selecting the top queries
Authorizations:
Request Body schema: application/jsonrequired
required | object (Period) Current period |
object (pastPeriod) Previous period for comparison. Number of days — less than or equal to | |
nmIds required | Array of integers <uint64> <= 50 items [ items <uint64 > ] WB article numbers list |
topOrderBy required | string Enum: "openCard" "addToCart" "openToCart" "orders" "cartToOrder" Sorting by field:
|
required | object (OrderBy) Soring parameters |
limit required | integer <uint64> (TextLimit) [ 1 .. 30 ] Number of search queries for the product |
Responses
Request samples
- Payload
{- "currentPeriod": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "pastPeriod": {
- "start": "2024-02-08",
- "end": "2024-02-08"
}, - "nmIds": [
- 162579635,
- 166699779
], - "topOrderBy": "openToCart",
- "orderBy": {
- "field": "avgPosition",
- "mode": "asc"
}, - "limit": 20
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "items": [
- {
- "text": "костюм",
- "frequency": {
- "current": 5,
- "dynamics": 50
}, - "weekFrequency": 140,
- "avgPosition": {
- "current": 5,
- "dynamics": 50
}, - "openCard": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "addToCart": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "openToCart": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "orders": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "cartToOrder": {
- "current": 5,
- "dynamics": 50,
- "percentile": 50
}, - "visibility": {
- "current": 5,
- "dynamics": 50
}
}
]
}
}
Orders and Positions by Product Search Queries{{ /api/v2/search-report/product/orders }}
Forms data for a table on the number of orders and positions by queries. The data is specified within a period for a specific product
Authorizations:
Request Body schema: application/jsonrequired
required | object (PeriodOrdersRequest) Current period. Maximum of 7 days |
nmId required | integer <uint64> WB article |
searchTexts required | Array of strings [ 1 .. 30 ] items Search query |
Responses
Request samples
- Payload
{- "period": {
- "start": "2024-02-10",
- "end": "2024-02-10"
}, - "nmId": 211131895,
- "searchTexts": [
- "костюм",
- "пиджак"
]
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": {
- "total": [
- {
- "dt": "2024-02-10",
- "avgPosition": 10,
- "orders": 20
}
], - "items": [
- {
- "text": "string",
- "frequency": 0,
- "dateItems": [
- {
- "dt": "2024-02-10",
- "avgPosition": 10,
- "orders": 20
}
]
}
]
}
}
You can use these methods only with Jam subscription.
To get a report:
- Generate it using the method Create the report.
- Wait until the report is ready. You can check the status with the method Get the reports list. The report is stored for 48 hours after it is ready, and it cannot be retrieved after.
If you receive a status of FAILED, regenerate the report. - Download the report.
You can obtain a report for a maximum of one year.
The maximum number of reports that can be generated per day is 20
Create the report{{ /api/v2/nm-report/downloads }}
You can create a report on sales funnel or search parameters with grouping:
- by WB articles;
- by categories, brands, and labels.
In each of reports on sales funnel, you can group data by days, weeks, or months.
Authorizations:
Request Body schema: application/json
id required | string <uuid> Report ID in UUID format. Generated by the seller independently |
reportType required | string Report type — |
userReportName | string Report name (if not specified, it will be generated automatically) |
required | object Report parameters |
Responses
Request samples
- Payload
Sales funnel report. By WB articles
{- "id": "06eae887-9d9f-491f-b16a-bb1766fcb8d2",
- "reportType": "DETAIL_HISTORY_REPORT",
- "userReportName": "Card report",
- "params": {
- "nmIDs": [
- 1234567
], - "subjectIDs": [
- 1234567
], - "brandNames": [
- "Name"
], - "tagIDs": [
- 1234567
], - "startDate": "2024-06-21",
- "endDate": "2024-06-23",
- "timezone": "Europe/Moscow",
- "aggregationLevel": "day",
- "skipDeletedNm": false
}
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": "Created"
}
Get the reports list{{ /api/v2/nm-report/downloads }}
Authorizations:
query Parameters
filter[downloadIds] | Array of strings <uuid> [ items <uuid > ] Report ID |
Responses
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": [
- {
- "id": "06eae887-9d9f-491f-b16a-bb1766fcb8d2",
- "createdAt": "2024-06-26 20:05:32",
- "status": "SUCCESS",
- "name": "Card report",
- "size": 123,
- "startDate": "2024-06-21",
- "endDate": "2023-04-23"
}
]
}
Regenerate the report{{ /api/v2/nm-report/downloads/retry }}
Authorizations:
Request Body schema: application/jsonrequired
downloadId | string <uuid> Report ID |
Responses
Request samples
- Payload
{- "downloadId": "06eea887-9d9f-491f-b16a-bb1766fcb8d2"
}
Response samples
- 200
- 400
- 401
- 403
- 429
{- "data": "Retry"
}
Get the report{{ /api/v2/nm-report/downloads/file/{downloadId} }}
You can get a report that was generated within the last 48 hours.
The report will be downloaded inside a ZIP archive in CSV format.
Authorizations:
path Parameters
downloadId required | string <uuid> Report ID |
Responses
Response samples
- 200
- 400
- 401
- 403
- 429
nmID, dt, openCardCount, addToCartCount, ordersCount, ordersSumRub, buyoutsCount, buyoutsSumRub, cancelCount, cancelSumRub, addToCartConversion, cartToOrderConversion, buyoutPercent 70027655,2024-11-21,1,0,0,0,0,0,0,0,0,0,0 ... ... 150317666,2024-11-21,2,0,0,0,0,0,0,0,0,0,0