🚀 Быстрый старт

OZON Seller API SDK | DAYTONA

💡 Цель: Начать работу с OZON Seller API SDK всего за 5 минут

🛠️ Установка

npm

npm install daytona-ozon-seller-api

yarn

yarn add daytona-ozon-seller-api

pnpm

pnpm add daytona-ozon-seller-api

🔑 Первоначальная настройка

1. Получение API ключей

  1. Войдите в личный кабинет продавца OZON
  2. Перейдите в НастройкиAPI ключи
  3. Создайте новый API ключ
  4. Скопируйте Client ID и API Key

2. Инициализация SDK

import { OzonSellerAPI } from 'daytona-ozon-seller-api'; // Базовая инициализация const api = new OzonSellerAPI({ clientId: 'your-client-id', apiKey: 'your-api-key' }); // С дополнительными настройками const api = new OzonSellerAPI({ clientId: 'your-client-id', apiKey: 'your-api-key', baseURL: 'https://api-seller.ozon.ru', // По умолчанию timeout: 30000, // 30 секунд debug: false // Включить логи для отладки });

3. Проверка подключения

async function testConnection() { try { // Получаем первые 5 товаров const products = await api.product.getList({ limit: 5 }); console.log('✅ Подключение успешно!'); console.log(`📦 Найдено товаров: ${products.result?.items?.length || 0}`); } catch (error) { console.error('❌ Ошибка подключения:', error.message); } } testConnection();

🎯 Базовые операции

Работа с товарами

// 1. Получение списка товаров const products = await api.product.getList({ limit: 20, filter: { visibility: 'ALL' } }); console.log('Товары:', products.result?.items?.length); // 2. Получение информации о товаре const productInfo = await api.product.getInfo({ product_id: 123456789 }); console.log('Название:', productInfo.result?.name); // 3. Обновление цены товара await api.pricesStocks.updatePrices([{ product_id: 123456789, price: '1500.00' }]); console.log('💰 Цена обновлена');

Работа с заказами FBS

// 1. Получение новых заказов const orders = await api.fbs.getOrdersList({ filter: { since: '2024-01-01T00:00:00Z', to: '2024-01-31T23:59:59Z', status: 'awaiting_packaging' }, limit: 50 }); console.log('📋 Новых заказов:', orders.result?.length || 0); // 2. Обработка заказа for (const order of orders.result || []) { console.log(`🔄 Обработка заказа: ${order.posting_number}`); // Отгрузка заказа await api.fbs.shipOrder({ posting_number: order.posting_number, tracking_number: `TRACK${Date.now()}` }); console.log('🚚 Заказ отгружен'); }

🎭 Типовые сценарии

Сценарий 1: Массовое обновление цен

async function updatePricesBulk() { try { // 1. Получаем товары const products = await api.product.getList({ limit: 100 }); // 2. Подготавливаем обновления цен (скидка 10%) const priceUpdates = products.result?.items ?.map(p => ({ product_id: p.id, price: (parseFloat(p.marketing_price || '0') * 0.9).toFixed(2) })); if (priceUpdates && priceUpdates.length > 0) { // 3. Обновляем цены await api.pricesStocks.updatePrices(priceUpdates); console.log('✅ Все цены обновлены!'); } } catch (error) { console.error('❌ Ошибка обновления цен:', error.message); } } updatePricesBulk();

🎓 Следующие шаги

1. Изучите документацию API

2. Ключевые API для изучения

Новичкам рекомендуем:
  • Product API - Управление товарами
  • Prices Stocks API - Цены и остатки
  • FBS API - Заказы FBS

3. Настройте обработку ошибок

// Универсальная функция с повторными попытками async function withRetry<T>( operation: () => Promise<T>, maxRetries: number = 3 ): Promise<T> { for (let attempt = 1; attempt <= maxRetries; attempt++) { try { return await operation(); } catch (error) { if (attempt === maxRetries) { throw error; } // Задержка перед повторной попыткой const delay = Math.pow(2, attempt) * 1000; await new Promise(resolve => setTimeout(resolve, delay)); } } } // Использование const products = await withRetry(() => api.product.getList({ limit: 100 }) );
🎉 Поздравляем! Теперь вы готовы к работе с OZON Seller API. Начните с простых операций и постепенно изучайте более сложные возможности системы.

📚 Навигация по категориям

Для детального изучения перейдите к полному индексу или выберите нужную страницу категории.

Показать все страницы категорий