Type Safety First
Auto-generated TypeScript types from OpenAPI specifications with 100% strict mode enforcement, eliminating runtime errors and providing full IDE autocomplete support across all 14 API modules.
Full-featured SDK providing type-safe access to all Wildberries marketplace API methods. Reduce integration time from weeks to hours.
Install the SDK and make your first API call in under 5 minutes:
npm install daytona-wildberries-typescript-sdkimport { WildberriesSDK } from 'daytona-wildberries-typescript-sdk';
const sdk = new WildberriesSDK({ apiKey: 'your-api-key' });
const categories = await sdk.products.getParentCategories();
console.log(categories);👉 Complete 5-Minute Quickstart Guide
Wildberries will disable Item Rating v1 and the dedicated hidden-from-catalog report on July 30, 2026. SDK v4.1.0 adds analytics.getItemRatingV2() with onlyShadowedNms filtering and items[].isShadowed visibility.
👉 Migrate Item Rating v1 and hidden-product reporting
WILDBERRIES API DEPRECATION NOTICE
Four Promotion API methods will be disabled on February 2, 2026
Wildberries is transitioning from type 8 (standard bid) campaigns to type 9 (custom/standard bid) campaigns. The following methods will stop working:
getAutoGetnmtoadd() - List of Product CardscreateAutoUpdatenm() - Update Product CardsgetAutoStatWords() - Statistics by Phrase ClusterscreateAutoSetExcluded() - Set/Remove Minus-Phrases⏱️ Migration Time: 30-60 minutes | ⏰ Deadline: February 2, 2026 (6 weeks from today)
1. Check Your Campaigns (2 min):
const campaigns = await sdk.promotion.getPromotionCount();
const type8 = campaigns.adverts?.filter(c => c.type === 8) || [];
console.log(`⚠️ Type 8 campaigns to migrate: ${type8.length}`);2. Update Your Code (10-30 min):
// ❌ OLD (Type 8) — removed in v4.0.0
const products = await sdk.promotion.getAutoGetnmtoadd({ id: campaignId });
// ✅ Type 9 campaigns — fetch via the v2 advert API (the v0/v1 methods
// shown in earlier migration guides were removed in v4.0.0)
const campaigns = await sdk.promotion.getAdvertsV2({ ids: String(campaignId) });
const products = campaigns.adverts?.[0]?.nm_settings || [];v4.0.0 note: the v0/v1 advert methods (
getAuctionAdverts,getAutoGetnmtoadd, etc.) have been removed. See docs/guides/migration-v4.md for the full replacement table.
3. Test & Deploy (15 min)
<div class="stats-grid"> <div class="stat-card"> <div class="stat-number">100%</div> <div class="stat-label">API Coverage</div> </div> <div class="stat-card"> <div class="stat-number">90%+</div> <div class="stat-label">Test Coverage</div> </div> <div class="stat-card"> <div class="stat-number">2376</div> <div class="stat-label">Tests</div> </div> <div class="stat-card"> <div class="stat-number">14</div> <div class="stat-label">API Modules</div> </div> </div>
<style> .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin: 2rem 0; }
.stat-card { padding: 1.5rem; background: var(--vp-c-bg-soft); border-radius: 8px; text-align: center; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.stat-card:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); }
.stat-number { font-size: 2.5rem; font-weight: bold; color: var(--vp-c-brand-1); line-height: 1.2; }
.stat-label { margin-top: 0.5rem; font-size: 0.9rem; color: var(--vp-c-text-2); font-weight: 500; }
@media (max-width: 768px) { .stats-grid { grid-template-columns: repeat(2, 1fr); }
.stat-number { font-size: 2rem; } } </style>
Battle-tested with 90%+ statement coverage and 2,376 tests. All 14 API modules are implemented and validated against the repository's Wildberries OpenAPI specifications.
Reduce integration time from weeks to hours. Complete type safety eliminates debugging runtime errors. Automatic rate limiting prevents API bans.
Works out of the box with sensible defaults. Advanced configuration available for custom rate limiting, retry policies, timeouts, and logging levels.
All 14 Wildberries API modules are supported:
| Module | Coverage | Key Features |
|---|---|---|
| General | 100% | Ping, connectivity testing, seller info, user management, Jam subscription, seller rating |
| Products | 100% | Catalog CRUD, pricing, media, inventory |
| Orders FBS | 100% | Seller fulfillment, order status, supplies, metadata validation |
| Orders FBW | 100% | WB warehouse fulfillment, supply planning, acceptance coefficients, cost calculator, DBW buyer info |
| Finances | 100% | Balance, transactions, reports, payouts |
| Analytics | 100% | Sales funnel, search queries, CSV exports, WB warehouse inventory |
| Reports | 100% | Income reports, sales reports, data exports |
| Communications | 100% | Customer chat, Q&A, reviews management |
| Promotion | 100% | Campaign lifecycle, bidding, statistics, search clusters, bid recommendations ⚠️ Migration Required |
| Tariffs | 100% | Commission rates, fee schedules |
| In-Store Pickup | 100% | Pickup point orders and management |
| Orders DBS | 100% | Delivery-by-Seller orders, bulk status ops, B2B, marking metadata |
| User Management | 100% | Seller-profile users: invitations, access rights |
| Returns | 100% | Unified return analytics (FBO + FBS + Finance) |
View Complete Module Documentation →
<div class="use-cases"> <div class="use-case-card"> <h3>📦 Product Management</h3> <p>Sync product catalogs, update pricing, manage inventory across warehouses.</p> <a href="/getting-started/tutorials/product-catalog-sync">View Tutorial →</a> </div>
<div class="use-case-card"> <h3>📋 Order Fulfillment</h3> <p>Process customer orders, manage shipping, track deliveries for FBS and FBW.</p> <a href="/getting-started/tutorials/order-fulfillment">View Tutorial →</a> </div>
<div class="use-case-card"> <h3>📊 Analytics & Reporting</h3> <p>Generate sales reports, analyze performance, export data for BI tools.</p> <a href="/getting-started/tutorials/analytics-dashboard">View Tutorial →</a> </div>
<div class="use-case-card"> <h3>💰 Financial Management</h3> <p>Track balance, reconcile transactions, manage payouts and reporting.</p> <a href="/api/classes/FinancesModule">View API Reference →</a> </div>
<div class="use-case-card"> <h3>💬 Customer Support</h3> <p>Manage customer chat, answer Q&A, respond to reviews at scale.</p> <a href="/api/classes/CommunicationsModule">View API Reference →</a> </div>
<div class="use-case-card"> <h3>🔄 Multi-Channel Integration</h3> <p>Connect products → orders → finances → analytics for complete automation.</p> <a href="/getting-started/tutorials/multi-module-integration">View Tutorial →</a> </div> </div>
<style> .use-cases { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.5rem; margin: 2rem 0; }
.use-case-card { padding: 1.5rem; background: var(--vp-c-bg-soft); border: 1px solid var(--vp-c-divider); border-radius: 8px; transition: all 0.2s ease; }
.use-case-card:hover { border-color: var(--vp-c-brand-1); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); transform: translateY(-2px); }
.use-case-card h3 { margin: 0 0 0.75rem 0; font-size: 1.1rem; color: var(--vp-c-text-1); }
.use-case-card p { margin: 0 0 1rem 0; font-size: 0.9rem; color: var(--vp-c-text-2); line-height: 1.6; }
.use-case-card a { display: inline-block; font-size: 0.9rem; color: var(--vp-c-brand-1); text-decoration: none; font-weight: 500; }
.use-case-card a:hover { color: var(--vp-c-brand-2); text-decoration: underline; }
@media (max-width: 768px) { .use-cases { grid-template-columns: 1fr; } } </style>
<div class="cta-section"> <div class="cta-card"> <h3>🚀 Quick Start</h3> <p>Get up and running in under 5 minutes with our comprehensive quickstart guide.</p> <a href="/getting-started/quickstart" class="cta-button">Start Building →</a> </div>
<div class="cta-card"> <h3>📚 View Documentation</h3> <p>Explore tutorials, guides, and complete API reference documentation.</p> <a href="/getting-started/" class="cta-button secondary">Browse Docs →</a> </div> </div>
<style> .cta-section { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; margin: 3rem 0; padding: 2rem; background: linear-gradient(135deg, var(--vp-c-bg-soft) 0%, var(--vp-c-bg) 100%); border-radius: 12px; }
.cta-card { text-align: center; padding: 2rem; }
.cta-card h3 { margin: 0 0 1rem 0; font-size: 1.5rem; color: var(--vp-c-text-1); }
.cta-card p { margin: 0 0 1.5rem 0; color: var(--vp-c-text-2); line-height: 1.6; }
.cta-button { display: inline-block; padding: 0.75rem 2rem; background: var(--vp-c-brand-1); color: white !important; text-decoration: none; border-radius: 6px; font-weight: 600; transition: all 0.2s ease; }
.cta-button:hover { background: var(--vp-c-brand-2); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); }
.cta-button.secondary { background: var(--vp-c-bg-soft); color: var(--vp-c-brand-1) !important; border: 2px solid var(--vp-c-brand-1); }
.cta-button.secondary:hover { background: var(--vp-c-brand-soft); }
@media (max-width: 768px) { .cta-section { grid-template-columns: 1fr; padding: 1.5rem; } } </style>
Made with ❤️ for the Wildberries developer community