Предоставляет легковесный асинхронный pydantic-интерфейс для взаимодействия с Ozon API Seller.
Поддерживает ограничения запросов, работу с несколькими client_id, гибкую настройку через .env.
✅ Актуально на 4-й квартал 2025 года. 🤝 Коммиты приветствуются!
- 📊 Автоматизация сквозной аналитики и отчетов: Excel, Google Sheets, Bitrix24, Power BI
- 🔄 Промежуточное программное обеспечение: 1С, ERP, WMS, CRM и брокеры
- 🤖 Чат-боты: Telegram, Max (потенциально), RAG (для актуализации контекста)
- 📦 PIM-системы: управлениe контентом, товарами, ценами, остатками и отзывами
- 🗄️ DataLake: товары, цены, остатки, заказы и доставки
- ✔️ Проверено в production - используется на боевых кабинетах продавцов Ozon
- ⚡️ Асинхронный дизайн - построен на aiohttpдля высокопроизводительных операций
- 👍 Простое использование - быстрое развертывание и интеграция с вашим проектом
- 📝 Отличная документация - все методы содержат подробное описание и примеры
- 👥 Мульти-аккаунт - одновременная работа с несколькими кабинетами продавца Ozon
- ⏱️ Умное ограничение запросов - автоматическое соблюдение лимитов API Ozon
- ➿ Гибкая настройка лимитов - кастомные лимиты запросов для методов
- ⏳ Кеширование ответов - для методов, возвращающих статичные данные
- 🔄 Автоповторы - экспоненциальные повторные попытки запросов при сбоях
- 🛡️ Валидация данных - строгая типизация с Pydantic v2
- 📊 Детальное логирование - асинхронная трассировка операций
- 🎪 Гибкая конфигурация - настройка через классы, переменные окружения или .env файл
- 🧹 Очистка ресурсов - автоматический контроль посредством контекстных менеджеров
- 🧪 Полное покрытие тестами - вся основная функциональность
🤝 Данный проект является форком с глубокой доработкой и актуализацией проекта python-ozon-api от mephistofox:
pip install ozonapi-asyncimport asyncio
from ozonapi import SellerAPI
async def main():
    async with SellerAPI(
        client_id="your_client_id",
        api_key="your_api_key"
    ) as api:
        # Получение списка товаров
        products = await api.product_list()
        print(f"Получено товаров: {len(products.result.items)}")
if __name__ == "__main__":
    asyncio.run(main())import asyncio
from ozonapi import SellerAPI, SellerAPIConfig
async def main():
    # Создание кастомной конфигурации
    config = SellerAPIConfig(
        client_id="your_client_id",
        api_key="your_api_key",
        log_level="DEBUG"
    )
    
    async with SellerAPI(config=config) as api:
        # Работа с товарами
        products = await api.product_list()
        # Работа с ценами
        prices = await api.product_info_prices()
asyncio.run(main())Создайте файл .env в корне проекта:
OZON_SELLER_CLIENT_ID=your_client_id
OZON_SELLER_API_KEY=your_api_key
OZON_SELLER_MAX_REQUESTS_PER_SECOND=30
OZON_SELLER_REQUEST_TIMEOUT=60.0
OZON_SELLER_MAX_RETRIES=5Использование с автоматической загрузкой из .env:
import asyncio
from ozonapi import SellerAPI
async def main():
    # Конфигурация автоматически загружается из .env
    async with SellerAPI() as api:
        # Ваши API вызовы
        warehouses = await api.warehouse_list()
        print(f"Доступно складов: {len(warehouses.result)}")
asyncio.run(main())"""
Задача: Выгрузить описания для всех товаров продавца.
Описание решения: 
Частями выгрузим список товаров методом product_list(), 
чтобы узнать их product_id, и по мере выгрузки 
асинхронно получим описания для товаров с помощью метода 
product_info_description().
Для этих целей используем очереди из модуля asyncio и обработаем
данные по схеме producer -> queue -> consumers.
Сделаем одного производителя, чтобы складывал идентификаторы в очередь,
и несколько потребителей, каждый из которых будет забирать по одному 
из очереди и асинхронно выгружать его описание, с ограничением запросов.
"""
import asyncio
from pprint import pprint
from ozonapi import SellerAPI, SellerAPIConfig
from ozonapi.seller.schemas.products import ProductListRequest, ProductListResponse,
ProductInfoDescriptionRequest
"""
Подобраны настройки, позволяющие наблюдать в консоли асинхронность выполнения логики.
Для prod значения параметров могут быть увеличены.
Общее кол-во запросов составит consumers_amount * consumer_rate_limit в сек + запросы по
дефолтным лимитам из SellerAPIConfig для функции producer, с учетом допустимого максимума.
"""
product_list_limit = 10  # Кол-во товаров, выгружаемых за одну итерацию
consumers_amount = 5     # Кол-во потребителей, выгружающих описания
consumer_rate_limit = 2  # Лимит запросов в секунду для каждого потребителя
queue_max_size = product_list_limit * consumers_amount  # Максимальный размер очереди
product_descriptions = list()
async def producer(queue):
    """Получает батчи из списка товаров и добавляет product_id в очередь на получение описания."""
    async with SellerAPI(
            config=SellerAPIConfig(
                # Понижаем уровень логирования (для наглядности)
                log_level="INFO"
            )
    ) as api:
        # Параметры, необходимые для выборки данных
        products_count = 0  # Счетчик выбранных товаров
        last_id = str()  # Идентификатор для пагинации
        while True:
            # Отправляем запрос и получаем очередную партию данных о товарах
            products_batch: ProductListResponse = await api.product_list(
                ProductListRequest(
                    limit=product_list_limit,
                    last_id=last_id
                ),
            )
            # Переопределяем идентификатор выборки для следующей итерации
            last_id = products_batch.result.last_id
            # Увеличиваем счетчик выбранных товаров
            products_count += len(products_batch.result.items)
            # Добавляем айдишник каждого товара в очередь на выгрузку описания
            for item in products_batch.result.items:
                await queue.put(item.product_id)
            # Отчитываемся в консоль
            api.logger.info(
                f"Добавлено в обработку {products_count} из {products_batch.result.total} элементов."
            )
            # Если выгрузили все товары, то прерываем цикл
            if products_count == products_batch.result.total:
                break
async def consumer(queue):
    """Получает айдишники товаров из очереди и получает описания."""
    async with SellerAPI(
            config=SellerAPIConfig(
                # Понижаем уровень логирования
                log_level="INFO",
                # Ограничиваем кол-во запросов в секунду для каждого потребителя
                max_requests_per_second=consumer_rate_limit
            )
    ) as api:
        while True:
            # Достаем идентификатор очередного товара из очереди
            product_id = await queue.get()
            # Отправляем запрос и получаем ответ с описанием
            product_description = await api.product_info_description(
                ProductInfoDescriptionRequest(
                    product_id=product_id
                ),
            )
            # Добавляем полученное описание в общий список 
            # и выводим в консоль отчет о выполнении
            product_descriptions.append(product_description.result)
            api.logger.info(f"Получено описание для товара {product_description.result.id}")
            # Обновляем счетчик задач
            queue.task_done()
async def main() -> None:
    # Создаем очередь заданий на выгрузку описаний
    queue = asyncio.Queue(maxsize=queue_max_size)
    # Формируем заданное кол-во потребителей (выгружают описания) 
    [asyncio.create_task(consumer(queue)) for _ in range(consumers_amount)]
    # Запускаем производителя (узнает product_id товаров и заказывает для них описания)
    await producer(queue)
    # Дожидаемся, когда потребители обработают все задачи в очереди
    await queue.join()
if __name__ == '__main__':
    asyncio.run(main())
    # Выводим полученные описания
    for product_description in product_descriptions:
        pprint(product_description.model_dump())import asyncio
from ozonapi import SellerAPI
async def main():
    # Создание клиентов для разных аккаунтов
    configs = [
        {"client_id": "id1", "api_key": "key1"},
        {"client_id": "id2", "api_key": "key2"}
    ]
    
    tasks = []
    for config in configs:
        task = asyncio.create_task(fetch_account_data(config))
        tasks.append(task)
    
    results = await asyncio.gather(*tasks)
async def fetch_account_data(config):
    async with SellerAPI(**config) as api:
        products = await api.product_list()
        return {
            "client_id": config["client_id"],
            "product_count": len(products.result.items)
        }
asyncio.run(main())Проект автоматически соблюдает лимиты API Ozon (50 запросов в секунду) с возможностью тонкой настройки:
# Кастомные лимиты
config = SellerAPIConfig(
    max_requests_per_second=25,  # Безопасный запас
    retry_min_wait=2.0,
    retry_max_wait=10.0
)💡 Обратите внимание: 50 запросов в сек. — суммарное ограничение на все выполняемые запросы от всех методов с одного client_id в единицу времени. При этом у многих методов есть свои ограничения, которые не описаны документацией и могут меняться Ozon в зависимости от нагрузки на сервера.
Автоматические повторы запросов с экспоненциальной задержкой:
# Настройка стратегии повторов
config = SellerAPIConfig(
    max_retries=3,           # Максимум 3 попытки
    retry_min_wait=1.0,      # Минимальная задержка
    retry_max_wait=10.0      # Максимальная задержка
)💡 Обратите внимание: Логер уведомляет об ошибке при превышении кол-ва запросов, при этом планируется повторная отправка запроса, который инициировал исключение.
Текущая реализация оптимизирована для однопоточного асинхронного использования. Для мультипроцессных сценариев требуется дополнительная настройка системы ограничения запросов.
Проект автоматически соблюдает официальные лимиты Ozon API, но рекомендуется:
- Использовать консервативные настройки лимитов
- Мониторить статистику использования через встроенные методы
git clone https://github.com/a-ulianov/OzonAPI.git
cd OzonAPI
pip install -e
pytest --cov=ozonapi --cov-report=html- Документация: GitHub Repository
- Issues: GitHub Issues
- Changelog: Releases
- Telegram: OzonAPI Async
Атрибуты и характеристики Ozon (4)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ✓ | /v1/description-category/tree | Дерево категорий и типов товаров | description_category_tree() | 
| ✓ | /v1/description-category/attribute | Список характеристик категории | description_category_attribute() | 
| ✓ | /v1/description-category/attribute/values | Справочник значений характеристики | description_category_attribute_values() | 
| ✓ | /v1/description-category/attribute/values/search | Поиск по справочным значениям характеристики | description_category_attribute_values_search() | 
Загрузка и обновление товаров (18)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ✓ | /v3/product/import | Создать или обновить товар | product_import() | 
| ✓ | /v1/product/import/info | Узнать статус добавления или обновления товара | product_import_info() | 
| ✓ | /v1/product/import-by-sku | Создать товар по SKU | product_import_by_sku() | 
| ✓ | /v1/product/attributes/update | Обновить характеристики товара | product_attributes_update() | 
| ✓ | /v1/product/pictures/import | Загрузить или обновить изображения товара | product_pictures_import() | 
| ✓ | /v3/product/list | Список товаров | product_list() | 
| ✓ | /v1/product/rating-by-sku | Получить контент-рейтинг товаров по SKU | product_rating_by_sku() | 
| ✓ | /v3/product/info/list | Получить информацию о товарах по идентификаторам | product_info_list() | 
| ✓ | /v4/product/info/attributes | Получить описание характеристик товара | product_info_attributes() | 
| ✓ | /v1/product/info/description | Получить описание товара | product_info_description() | 
| ✓ | /v4/product/info/limit | Лимиты на ассортимент, создание и обновление товаров | product_info_limit() | 
| ✓ | /v1/product/update/offer-id | Изменить артикулы товаров из системы продавца | product_update_offer_id() | 
| ✓ | /v1/product/archive | Перенести товар в архив | product_archive() | 
| ✓ | /v1/product/unarchive | Вернуть товар из архива | product_unarchive() | 
| ✓ | /v2/products/delete | Удалить товар без SKU из архива | products_delete() | 
| ✓ | /v1/product/info/subscription | Количество подписавшихся на товар пользователей | product_info_subscription() | 
| ✓ | /v1/product/related-sku/get | Получить связанные SKU | product_related_sku_get() | 
| ✓ | /v2/product/pictures/info | Получить изображения товаров | product_pictures_info() | 
Штрихкоды товаров (2)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ✓ | /v1/barcode/add | Привязать штрихкод к товару | barcode_add() | 
| ✓ | /v1/barcode/generate | Создать штрихкод для товара | barcode_generate() | 
Цены и остатки товаров (5)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ✓ | /v2/products/stocks | Обновить количество товаров на складах | products_stocks() | 
| ✓ | /v4/product/info/stocks | Информация о количестве товаров | product_info_stocks() | 
| ✓ | /v1/product/info/stocks-by-warehouse/fbs | Информация об остатках на складах продавца (FBS и rFBS) | product_info_stocks_by_warehouse_fbs() | 
| ✓ | /v1/product/import/prices | Обновить цену | product_import_prices() | 
| ☐ | /v1/product/action/timer/update | Обновление таймера актуальности минимальной цены | product_action_timer_update() | 
| ☐ | /v1/product/action/timer/status | Получить статус установленного таймера | product_action_timer_status() | 
| ✓ | /v5/product/info/prices | Получить информацию о цене товара | product_info_prices() | 
| ☐ | /v1/product/info/discounted | Узнать информацию об уценке и основном товаре по SKU уценённого товара | product_info_discounted() | 
| ☐ | /v1/product/update/discount | Установить скидку на уценённый товар | product_update_discount() | 
Акции
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/actions | Список акций | actions() | 
| ☐ | /v1/actions/candidates | Список доступных для акции товаров | actions_candidates() | 
| ☐ | /v1/actions/products | Список участвующих в акции товаров | actions_products() | 
| ☐ | /v1/actions/products/activate | Добавить товар в акцию | actions_products_activate() | 
| ☐ | /v1/actions/products/deactivate | Удалить товары из акции | actions_products_deactivate() | 
| ☐ | /v1/actions/discounts-task/list | Список заявок на скидку | actions_discounts_task_list() | 
| ☐ | /v1/actions/discounts-task/approve | Согласовать заявку на скидку | actions_discounts_task_approve() | 
| ☐ | /v1/actions/discounts-task/decline | Отклонить заявку на скидку | actions_discounts_task_decline() | 
Стратегии ценообразования
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/pricing-strategy/competitors/list | Список конкурентов | pricing_strategy_competitors_list() | 
| ☐ | /v1/pricing-strategy/list | Список стратегий | pricing_strategy_list() | 
| ☐ | /v1/pricing-strategy/create | Создать стратегию | pricing_strategy_create() | 
| ☐ | /v1/pricing-strategy/info | Информация о стратегии | pricing_strategy_info() | 
| ☐ | /v1/pricing-strategy/update | Обновить стратегию | pricing_strategy_update() | 
| ☐ | /v1/pricing-strategy/products/add | Добавить товары в стратегию | pricing_strategy_products_add() | 
| ☐ | /v1/pricing-strategy/strategy-ids-by-product-ids | Список идентификаторов стратегий | pricing_strategy_strategy_ids_by_product_ids() | 
| ☐ | /v1/pricing-strategy/products/list | Список товаров в стратегии | pricing_strategy_products_list() | 
| ☐ | /v1/pricing-strategy/product/info | Цена товара у конкурента | pricing_strategy_product_info() | 
| ☐ | /v1/pricing-strategy/products/delete | Удалить товары из стратегии | pricing_strategy_products_delete() | 
| ☐ | /v1/pricing-strategy/status | Изменить статус стратегии | pricing_strategy_status() | 
| ☐ | /v1/pricing-strategy/delete | Удалить стратегию | pricing_strategy_delete() | 
Сертификаты брендов
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/brand/company-certification/list | Список сертифицируемых брендов | brand_company_certification_list() | 
Сертификаты качества
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/product/certificate/accordance-types | Список типов соответствия требований (версия 1) | product_certificate_accordance_types() | 
| ☐ | /v2/product/certificate/accordance-types/list | Список типов соответствия требований (версия 2) | product_certificate_accordance_types_list() | 
| ☐ | /v1/product/certificate/types | Справочник типов документов | product_certificate_types() | 
| ☐ | /v2/product/certification/list | Список сертифицируемых категорий | product_certification_list() | 
| ☐ | /v1/product/certificate/create | Добавить сертификаты для товаров | product_certificate_create() | 
| ☐ | /v1/product/certificate/bind | Привязать сертификат к товару | product_certificate_bind() | 
| ☐ | /v1/product/certificate/delete | Удалить сертификат | product_certificate_delete() | 
| ☐ | /v1/product/certificate/info | Информация о сертификате | product_certificate_info() | 
| ☐ | /v1/product/certificate/list | Список сертификатов | product_certificate_list() | 
| ☐ | /v1/product/certificate/product_status/list | Список возможных статусов товаров | product_certificate_product_status_list() | 
| ☐ | /v1/product/certificate/products/list | Список товаров, привязанных к сертификату | product_certificate_products_list() | 
| ☐ | /v1/product/certificate/unbind | Отвязать товар от сертификата | product_certificate_unbind() | 
| ☐ | /v1/product/certificate/rejection_reasons/list | Возможные причины отклонения сертификата | product_certificate_rejection_reasons_list() | 
| ☐ | /v1/product/certificate/status/list | Возможные статусы сертификатов | product_certificate_status_list() | 
Склады (2)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ✓ | /v1/warehouse/list | Список складов | warehouse_list() | 
| ✓ | /v1/delivery-method/list | Список методов доставки склада | delivery_method_list() | 
Обработка заказов FBS и rFBS (18)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ✓ | /v3/posting/fbs/unfulfilled/list | Список необработанных отправлений | posting_fbs_unfulfilled_list() | 
| ✓ | /v3/posting/fbs/list | Список отправлений | posting_fbs_list() | 
| ✓ | /v3/posting/fbs/get | Получить информацию об отправлении по идентификатору | posting_fbs_get() | 
| ✓ | /v2/posting/fbs/get-by-barcode | Получить информацию об отправлении по штрихкоду | posting_fbs_get_by_barcode() | 
| ✓ | /v3/posting/multiboxqty/set | Указать количество коробок для многокоробочных отправлений | posting_multiboxqty_set() | 
| ✓ | /v2/posting/fbs/product/change | Добавить вес для весовых товаров в отправлении | posting_fbs_product_change() | 
| ✓ | /v2/posting/fbs/product/country/list | Список доступных стран-изготовителей | posting_fbs_product_country_list() | 
| ✓ | /v2/posting/fbs/product/country/set | Добавить информацию о стране-изготовителе товара | posting_fbs_product_country_set() | 
| ✓ | /v1/posting/fbs/restrictions | Получить ограничения пункта приёма | posting_fbs_restrictions() | 
| ✓ | /v2/posting/fbs/package-label | Напечатать этикетку | posting_fbs_package_label() | 
| ✓ | /v2/posting/fbs/package-label/create | Создать задание на формирование этикеток | posting_fbs_package_label_create() | 
| ✓ | /v1/posting/fbs/package-label/get | Получить файл с этикетками | posting_fbs_package_label_get() | 
| ✓ | /v1/posting/fbs/cancel-reason | Причины отмены отправления | posting_fbs_cancel_reason() | 
| ✓ | /v2/posting/fbs/cancel-reason/list | Причины отмены отправлений | posting_fbs_cancel_reason_list() | 
| ✓ | /v2/posting/fbs/product/cancel | Отменить отправку некоторых товаров в отправлении | posting_fbs_product_cancel() | 
| ✓ | /v2/posting/fbs/cancel | Отменить отправление | posting_fbs_cancel() | 
| ✓ | /v2/posting/fbs/arbitration | Открыть спор по отправлению | posting_fbs_arbitration() | 
| ✓ | /v2/posting/fbs/awaiting-delivery | Передать отправление к отгрузке | posting_fbs_awaiting_delivery() | 
| ☐ | /v1/posting/fbs/pick-up-code/verify | Проверить код курьера | posting_fbs_pick_up_code_verify() | 
| ☐ | /v1/posting/global/etgb | Таможенные декларации ETGB | posting_global_etgb() | 
| ☐ | /v1/posting/unpaid-legal/product/list | Список неоплаченных товаров, заказанных юридическими лицами | posting_unpaid_legal_product_list() | 
Полигоны
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/polygon/create | Создайте полигон доставки | polygon_create() | 
| ☐ | /v1/polygon/bind | Свяжите метод доставки с полигоном доставки | polygon_bind() | 
Доставка FBO
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v2/posting/fbo/list | Список отправлений | posting_fbo_list() | 
| ☐ | /v2/posting/fbo/get | Информация об отправлении | posting_fbo_get() | 
| ☐ | /v1/posting/fbo/cancel-reason/list | Причины отмены отправлений по схеме FBO | posting_fbo_cancel_reason_list() | 
| ☐ | /v1/supply-order/status/counter | Количество заявок по статусам | supply_order_status_counter() | 
| ☐ | /v1/supply-order/bundle | Состав поставки или заявки на поставку | supply_order_bundle() | 
| ☐ | /v2/supply-order/list | Список заявок на поставку на склад Ozon | supply_order_list() | 
| ☐ | /v2/supply-order/get | Информация о заявке на поставку | supply_order_get() | 
| ☐ | /v1/supply-order/timeslot/get | Интервалы поставки | supply_order_timeslot_get() | 
| ☐ | /v1/supply-order/timeslot/update | Обновить интервал поставки | supply_order_timeslot_update() | 
| ☐ | /v1/supply-order/timeslot/status | Статус интервала поставки | supply_order_timeslot_status() | 
| ☐ | /v1/supply-order/pass/create | Указать данные о водителе и автомобиле | supply_order_pass_create() | 
| ☐ | /v1/supply-order/pass/status | Статус ввода данных о водителе и автомобиле | supply_order_pass_status() | 
| ☐ | /v1/supplier/available_warehouses | Загруженность складов Ozon | supplier_available_warehouses() | 
Создание и управление заявками на поставку FBO
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/cluster/list | Информация о кластерах и их складах | cluster_list() | 
| ☐ | /v1/warehouse/fbo/list | Поиск точек для отгрузки поставки | warehouse_fbo_list() | 
| ☐ | /v1/draft/create | Создать черновик заявки на поставку | draft_create() | 
| ☐ | /v1/draft/create/info | Информация о черновике заявки на поставку | draft_create_info() | 
| ☐ | /v1/draft/timeslot/info | Доступные таймслоты | draft_timeslot_info() | 
| ☐ | /v1/draft/supply/create | Создать заявку на поставку по черновику | draft_supply_create() | 
| ☐ | /v1/draft/supply/create/status | Информация о создании заявки на поставку | draft_supply_create_status() | 
| ☐ | /v1/cargoes/create | Установка грузомест | cargoes_create() | 
| ☐ | /v2/cargoes/create/info | Получить информацию по установке грузомест | cargoes_create_info() | 
| ☐ | /v1/cargoes/delete | Удалить грузоместо в заявке на поставку | cargoes_delete() | 
| ☐ | /v1/cargoes/delete/status | Информация о статусе удаления грузоместа | cargoes_delete_status() | 
| ☐ | /v1/cargoes/rules/get | Чек-лист по установке грузомест FBO | cargoes_rules_get() | 
| ☐ | /v1/cargoes-label/create | Сгенерировать этикетки для грузомест | cargoes_label_create() | 
| ☐ | /v1/cargoes-label/get | Получить идентификатор этикетки для грузомест | cargoes_label_get() | 
| ☐ | /v1/cargoes-label/file/{file_guid} | Получить PDF с этикетками грузовых мест | cargoes_label_file() | 
| ☐ | /v1/supply-order/cancel | Отменить заявку на поставку | supply_order_cancel() | 
| ☐ | /v1/supply-order/cancel/status | Получить статус отмены заявки на поставку | supply_order_cancel_status() | 
| ☐ | /v1/supply-order/content/update | Редактирование товарного состава | supply_order_content_update() | 
| ☐ | /v1/supply-order/content/update/status | Информация о статусе редактирования товарного состава | supply_order_content_update_status() | 
Управление кодами маркировки и сборкой заказов для FBS/rFBS (4)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ✓ | /v6/fbs/posting/product/exemplar/create-or-get | Получить данные созданных экземпляров | fbs_posting_product_exemplar_create_or_get() | 
| ✓ | /v5/fbs/posting/product/exemplar/validate | Валидация кодов маркировки | fbs_posting_product_exemplar_validate() | 
| ✓ | /v6/fbs/posting/product/exemplar/set | Проверить и сохранить данные экземпляров | fbs_posting_product_exemplar_set() | 
| ✓ | /v5/fbs/posting/product/exemplar/status | Получить статус добавления экземпляров | fbs_posting_product_exemplar_status() | 
| ☐ | /v4/posting/fbs/ship | Собрать заказ (версия 4) | posting_fbs_ship() | 
| ☐ | /v4/posting/fbs/ship/package | Частичная сборка отправления (версия 4) | posting_fbs_ship_package() | 
| ☐ | /v1/fbs/posting/product/exemplar/update | Обновить данные экземпляров | fbs_posting_product_exemplar_update() | 
Доставка FBS
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/carriage/create | Создание отгрузки | carriage_create() | 
| ☐ | /v1/carriage/approve | Подтверждение отгрузки | carriage_approve() | 
| ☐ | /v1/carriage/set-postings | Изменение состава отгрузки | carriage_set_postings() | 
| ☐ | /v1/carriage/cancel | Удаление отгрузки | carriage_cancel() | 
| ☐ | /v1/carriage/delivery/list | Список методов доставки и отгрузок | carriage_delivery_list() | 
| ☐ | /v2/posting/fbs/act/create | Подтвердить отгрузку и создать документы | posting_fbs_act_create() | 
| ☐ | /v1/posting/carriage-available/list | Список доступных перевозок | posting_carriage_available_list() | 
| ☐ | /v1/carriage/get | Информация о перевозке | carriage_get() | 
| ☐ | /v1/posting/fbs/split | Разделить заказ на отправления без сборки | posting_fbs_split() | 
| ☐ | /v2/posting/fbs/act/get-postings | Список отправлений в акте | posting_fbs_act_get_postings() | 
| ☐ | /v2/posting/fbs/act/get-container-labels | Этикетки для грузового места | posting_fbs_act_get_container_labels() | 
| ☐ | /v2/posting/fbs/act/get-barcode | Штрихкод для отгрузки отправления | posting_fbs_act_get_barcode() | 
| ☐ | /v2/posting/fbs/act/get-barcode/text | Значение штрихкода для отгрузки отправления | posting_fbs_act_get_barcode_text() | 
| ☐ | /v2/posting/fbs/digital/act/check-status | Статус формирования накладной | posting_fbs_digital_act_check_status() | 
| ☐ | /v2/posting/fbs/act/get-pdf | Получить PDF c документами | posting_fbs_act_get_pdf() | 
| ☐ | /v2/posting/fbs/act/list | Список актов по отгрузкам | posting_fbs_act_list() | 
| ☐ | /v2/posting/fbs/digital/act/get-pdf | Получить лист отгрузки по перевозке | posting_fbs_digital_act_get_pdf() | 
| ☐ | /v2/posting/fbs/act/check-status | Статус отгрузки и документов | posting_fbs_act_check_status() | 
Доставка rFBS
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v2/fbs/posting/tracking-number/set | Добавить трек-номера | fbs_posting_tracking_number_set() | 
| ☐ | /v2/fbs/posting/sent-by-seller | Изменить статус на «Отправлено продавцом» | fbs_posting_sent_by_seller() | 
| ☐ | /v2/fbs/posting/delivering | Изменить статус на «Доставляется» | fbs_posting_delivering() | 
| ☐ | /v2/fbs/posting/last-mile | Изменить статус на «Последняя миля» | fbs_posting_last_mile() | 
| ☐ | /v2/fbs/posting/delivered | Изменить статус на «Доставлено» | fbs_posting_delivered() | 
| ☐ | /v1/posting/fbs/timeslot/change-restrictions | Доступные даты для переноса доставки | posting_fbs_timeslot_change_restrictions() | 
| ☐ | /v1/posting/fbs/timeslot/set | Перенести дату доставки | posting_fbs_timeslot_set() | 
| ☐ | /v1/posting/cutoff/set | Уточнить дату отгрузки отправления | posting_cutoff_set() | 
Пропуски
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/pass/list | Список пропусков | pass_list() | 
| ☐ | /v1/carriage/pass/create | Создать пропуск | carriage_pass_create() | 
| ☐ | /v1/carriage/pass/update | Обновить пропуск | carriage_pass_update() | 
| ☐ | /v1/carriage/pass/delete | Удалить пропуск | carriage_pass_delete() | 
| ☐ | /v1/return/pass/create | Создать пропуск для возврата | return_pass_create() | 
| ☐ | /v1/return/pass/update | Обновить пропуск для возврата | return_pass_update() | 
| ☐ | /v1/return/pass/delete | Удалить пропуск для возврата | return_pass_delete() | 
Возвраты товаров FBO и FBS
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/returns/list | Информация о возвратах FBO и FBS | returns_list() | 
Возвраты товаров rFBS
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v2/returns/rfbs/list | Список заявок на возврат | returns_rfbs_list() | 
| ☐ | /v2/returns/rfbs/get | Информация о заявке на возврат | returns_rfbs_get() | 
| ☐ | /v2/returns/rfbs/reject | Отклонить заявку на возврат | returns_rfbs_reject() | 
| ☐ | /v2/returns/rfbs/compensate | Вернуть часть стоимости товара | returns_rfbs_compensate() | 
| ☐ | /v2/returns/rfbs/verify | Одобрить заявку на возврат | returns_rfbs_verify() | 
| ☐ | /v2/returns/rfbs/receive-return | Подтвердить получение товара на проверку | returns_rfbs_receive_return() | 
| ☐ | /v2/returns/rfbs/return-money | Вернуть деньги покупателю | returns_rfbs_return_money() | 
| ☐ | /v1/returns/rfbs/action/set | Передать доступные действия для rFBS возвратов | returns_rfbs_action_set() | 
Возвратные отгрузки
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/returns/company/fbs/info | Количество возвратов FBS | returns_company_fbs_info() | 
| ☐ | /v1/return/giveout/is-enabled | Проверить возможность получения возвратных отгрузок по штрихкоду | return_giveout_is_enabled() | 
| ☐ | /v1/return/giveout/list | Список возвратных отгрузки | return_giveout_list() | 
| ☐ | /v1/return/giveout/info | Информация о возвратной отгрузке | return_giveout_info() | 
| ☐ | /v1/return/giveout/barcode | Значение штрихкода для возвратных отгрузок | return_giveout_barcode() | 
| ☐ | /v1/return/giveout/get-pdf | Штрихкод для получения возвратной отгрузки в формате PDF | return_giveout_get_pdf() | 
| ☐ | /v1/return/giveout/get-png | Штрихкод для получения возвратной отгрузки в формате PNG | return_giveout_get_png() | 
| ☐ | /v1/return/giveout/barcode-reset | Сгенерировать новый штрихкод | return_giveout_barcode_reset() | 
Отмены заказов
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v2/conditional-cancellation/list | Получить список заявок на отмену rFBS | conditional_cancellation_list() | 
| ☐ | /v2/conditional-cancellation/approve | Подтвердить заявку на отмену rFBS | conditional_cancellation_approve() | 
| ☐ | /v2/conditional-cancellation/reject | Отклонить заявку на отмену rFBS | conditional_cancellation_reject() | 
Чаты с покупателями
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/chat/send/file | Отправить файл | chat_send_file() | 
| ☐ | /v3/chat/list | Список чатов | chat_list() | 
| ☐ | /v2/chat/history | История чата | chat_history() | 
Накладные
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v2/invoice/create-or-update | Создать или изменить счёт-фактуру | invoice_create_or_update() | 
| ☐ | /v1/invoice/file/upload | Загрузка счёта-фактуры | invoice_file_upload() | 
| ☐ | /v2/invoice/get | Получить информацию о счёте-фактуре | invoice_get() | 
| ☐ | /v1/invoice/delete | Удалить ссылку на счёт-фактуру | invoice_delete() | 
Отчёты
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/report/info | Информация об отчёте | report_info() | 
| ☐ | /v1/report/list | Список отчётов | report_list() | 
| ☐ | /v1/report/products/create | Отчёт по товарам | report_products_create() | 
| ☐ | /v2/report/returns/create | Отчёт о возвратах | report_returns_create() | 
| ☐ | /v1/report/postings/create | Отчёт об отправлениях | report_postings_create() | 
| ☐ | /v1/finance/cash-flow-statement/list | Финансовый отчёт | finance_cash_flow_statement_list() | 
| ☐ | /v1/report/discounted/create | Отчёт об уценённых товарах | report_discounted_create() | 
| ☐ | /v1/report/warehouse/stock | Отчёт об остатках на FBS-складе | report_warehouse_stock() | 
Аналитические отчёты
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v2/analytics/stock_on_warehouses | Отчёт по остаткам и товарам | analytics_stock_on_warehouses() | 
| ☐ | /v1/analytics/turnover/stocks | Оборачиваемость товара | analytics_turnover_stocks() | 
Финансовые отчеты
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v2/finance/realization | Отчёт о реализации товаров (версия 2) | finance_realization() | 
| ☐ | /v1/finance/realization/posting | Позаказный отчёт о реализации товаров | finance_realization_posting() | 
| ☐ | /v3/finance/transaction/list | Список транзакций | finance_transaction_list() | 
| ☐ | /v3/finance/transaction/totals | Суммы транзакций | finance_transaction_totals() | 
| ☐ | /v1/finance/document-b2b-sales | Реестр продаж юридическим лицам | finance_document_b2b_sales() | 
| ☐ | /v1/finance/document-b2b-sales/json | Реестр продаж юридическим лицам в JSON-формате | finance_document_b2b_sales_json() | 
| ☐ | /v1/finance/mutual-settlement | Отчёт о взаиморасчётах | finance_mutual_settlement() | 
| ☐ | /v1/finance/products/buyout | Отчёт о выкупленных товарах | finance_products_buyout() | 
| ☐ | /v1/finance/compensation | Отчёт о компенсациях | finance_compensation() | 
| ☐ | /v1/finance/decompensation | Отчёт о декомпенсациях | finance_decompensation() | 
Рейтинг продавца
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/rating/summary | Получить информацию о текущих рейтингах продавца | rating_summary() | 
| ☐ | /v1/rating/history | Получить информацию о рейтингах продавца за период | rating_history() | 
Прочие методы (1)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/analytics/manage/stocks | Управление остатками | analytics_manage_stocks() | 
| ✓ | /v1/analytics/stocks | Получить аналитику по остаткам | analytics_stocks() | 
| ☐ | /v1/analytics/average-delivery-time | Получить аналитику по среднему времени доставки | analytics_average_delivery_time() | 
| ☐ | /v1/analytics/average-delivery-time/details | Получить детальную аналитику по среднему времени доставки | analytics_average_delivery_time_details() | 
| ☐ | /v1/analytics/average-delivery-time/summary | Получить общую аналитику по среднему времени доставки | analytics_average_delivery_time_summary() | 
| ☐ | /v1/product/info/wrong-volume | Список товаров с некорректными ОВХ | product_info_wrong_volume() | 
| ☐ | /v1/removal/from-supply/list | Отчёт по вывозу и утилизации с поставки FBO | removal_from_supply_list() | 
| ☐ | /v1/removal/from-stock/list | Отчёт по вывозу и утилизации со стока FBO | removal_from_stock_list() | 
| ☐ | /v1/report/marked-products-sales/create | Отчёт по продажам товаров с маркировкой | report_marked_products_sales_create() | 
| ☐ | /v3/supply-order/list | Список заявок на поставку на склад Ozon | supply_order_list() | 
| ☐ | /v3/supply-order/get | Информация о заявке на поставку | supply_order_get() | 
| ☐ | /v1/supply-order/content/update/validation | Проверить новый товарный состав | supply_order_content_update_validation() | 
| ☐ | /v1/product/info/warehouse/stocks | Получить информацию по остаткам на складе FBS и rFBS | product_info_warehouse_stocks() | 
Работа с цифровыми товарами
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/posting/digital/codes/upload | Загрузить коды цифровых товаров для отправления | posting_digital_codes_upload() | 
| ☐ | /v1/posting/digital/list | Получить список отправлений | posting_digital_list() | 
| ☐ | /v1/product/digital/stocks/import | Обновить количество цифровых товаров | product_digital_stocks_import() | 
Работа с квантами
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/product/quant/list | Список эконом-товаров | product_quant_list() | 
| ☐ | /v1/product/quant/info | Информация об эконом-товаре | product_quant_info() | 
Работа с отзывами
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/review/comment/create | Оставить комментарий на отзыв | review_comment_create() | 
| ☐ | /v1/review/comment/delete | Удалить комментарий на отзыв | review_comment_delete() | 
| ☐ | /v1/review/comment/list | Список комментариев на отзыв | review_comment_list() | 
| ☐ | /v1/review/change-status | Изменить статус отзывов | review_change_status() | 
| ☐ | /v1/review/count | Количество отзывов по статусам | review_count() | 
| ☐ | /v1/review/info | Получить информацию об отзыве | review_info() | 
| ☐ | /v1/review/list | Получить список отзывов | review_list() | 
Работа с вопросами и ответами
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/question/answer/create | Создать ответ на вопрос | question_answer_create() | 
| ☐ | /v1/question/answer/delete | Удалить ответ на вопрос | question_answer_delete() | 
| ☐ | /v1/question/answer/list | Список ответов на вопрос | question_answer_list() | 
| ☐ | /v1/question/change-status | Изменить статус вопросов | question_change_status() | 
| ☐ | /v1/question/count | Количество вопросов по статусам | question_count() | 
| ☐ | /v1/question/info | Информация о вопросе | question_info() | 
| ☐ | /v1/question/list | Список вопросов | question_list() | 
| ☐ | /v1/question/top-sku | Товары с наибольшим количеством вопросов | question_top_sku() | 
Работа с FBS-складами
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/warehouse/fbs/create/drop-off/list | Получить список drop-off пунктов для создания склада | warehouse_fbs_create_drop_off_list() | 
| ☐ | /v1/warehouse/fbs/update/drop-off/list | Получить список drop-off пунктов для изменения информации склада | warehouse_fbs_update_drop_off_list() | 
| ☐ | /v1/warehouse/fbs/create | Создать склад | warehouse_fbs_create() | 
| ☐ | /v1/warehouse/fbs/update | Обновить склад | warehouse_fbs_update() | 
| ☐ | /v1/warehouse/operation/status | Получить статус операции | warehouse_operation_status() | 
| ☐ | /v2/warehouse/list | Список складов | warehouse_list() | 
| ☐ | /v1/warehouse/fbs/first-mile/update | Обновить первую милю | warehouse_fbs_first_mile_update() | 
| ☐ | /v1/warehouse/archive | Перенести склад в архив | warehouse_archive() | 
| ☐ | /v1/warehouse/unarchive | Перенести склад из архива | warehouse_unarchive() | 
Premium-методы
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/chat/send/message | Отправить сообщение | chat_send_message() | 
| ☐ | /v1/chat/start | Создать новый чат | chat_start() | 
| ☐ | /v3/chat/history | История чата | chat_history() | 
| ☐ | /v2/chat/read | Отметить сообщения как прочитанные | chat_read() | 
| ☐ | /v1/analytics/data | Данные аналитики | analytics_data() | 
| ☐ | /v1/analytics/product-queries | Получить информацию о запросах моих товаров | analytics_product_queries() | 
| ☐ | /v1/analytics/product-queries/details | Получить детализацию запросов по товару | analytics_product_queries_details() | 
| ☐ | /v1/finance/realization/by-day | Отчёт о реализации товаров за день | finance_realization_by_day() | 
| ☐ | /v1/search-queries/text | Получить список поисковых запросов по тексту | search_queries_text() | 
| ☐ | /v1/search-queries/top | Получить список популярных поисковых запросов | search_queries_top() | 
Логистика (Ozon Logistics)
| ✓ | Адрес метода Ozon | Описание метода | Python-метод | 
|---|---|---|---|
| ☐ | /v1/delivery/check | Проверка доступности доставки Ozon для покупателя | delivery_check() | 
| ☐ | /v1/delivery/map | Получить список точек самовывоза на карте | delivery_map() | 
| ☐ | /v1/delivery/point/list | Получить список всех точек самовывоза | delivery_point_list() | 
| ☐ | /v1/delivery/point/info | Получить информацию о выбранной точке самовывоза | delivery_point_info() | 
| ☐ | /v1/delivery/checkout | Определение доступности товара и расчет сроков доставки | delivery_checkout() | 
| ☐ | /v1/order/create | Создание заказа | order_create() | 
| ☐ | /v1/posting/marks | Получить список кодов маркировок товаров | posting_marks() | 
| ☐ | /v1/cancel-reason/list | Список причин отмен для заказа | cancel_reason_list() | 
| ☐ | /v1/cancel-reason/list-by-order | Динамический список отмен для заказа | cancel_reason_list_by_order() | 
| ☐ | /v1/cancel-reason/list-by-posting | Динамический список отмен для постинга из заказа | cancel_reason_list_by_posting() | 
| ☐ | /v1/order/cancel/check | Проверка доступности отмены | order_cancel_check() | 
| ☐ | /v1/order/cancel | Метод отмены заказа | order_cancel() | 
| ☐ | /v1/posting/cancel | Метод отмены постинга из заказа | posting_cancel() | 
| ☐ | /v1/order/cancel/status | Статус отмены заказа | order_cancel_status() | 
| ☐ | /v1/posting/cancel/status | Статус отмены постинга из заказа | posting_cancel_status() | 
Проект не аффилирован с Ozon. Все торговые марки принадлежат их правообладателям.