Ozon API эндпоинты
Полная документация REST API MPStats для маркетплейса Ozon. Все 25 эндпоинтов организованы по разделам.
Base URL: https://mpstats.io/api/
Аутентификация: заголовок X-Mpstats-TOKEN: <your_token>
Пагинация (POST-эндпоинты): параметры startRow / endRow в теле запроса. Не более 5000 записей за один вызов.
Параметр fbs=1 включает данные по схеме FBS (Fulfillment by Seller). По умолчанию данные возвращаются без FBS.
Рубрикатор
Получение текущего рубрикатора
GET oz/get/categories
Возвращает полный список кат егорий Ozon с путями и URL.
Параметры запроса: нет
Пример запроса:
curl --location --request GET 'https://mpstats.io/api/oz/get/categories' \
--header 'X-Mpstats-TOKEN: <your_token>' \
--header 'Content-Type: application/json'
Пример ответа:
[
{
"url": "/category/avtotovary-8500/",
"path": "Автотовары",
"name": "Автотовары"
},
{
"url": "/category/chehly-i-nakidki-na-sidenya-8640/",
"path": "Автотовары/Автоаксессуары и принадлежности/Чехлы и накидки на сиденья",
"name": "Чехлы и накидки на сиденья"
},
{
"url": "/category/semena-lna-9481/",
"path": "Продукты питания/Орехи, снэки/Семена льна",
"name": "Семена льна"
}
]
Описание полей:
| Поле | Тип | Описание |
|---|---|---|
url | string | URL категории на Ozon |
name | string | Название категории |
path | string | Полный путь по каталогу Ozon |
По категориям
Товары в категории
POST oz/get/category
Возвращает список товаров в указанной категории с продажами, выручкой и ценами за период.
Параметры запроса (query string):
| Параметр | Тип | Обязательный | Описание | По умолчанию |
|---|---|---|---|---|
path | string | да | Путь категории, например Дом и сад/Товары для бань | — |
fbs | 0 или 1 | нет | Включить данные FBS | без FBS |
d1 | YYYY-MM-DD | нет | Начало периода | По тарифу |
d2 | YYYY-MM-DD | нет | Конец периода | По тарифу |
Тело запроса:
{
"startRow": 0,
"endRow": 100,
"filterModel": {},
"sortModel": []
}
С труктура ответа:
{
"startRow": 0,
"endRow": 100,
"filterModel": {},
"sortModel": [],
"total": 42,
"data": [ ... ]
}
Пример запроса:
curl --location --request POST \
'https://mpstats.io/api/oz/get/category?path=%D0%94%D0%BE%D0%BC%20%D0%B8%20%D1%81%D0%B0%D0%B4%2F%D0%92%D0%B5%D0%BD%D0%B8%D0%BA%D0%B8%20%D0%B4%D0%BB%D1%8F%20%D0%B1%D0%B0%D0%BD%D1%8C&d1=2023-12-12&d2=2023-12-25&fbs=1' \
--header 'X-Mpstats-TOKEN: <your_token>' \
--header 'Content-Type: application/json' \
--data-raw '{"startRow":0,"endRow":100,"filterModel":{},"sortModel":[]}'
Пример ответа:
{
"data": [
{
"id": 1346408351,
"is_fbs": 1,
"name": "Веники Дубовые СВЕЖИЕ для бани 2 шт",
"brand": "Удмуртпотребсоюз",
"seller": "ООО \"Мега-Групп\"",
"supplier_id": 89749,
"final_price": 669,
"ozon_card_price": 648,
"sales": 999999,
"revenue": 668999331,
"days_in_stock": 0,
"category": "Дом и сад/Товары для бань и саун/Веники для бань",
"url": "https://www.ozon.ru/context/detail/id/1346408351/"
}
],
"total": 3165
}
Описание полей ответа:
| Поле | Тип | Описание |
|---|---|---|
id | number | Идентификатор товарной позиции |
is_fbs | number | Товар поставляется по FBS (1 = да) |
thumb | string | URL изображения товара (100px) |
thumb_middle | string | URL изображения товара (250px) |
name | string | Название товара |
brand | string | Бренд товара |
seller | string | Название продавца |
supplier_id | number | ID продавца |
balance | number | Последний зафиксированный остаток |
balance_fbs | number | Последний остаток FBS |
comments | number | Количество комментариев |
rating | number | Рейтинг товара |
final_price | number | Последняя зафиксированная цена |
ozon_card_price | number | Цена с Ozon картой |
final_price_max | number | Максимальная цена за период |
final_price_min | number | Минимальная цена за период |
final_price_average | number | Средняя цена (выручка / продажи) |
final_price_median | number | Медианная цена |
start_price | number | Базовая цена |
sales | number | Количество продаж |
sales_per_day_average | number | Среднее число продаж в день |
revenue | number | Выручка |
revenue_potential | number | Потенциал выручки |
revenue_average | number | Средняя выручка в день |
lost_profit | number | Упущенная выручка |
lost_profit_percent | number | Упущенная выручка в % |
days_in_stock | number | Дней в наличии |
days_with_sales | number | Дней с продажами |
average_if_in_stock | number | Среднее продаж при наличии товара |
categories_last_count | number | Кол-во категорий, где встречался товар |
category | string | Основная категория (дольше всего в выдаче) |
category_position | number | Позиция в основной категории |
sparkline_observe | array | График запросов |
category_graph | array | График категорий |
graph | array | График продаж |
stocks_graph | array | График остатков |
price_graph | array | График изменения цены |
revenue_graph | array | График выручки |
url | string | Ссылка на товар на Ozon |
turnover_days | number | Оборачиваемость в днях |
turnover_once | number | Оборачиваемость |
Подкатегории
GET oz/get/category/subcategories
Возвращает список подкатегорий с агрегированной статистикой для каждой.
Параметры запроса:
| Параметр | Тип | Обязательный | Описание | По умолчанию |
|---|---|---|---|---|
path | string | да | Путь родительской кате гории | — |
fbs | 0 или 1 | нет | Включить данные FBS | без FBS |
d1 | YYYY-MM-DD | нет | Начало периода | По тарифу |
d2 | YYYY-MM-DD | нет | Конец периода | По тарифу |
Пример запроса:
curl --location --request GET \
'https://mpstats.io/api/oz/get/category/subcategories?d1=2023-12-12&d2=2023-12-25&path=%D0%94%D0%BE%D0%BC+%D0%B8+%D1%81%D0%B0%D0%B4&fbs=1' \
--header 'X-Mpstats-TOKEN: <your_token>' \
--header 'Content-Type: application/json'
Пример ответа:
[
{
"name": "Текущая категория",
"items": 3165,
"items_with_sells": 1116,
"brands": 167,
"brands_with_sells": 89,
"sellers": 579,
"sellers_with_sells": 240,
"sales": 6066095,
"revenue": 3015176221,
"avg_price": 1252,
"comments": 79,
"rating": 4.58,
"items_with_sells_percent": 35,
"brands_with_sells_percent": 53,
"sellers_with_sells_percent": 41,
"sales_per_items_average": 1917,
"sales_per_items_with_sells_average": 5436,
"revenue_per_items_average": 952662,
"revenue_per_items_with_sells_average": 2701771
}
]
Описание полей:
| Поле | Тип | Описание |
|---|---|---|
name | string | Название категории |
items | number | Число товаров |
items_with_sells | number | Товаров с продажами |
brands | number | Количество брендов |
brands_with_sells | number | Брендов с продажами |
sellers | number | Количество продавцов |
sellers_with_sells | number | Продавцов с продажами |
sales | number | Число продаж |
revenue | number | Выручка |
avg_price | number | Средняя цена |
comments | number | Среднее количество отзывов |
rating | number | Средний рейтинг |
items_with_sells_percent | number | Доля товаров с продажами, % |
brands_with_sells_percent | number | Доля брендов с продажами, % |
sellers_with_sells_percent | number | Доля продавцов с продажами, % |
sales_per_items_average | number | Среднее продаж на товар |
sales_per_items_with_sells_average | number | Среднее продаж на товар с продажами |
revenue_per_items_average | number | Средняя выручка на товар |
revenue_per_items_with_sells_average | number | Средняя выручка на товар с продажами |
Продавцы в категории
GET oz/get/category/sellers
Доступен на тарифе «Профессиональный».
Рейтинг продавцов в категории, отсортированный по выручке.
Параметры запроса:
| Параметр | Тип | Обязательный | Описание | По умолчанию |
|---|---|---|---|---|
path | string | да | Путь категории | — |
fbs | 0 или 1 | нет | Включить данные FBS | без FBS |
d1 | YYYY-MM-DD | нет | Начало периода | По тарифу |
d2 | YYYY-MM-DD | нет | Конец периода | По тарифу |
Пример запроса:
curl --location --request GET \
'https://mpstats.io/api/oz/get/category/sellers?d1=2023-12-12&d2=2023-12-25&path=%D0%94%D0%BE%D0%BC+%D0%B8+%D1%81%D0%B0%D0%B4&fbs=1' \
--header 'X-Mpstats-TOKEN: <your_token>' \
--header 'Content-Type: application/json'
Пример ответа:
[
{
"supplier_id": 89749,
"name": "ООО \"Мега-Групп\"",
"items": 12,
"items_with_sells": 6,
"items_with_sells_percent": 50,
"brands": 2,
"brands_with_sells": 2,
"sales": 5999998,
"revenue": 2970998859,
"avg_price": 463.8,
"rating": 4.62,
"comments": 696,
"position": 1,
"graph": [0, 0, 1, 3, 1, 5999993, 0, 0]
}
]
Описание полей:
| Поле | Тип | Описание |
|---|---|---|
supplier_id | number | Идентификатор продавца |
name | string | Название продавца |
items | number | Число товаров |
items_with_sells | number | Товаров с продажами |
items_with_sells_percent | number | Доля товаров с продажами, % |
brands | number | Количество брендов |
brands_with_sells | number | Брендов с продажами |
brands_with_sells_percent | number | Доля брендов с продажами, % |
sales | number | Число продаж |
revenue | number | Выручка |
sales_per_items_average | number | Среднее продаж на товар |
sales_per_items_with_sells_average | number | Среднее продаж на товар с про дажами |
revenue_per_items_average | number | Средняя выручка на товар |
revenue_per_items_with_sells_average | number | Средняя выручка на товар с продажами |
balance | number | Остаток на конец периода |
avg_price | number | Средняя цена |
rating | number | Средний рейтинг |
comments | number | Среднее количество отзывов |
position | number | Позиция в топе по выручке |
graph | array | График продаж |
Бренды в категории
GET oz/get/category/brands
Рейтинг брендов в категории по выручке.
Параметры запроса:
| Параметр | Тип | Обязательный | Описание | По умолчанию |
|---|---|---|---|---|
path | string | да | Путь категории | — |
fbs | 0 или 1 | нет | Включить данные FBS | без FBS |
d1 | YYYY-MM-DD | нет | Начало периода | По тарифу |
d2 | YYYY-MM-DD | нет | Конец периода | По тарифу |
Пример запроса:
curl --location --request GET \
'https://mpstats.io/api/oz/get/category/brands?d1=2023-12-12&d2=2023-12-25&path=%D0%94%D0%BE%D0%BC+%D0%B8+%D1%81%D0%B0%D0%B4&fbs=1' \
--header 'X-Mpstats-TOKEN: <your_token>' \
--header 'Content-Type: application/json'
Пример ответа:
[
{
"name": "Удмуртпотребсоюз",
"lbrand": "удмуртпотребсоюз",
"items": 4,
"items_with_sells": 4,
"items_with_sells_percent": 100,
"sellers": 1,
"sellers_with_sells": 1,
"sellers_with_sells_percent": 100,
"sales": 3999998,
"revenue": 2065998859,
"avg_price": 516.5,
"rating": null,
"comments": null,
"position": 1,
"graph": [0, 0, 0]
}
]
Описание полей:
| Поле | Тип | Описание |
|---|---|---|
name | string | Название бренда |
lbrand | string | Название бренда в нижнем регистре |
items | number | Число товаров |
items_with_sells | number | Товаров с продажами |
items_with_sells_percent | number | Доля товаров с продажами, % |
sellers | number | Количество продавцов |
sellers_with_sells | number | Продавцов с продажами |
sellers_with_sells_percent | number | Доля продавцов с продажами, % |
sales | number | Число продаж |
revenue | number | Выручка |
sales_per_items_average | number | Среднее продаж на товар |
sales_per_items_with_sells_average | number | Среднее продаж на товар с продажами |
revenue_per_items_average | number | Средняя выручка на товар |
revenue_per_items_with_sells_average | number | Средняя выручка на товар с продажами |
balance | number | Остаток на конец периода |
avg_price | number | Средняя цена |
comments | number | Среднее количество отзывов |
position | number | Позиция в топе по выручке |
graph | array | График продаж |