💡 Цель: Начать работу с 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 ключей
- Войдите в личный кабинет продавца OZON
- Перейдите в Настройки → API ключи
- Создайте новый API ключ
- Скопируйте 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
- 📖 Полное README - Обзор всех возможностей
- 📑 Индекс API - Справочник всех 278 методов
- ⚙️ Интеграция - Примеры для фреймворков
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. Начните с простых операций и постепенно изучайте более сложные возможности системы.
📚 Навигация по категориям
Для детального изучения перейдите к полному индексу или выберите нужную страницу категории.
Показать все страницы категорий
- 29-pricing-strategy.html
- 29-pricing-strategy-competitors.html
- 29-pricing-strategy-management.html
- 29-pricing-strategy-products.html
- 29-pricing-strategy-operations.html
- 30-product.html
- 30-product-catalog-management.html
- 30-product-information.html
- 30-product-creation-editing.html
- 30-product-content-management.html
- 31-questions.html
- 31-questions-answers-api.html
- 31-questions-answers-management.html
- 31-questions-workflow.html
- 31-questions-analytics.html
- 32-report.html
- 32-report-api.html
- 32-report-financial.html
- 32-report-management.html
- 32-report-business.html
- 33-return.html
- 33-return-api.html
- 33-return-giveout.html
- 33-return-analytics.html
- 34-review.html
- 34-review-api.html
- 34-review-management.html
- 34-comment-management.html
- 34-review-analytics.html
- 35-rfbs-returns.html
- 35-rfbs-returns-api.html
- 35-rfbs-returns-management.html
- 35-rfbs-returns-legacy.html
- 35-rfbs-returns-automation.html
- 36-seller-rating.html
- 36-seller-rating-api.html
- 36-seller-rating-performance.html
- 36-seller-rating-analytics.html
- categories/README.html